#jquery #ajax #eclipse #tomcat
#jquery #аякс #затмение #tomcat
Вопрос:
Итак, я загружаю текстовый файл на HTML-страницу следующим образом:
$("#container").load("http://localhost:8080/Ajax/chatsave/test.txt");
Текстовый файл загружается правильно, однако на той же странице у меня также есть небольшая форма, в которой пользователь вводит некоторый ввод, и этот ввод добавляется к текстовому файлу. Таким образом, он добавляется к текстовому файлу, но не обновляется на HTML-странице, вот в чем проблема. Ниже приведен мой код для формы и сервлета:
//form input gets sent to servlet
$("#submitBtn").click(function(){
$.ajax({
method:"post",
data:{message: $("#message").val()},
url: "getTextServlet",
success: function(data, status){
alert(status)
}
});
Сервлеты добавляют отправленные входные данные в текстовый файл:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String param = request.getParameter("message");
if(param != null) {
File file = new File("C:\Users\proje\eclipse-workspace\Ajax\WebContent\chatsave\test.txt");
BufferedWriter writer = new BufferedWriter(new FileWriter(file, true));
if(file.createNewFile()) {
//creates file if it doesn't excist
} else {
//here we append the submited input to our text file
writer.write("[CLIENT]: " param);
writer.newLine();
writer.flush();
}
}
}
Любая помощь очень ценится!
Комментарии:
1. Вы изменяете файл в своей рабочей области, а не там, где он развернут для Tomcat. Настроено ли ваше рабочее пространство на автоматическое обновление и сборку?
2. Я не уверен, что вы имеете в виду, говоря «Вы изменяете файл в своей рабочей области, а не там, где он развернут для Tomcat». И да, обновление и сборка выполняются автоматически.
3. Вы видите, что предупреждение, которое вы написали, выполняется?
4. Да, я это вижу.
5. Текст сразу добавляется в текстовый файл, но он не загружается только примерно через 2/3 минуты на HTML-странице, а также после перезагрузки страницы.