2.4 新建一個jsp頁面
2.4.1 導入js
jsp文件中必須引入幾個js,它們都是隱含存在的,不用考慮它們在哪兒,其中engine.js和util.js是固定的,另外的一個js的名稱就是dwr.xml中配置的類名。
2.4.2 畫出jsp頁面
MessagePush.onPageLoad();//綁定用戶ID MessagePush類中的方法,後面步驟會提到。
Test.getFromPage(userId,"getProgressBar");//模擬前臺調用後臺調用後臺方法 該業務方法裡調用進度條方法實現進度條。
2.5 新建一個ScriptSessionListener類實現ScriptSessionListener接口
ScriptSessionListener用來監聽ScriptSession的創建及銷燬事件,ScriptSession第一次訪問會創建一個ScriptSession。刷新後又會創建一個新的ScriptSession,HttpSession第一次訪問會創建一個新的HttpSession,之後再訪問的時候,就會保持當前的Session,即使是刷新,也能保持當前的HttpSession。
由於上面的問題,我們就需要自己管理ScriptSession。其實,有效地HttpSession,就是那個和當前的HttpSession匹配的ScriptSession。所以,我們就可以自己維護一個Map,在這個Map裡面,我們定義key就是HttpSession的Id,其值就是ScriptSession對象。
在每一次頁面載入的時候,都去註冊此ScriptSession,那麼就會把新的ScriptSession綁定到httpSession上面了。
2.6 新建一個類繼承 DefaultScriptSessionManager,用來綁定 DWRScriptSessionListener,並在web.xml中將 DWRScriptSessionManager 配置在 dwr-invoker servlet中。
2.7 下面完成消息推送類,MessagePush
2.8 下面完成testAction類,模擬調用進度條的類
2.9效果圖如下
閱讀更多 果大爺的幸福生活 的文章
關鍵字: 刷新 技術 JavaScript