Tin's Blog

          You are coming a long way, baby~Thinking, feeling, memory...

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            128 隨筆 :: 0 文章 :: 221 評論 :: 0 Trackbacks
          文章時間: 2006-1-05 19:00:49    標題: Webwork22b5中datapicker的本地化使用方法 引用回復 編輯/刪除文章 將這個帖子加入我的Blog

          僅作為記錄,盡量簡明:
          1、我使用Weblogic 8.1 SP5+Webwork 2.2 beta 5。2.2b5的Webwork已經完全轉向使用jscalendar作為datapicker的js,而不是以前的tigracalendar,因為tigracalendar不支持國際化。Web項目使用FilterDispatcher,本應改可以將/webwork/*的請求攔截下來,但是它工做不正常。所以我把webwork.jar里面的\com\opensymphony\webwork\static目錄拷貝到Web根目錄,并將static目錄重名名為webwork。
          此時,你的Web根目錄下面應有一個名為webwork的目錄,里面有jscalendar、dojo、niftycorners這幾個文件加,如果不需要其它的,可以只保留jscalendar一個目錄。
          2、在需要顯示datapicker的地方使用如下標記<ww:datepicker name="ecoInf.turninDate" id="ecoInf.turninDate" template="datepicker.ftl" language="cn_utf8" format="%Y-%m-%d %H:%M:%S" showstime="true" />。
          其中template完全可以不寫。而name標明你的數據的來源。id是方便javascript訪問所保留的,可以和name相同(如果有重復name,如經過iterator,則需要區別其id,保持id在html dom中唯一)。
          showstime標明是否可以選擇時間,可以是"true","false","24","12"。
          language決定jscalendar使用的語言,參照下面說明。
          3、language指定的語言其實就對應jscalendar/lang下面的語言文件,格式就是calendar-語言名.js,默認的中文使用的是zh。但是其實j2ee項目經常面對中文亂碼問題,最佳解決方案就是統一使用UTF-8。但是calendar-zh.js正好不是UTF-8的,所以如果直接使用zh語言則datapicker沒法正常工作。
          我的解決方法是將webwork附帶的jscalendar 1.0的lang里面的cn_utf8.js改名為calendar-cn_utf8.js,然后將language="cn_utf8"就工作正常了。
          4、關于時間的顯示格式。其實cn_utf8.js里面已經制定了時間的標準顯示格式是%Y-%m-%d,符合我們的習慣。但是有時我們需要顯示具體時間,參照他們網站的說明,使用format="%Y-%m-%d %H:%M:%S",這個也符合我們的習慣。

          發個牢騷:
          本來奇簡單。但是很奇怪/webwork/*居然不能在Weblogic下自動映射,我一會而去試驗下Tomcat,還有就是js解析utf-8出錯造成整個js沒法工作,浪費了半天時間,唉。

          相關鏈接:
          2.2 beta 5的datapicker的doc:
          http://wiki.opensymphony.com/display/WW/datepicker
          jscalendar的官方網站:
          http://www.dynarch.com/projects/calendar/
          jscalendar的使用方法簡單demo:
          http://www.dynarch.com/demos/jscalendar/
          jscalendar下載:
          http://prdownloads.sourceforge.net/jscalendar/jscalendar-1.0.zip?download
          datapicker本地化的相關討論:
          http://forums.opensymphony.com/thread.jspa?messageID=21466
          http://forums.opensymphony.com/thread.jspa?messageID=21526


          昨天說要試驗一下在tomcat下面的/webwork/*的映射是否工作正常。
          經過試驗在tomcat下面工作正常,所有com.opensymphony.webwork.static下面的東西都可以自動映射到/webwork/*下面。

          也就是說又是Weblogic的倒霉問題……煩啊。

          也就是說不用Webloigic 8.1的朋友們就可以跳過第一步了。

          有的朋友可能沒有2.2 beta5,可以去這里下載nightly build,謝謝jscud上次提供這兩個鏈接:
          http://ivyrep.opensymphony.com/opensymphony/webwork/
          還有對應的xwork:
          http://ivyrep.opensymphony.com/opensymphony/xwork/

          這是一篇老帖子了,已經不是最新:
          http://forum.javaeye.com/viewtopic.php?t=17936&highlight=
          posted on 2006-02-16 21:15 Tin 閱讀(576) 評論(0)  編輯  收藏 所屬分類: Webwork相關
          主站蜘蛛池模板: 佛山市| 镇原县| 莒南县| 汕头市| 东宁县| 潞西市| 闸北区| 南乐县| 万源市| 泸定县| 绥江县| 台中县| 台中市| 金川县| 桐梓县| 会东县| 红安县| 二连浩特市| 贵溪市| 辛集市| 宁远县| 肇源县| 邛崃市| 望奎县| 吴川市| 峨山| 山东省| 南和县| 崇州市| 历史| 穆棱市| 黔江区| 札达县| 科尔| 宿州市| 柘荣县| 洞头县| 嘉善县| 宁德市| 图们市| 泰顺县|