<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    liuquanqi

    java

    常用鏈接

    統(tǒng)計(jì)

    最新評論

    webwork 中文亂碼問題 表單字段驗(yàn)證 標(biāo)簽的用法

    1.WebWork中文問題解決:?
    a)在webwork.properties文件中,添加:?
    webwork.i18n.encoding?=?UTF-8?
    它主要是用來設(shè)置WebWork?UI標(biāo)簽庫的編碼,?
    要保持你的頁面和編碼與你在encoding設(shè)置的一致,否則重復(fù)編碼出現(xiàn)亂碼.?
    如果不設(shè)置它將通過System.getProperty("file.encoding"來獲取默認(rèn)字符編碼。
    ?
    PS:2.1.6版本中存在BUG,不能夠使用定義的encoding.?

    b)寫一個Filter,將編碼設(shè)置為UTF-8。?
    例如SetCharacterEncodingFilter。它解決Action數(shù)據(jù)傳遞時的編碼,但是不能解決屬性在Action或是Model賦值的編碼.?
    c)velocity.properties文件中,添加:?
    input.encoding=UTF-8?
    output.encoding=UTF-8?
    default.contentType=text/html;?charset=UTF-8?
    它是用來設(shè)置.vm頁面的編碼方式.?

    d)使用freemarker作為view層,可以再web.xml中指定字符屬性;

    <servlet>
    ????????<servlet-name>freemarker</servlet-name>
    ????????<servlet-class>com.opensymphony.webwork.views.freemarker.FreemarkerServlet</servlet-class>
    ????????<!--?FreemarkerServlet?settings:?-->
    ????????<init-param>
    ????????????<param-name>TemplatePath</param-name>
    ????????????<param-value>/templates/</param-value>
    ????????</init-param>
    ????????<init-param>
    ????????????<param-name>NoCache</param-name>
    ????????????<param-value>true</param-value>
    ????????</init-param>
    ????????<init-param>
    ????????????<param-name>ContentType</param-name>
    ????????????<param-value>text/html</param-value>
    ????????</init-param>
    ???????<!--????????指定編碼?????????-->
    ????????<init-param>
    ????????????<param-name>default_encoding</param-name>
    ????????????<param-value>UTF-8</param-value>
    ????????</init-param>

    ????????<init-param>
    ????????????<param-name>number_format</param-name>
    ????????????<param-value>0.##########</param-value>
    ????????</init-param>
    ????????<load-on-startup>1</load-on-startup>
    ????</servlet>

    2.WebWork表單字段驗(yàn)證:?
    a)Action必須繼承ActionSurport;?
    b)在xwork.xml文件必須定義?
    <action?name="hello"?class="test.HelloAction">?
    ???<result?name="success">/result.jsp</result>????
    ???<result?name="input">?
    ????????<param?value="/location">/index.jsp</param>?
    ???</result>???
    ???<interceptor-ref?name="validationWorkflowStack"/>?
    </action>?
    其中input?是必須定義的,另外要使用?
    <param?value="location">/index.jsp</param>?
    才可以在驗(yàn)證錯誤后回到輸入頁面。
    ?
    c)在Action類名-validation.xml文件必須與Action類在同一目錄下,?
    d)定義的<message/>元素,當(dāng)提示消息為中文時候必須在文件頭定義:?
    <?xml?version="1.0"?encoding="GBK"?>?

    3.WebWork的標(biāo)簽的用法:?
    a)需要提交的表單項(xiàng)name屬性值均為常量,因此均以單引號包圍,以與Model中的變量相匹配,

    <ww:form?namespace="'/test'"?action="'ftltest'"?method="'POST'">
    ???????????????<ww:textfield?name="'msg'"?label="消息"></ww:textfield>
    ???????????????<ww:submit?value="/提交"?/>
    ????</ww:form>
    b)<ww:radio/>和<ww:select/>標(biāo)簽中的list的屬性可以使用Map類型,以key和value對應(yīng)listKey,listValue屬性.

    第一種寫法:

    <ww:select?label="'Months'"?
    ????????name="'months'"?
    ????????????list="#{'01':'Jan',?'02':'Feb',?[]}"?
    ????????value="/01"
    ????????required="true"?
    />

    第二種寫法:

    <ww:select?label="'Pets'"?
    ????????name="'petIds'"?
    ????????list="petDao.pets"?
    ????????listKey="id"?
    ????????listValue="name"?
    ????????multiple="true"?
    ????????size="3"?
    ????????required="true"?
    />

    <!--petDao.pets為普通對象,使用其id為KEY,name為value-->
    <!--如果petDao.pets為Map類型,則可省略listKey和listValue屬性-->

    c)WebWork2中的UI標(biāo)簽的模板定制,可以在webwork.properties文件中指定相關(guān)屬性,并且定制模板文件;

    webwork.ui.theme=xhtml?????//可用的theme還有simple;
    webwork.ui.templateDir=template????//模板路徑;
    #sets?the?default?template?type.?Either?vm?or?jsp
    webwork.ui.templateSuffix=vm???//模板類型,還支持JSP模板,開發(fā)可以使用FreeMarker定制模板;


    4.WebWork的國際化使用:?
    a)<ww:i18?name="'message'">?
    ????????<ww:text?name="'key'"/>?
    ??</ww:i18>?
    使用message_zh_CN.properties中包含key=****;?

    b)在Action中的getText()方法資源來自Action的類名.properties

    c)在Action中可以使用getTexts()獲得具體的ResourceBundle;

    d)在view層一樣可以使用getText()方法;


    ????????<ww:i18n?name="'messages'">
    ????????????<!--在messages.properties文件中有key->index_msg-->????????
    ????????????????<ww property?value="getText('index_msg')"/>
    ????????</ww:i18n>

    posted on 2007-03-19 11:18 ☆℡齊 閱讀(2183) 評論(0)  編輯  收藏 所屬分類: java


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 视频一区在线免费观看| 亚洲性色高清完整版在线观看| 色欲aⅴ亚洲情无码AV蜜桃| A在线观看免费网站大全| 中文字幕免费在线观看动作大片 | 亚洲一区二区三区在线观看蜜桃 | 二区久久国产乱子伦免费精品| 亚洲午夜激情视频| 中国极品美軳免费观看| 国产亚洲无线码一区二区| 91精品免费高清在线| 五月天婷亚洲天综合网精品偷| 美女视频黄频a免费大全视频| 亚洲av无码不卡私人影院| 成人免费777777被爆出| 91大神亚洲影视在线| 国产精彩免费视频| 亚洲日韩国产欧美一区二区三区| 日韩毛片免费在线观看| 四虎精品成人免费视频| 久久亚洲2019中文字幕| 久久永久免费人妻精品| 亚洲伊人色一综合网| 国产午夜成人免费看片无遮挡| 亚洲av激情无码专区在线播放| 日本免费xxxx色视频| 亚洲暴爽av人人爽日日碰| 亚洲视频在线免费播放| 亚洲AV无码AV日韩AV网站| 亚洲精品一级无码鲁丝片 | 九月婷婷亚洲综合在线| 久久青草91免费观看| 在线观看亚洲AV每日更新无码| 免费人成年激情视频在线观看 | 亚洲一区电影在线观看| 亚洲av无码国产精品色在线看不卡| 两个人看的www免费高清| 欧洲 亚洲 国产图片综合| 亚洲一区二区三区免费| 毛片免费全部播放无码| 黄色网址免费在线|