У меня есть сервлет Google App Engine, он должен зайти на мой сайт и получить файл, а затем отобразить содержимое этого файла на странице обслуживания сервлета, код выглядит следующим образом:
public class My_Servlet extends HttpServlet
{
public void init(ServletConfig config) throws ServletException
{
super.init(config);
System.gc();
}
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException
{
PrintWriter out=response.getWriter();
response.setContentType("text/html");
out.println(getTextFile());
}
String getTextFile()
{
String Text="";
try
{
URL url=new URL("http://example.com/A_Dir/Test.txt");
BufferedReader reader=new BufferedReader(new InputStreamReader(url.openStream()));
String line;
while ((line=reader.readLine())!=null) { Text+=line+"<Br>"; }
reader.close();
}
catch (Exception e) { }
return Text;
}
Это сработало, но проблема в том, что после того, как я изменил содержимое файла "Test.txt" на моем сайте, приложение Google все еще отображает старые данные, я проверил и дважды проверил файл на моем сайте, старый данных больше нет, и я подумал, что каждый раз, когда я нажимаю на ссылку, обслуживаемую GAE, она вызывает getTextFile()
, создает URL, получает файл и анализирует строки, но кажется, что GAE запоминает старые данные из 3 дней назад, и независимо от того, сколько раз я обновлял страницу или обновлял приложение GAE и перезагружал его в App Engine [и я вижу изменения, внесенные в обновленный сервлет], он все еще обслуживает данные за 3 дня , Зачем? Как заставить его динамически загружать этот файл?