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

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

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

    隨筆-57  評論-202  文章-17  trackbacks-0
          續上一篇隨筆,struts1.2的源代碼和struts1.1的源代碼有些不同,struts1.1的eoncode方法是用的RequestUtils.encodeURL(String s)處理的,指定用UTF-8進行encoding。所以我的修改有些不同。
          從struts的網站上下載1.1的源代碼:http://apache.justdn.org/jakarta/struts/source/jakarta-struts-1.1-src.zip,解壓到本地目錄。打開文件jakarta-struts-1.1-src\src\share\org\apache\struts\taglib\bean\WriteTag.java,新增一個布爾屬性encode,表示是否需要用UTF-8編碼輸出字符串。代碼片斷如下:

        /**
         * The encode flag for the value.
         * Added by George Hill, 05/19/2005
         
    */

        
    protected boolean encode = false;
        
        
    public boolean isEncode() {
            
    return (this.encode);
        }

        
        
    public void setEncode(boolean encode) {
            
    this.encode = encode;
        }

          修改方法formatValue,把這段:


            
    // Return String object as is.
            if ( value instanceof java.lang.String ) {
                    
    return (String)value;
            }
     else {

            }


          替換成:


            
    // Return String object as is.
            if ( value instanceof java.lang.String ) {
                
    if (encode)
                    
    return RequestUtils.encodeURL((String)value);
                
    else
                    
    return (String)value;
            }
     else {

            }


          保存修改后的文件。然后需要修改文件jakarta-struts-1.1-src\doc\userGuide\struts-bean.xml。這個文件在ant編譯時會變成strtus-bean.tld文件。在tag write后面增加一個attribute,如下所示:


        
    <attribute>
          
    <name>encode</name>
          
    <required>false</required>
          
    <rtexprvalue>true</rtexprvalue>
          
    <info>
          
    <p>Added by George Hill, specifies the value need UTF-8 encode or not.</p>
          
    </info>
          
    <default>false</default>
        
    </attribute>

          然后修改一下ant的編譯配置文件build.xml,這一部分和上一篇的隨筆類似,請參考上篇隨筆:<<用URLEncoder輸出<bean:write />的值>>
          運行ant,編譯后的jar文件保存在jakarta-struts-1.1-src\target\library目錄中,把原來的struts.jar和struts-bean.tld文件替換掉,就可以用自定義的<bean:write /> tag了。
    posted on 2005-05-20 11:52 小米 閱讀(1057) 評論(0)  編輯  收藏 所屬分類: Struts
    主站蜘蛛池模板: 18观看免费永久视频| 91免费人成网站在线观看18| 手机在线免费视频| 亚洲香蕉在线观看| 无限动漫网在线观看免费| 亚洲美女人黄网成人女| 足恋玩丝袜脚视频免费网站| 亚洲一区二区三区日本久久九| 人妻无码久久一区二区三区免费| 亚洲四虎永久在线播放| 人妻无码一区二区三区免费| 亚洲国产精品成人久久久 | 三级黄色免费观看| 亚洲中文字幕无码一区二区三区| 一边摸一边桶一边脱免费视频 | 国产精品免费久久久久电影网| 国产成人99久久亚洲综合精品 | 亚洲AV无码专区国产乱码电影| 永久免费AV无码网站国产| 亚洲国产一区在线| 国产在线国偷精品产拍免费| 亚洲乱妇熟女爽到高潮的片| 无码欧精品亚洲日韩一区夜夜嗨 | 亚洲裸男gv网站| 大地资源在线资源免费观看| 亚洲熟妇av一区二区三区下载| 美女被cao免费看在线看网站| 亚洲AV无码成人精品区狼人影院| 内射无码专区久久亚洲| 精品熟女少妇aⅴ免费久久 | 最近免费中文字幕大全免费版视频| 亚洲av无码片在线观看| 国产国产成年年人免费看片| a级毛片无码免费真人久久| 亚洲精品中文字幕无乱码| 日韩免费三级电影| a级片免费在线观看| 久久精品国产99国产精品亚洲| 啊v在线免费观看| 91视频免费网址| 美景之屋4在线未删减免费|