1
サーブレットを自分のサーバーとして使用してjspクライアント(HTML5 SSEを使用)に更新を送信しています。これは私のJSPコードサーブレットをサーバー送信イベント(SSE)のサーバーとして使用する
<script type="text/javascript">
if(typeof(EventSource)!=="undefined")
{
var source=new EventSource("/server");
source.onmessage=function(event)
{
document.getElementById("news1").innerHTML+=event.data + "<br />";
};
}
else
{
document.getElementById("news1").innerHTML="Sorry, your browser does not support server-sent events...";
}
</script>
この私のサーブレットのコードである
ます。public void doPostメソッド(HttpServletRequestのリクエスト、HttpServletResponseの応答){
try{
System.out.println("Begin for session: " + request.getSession(true).getId() + " " + response.getWriter());
response.setHeader("pragma", "no-cache,no-store");
response.setHeader("cache-control", "no-cache,no-store,max-age=0,max-stale=0");
response.setContentType("text/event-stream");
PrintWriter out = response.getWriter();
int messagesSent = 0;
while (true) {
out.print("data: {" + messagesSent++ + "}\n\n");
out.flush();
}} catch(Exception e){System.out.println(e);}
サーバーからの応答がありませんです。私はjbossにサーブレットをデプロイしており、サーブレットはJSPファイルではまったく呼び出されていません。サーブレットの先頭にあるprint文は実行されていません。