Я пытаюсь создать простой планировщик, используя классы Timer и TimerTask, см. Код ниже, внутри задачи я просто хочу напечатать «Hello, World!»на странице, но выдает IOException: поток закрыт.Пожалуйста, помогите!
Код страницы JSP:
<% Test t = new Test(out);%>
Код класса теста:
public class Test {
public Test(JspWriter out){
Timer timer = new Timer();
LpdbTask lTask = new LpdbTask();
lTask.out = out;
timer.scheduleAtFixedRate(lTask, 1000*5, 1000*60);
}
}
Код LpdbTask:
public class LpdbTask extends TimerTask{
public JspWriter out;
public void run(){
try {
out.println("Hello, World!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
Ошибка:
java.io.IOException: Stream closed
at org.apache.jasper.runtime.JspWriterImpl.ensureOpen(JspWriterImpl.java:204)
at org.apache.jasper.runtime.JspWriterImpl.write(JspWriterImpl.java:312)
at org.apache.jasper.runtime.JspWriterImpl.write(JspWriterImpl.java:342)
at org.apache.jasper.runtime.JspWriterImpl.print(JspWriterImpl.java:468)
at org.apache.jasper.runtime.JspWriterImpl.println(JspWriterImpl.java:576)
at scheduler.LpdbTask.run(LpdbTask.java:14)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)