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

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

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

    Vikings

    2008年8月7日 #

    Dom4j的CDATA問題與UTF-8字符集

     

    本文轉自:http://www.b9527.net/?q=node/1124
     
    原文如下:
     

    1. 寫入文件的格式

    寫入 Xml 文件的時候默認是全部內容寫為一行,這個可以通過加入 Format 來解決:

    OutputFormat format = OutputFormat.createPrettyPrint();

    2. Xml 中文問題

    2.1 Xml 最好設為 UTF-8 格式,

    format.setEncoding("utf-8");

    2.2 不要用 FileWriter 輸出雙字節,改為 FileOutputStream 輸出單字節:

    XMLWriter output = new XMLWriter(new FileOutputStream(configFile), format);

    3. CDATA類型文本輸入

    Element conTblOpr = rowElement.addElement(XmlDBConstants.CON_TBL_OPR);// 加入節點

    DefaultCDATA conTblOprCdata = new DefaultCDATA(conTblOprField);// CDATA格式化

    conTblOpr.add(conTblOprCdata );// 加入CDATA文本

    Dom4j 里面已經內置了對 CDATA 類型文本的支持,不要硬編碼去在文本兩邊加<![CDATA[***]]>。

     

    posted @ 2011-07-05 00:12 Vikings 閱讀(2224) | 評論 (0)編輯 收藏

    實施WebService Security[WS-Security1.0]的Encrypt和Sign模式(XFire+WSS4J)

    轉自:
    http://www.tkk7.com/security/archive/2006/08/08/xfire_wss4j.html

    thanks for springside

    鑒于很多系統需要實施WS-Security的標準,我們在SpringSide中提供了XFire+WSS4J的Demo,本文介紹SpringSide中Spring+XFire+WSS4J的基本配置

    [WebService Server端配置]
    第一,創建一個基本的BookService
    public interface BookService {
        
    /** *//**
         * 按書名模糊查詢圖書
         
    */

        List findBooksByName(String name);

        
    /** *//**
         * 查找目錄下的所有圖書
         *
         * 
    @param categoryId 如果category為null或“all”, 列出所有圖書。
         
    */

        List findBooksByCategory(String categoryId);

        
    /** *//**
         * 列出所有分類.
         *
         * 
    @return List<Category>,或是null。
         
    */

        List getAllCategorys();
    }
    第二,接口擴展,即Extend基本的BookService,在XFire中,不同的WSS4J策略需要針對不同的ServiceClass,否則<inHandlers>里面的定義會Overlap。


       <!--BookService 基類-->
        
    <bean id="baseWebService" class="org.codehaus.xfire.spring.remoting.XFireExporter" abstract="true">
            
    <property name="serviceFactory" ref="xfire.serviceFactory"/>
            
    <property name="xfire" ref="xfire"/>
        
    </bean>

        
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
            
    <property name="mappings">
                
    <value>
                    /BookService=bookService
                    /BookServiceWSS4J=bookServiceWSS4J
                    /BookServiceWSS4JEnc=bookServiceWSS4JEnc
                    /BookServiceWSS4JSign=bookServiceWSS4JSign
                
    </value>
            
    </property>
        
    </bean>

       
    <!--(1)BookWebService 不需要認證-->
        
    <bean id="bookService" class="org.codehaus.xfire.spring.remoting.XFireExporter">
            
    <property name="serviceFactory" ref="xfire.serviceFactory"/>
            
    <property name="xfire" ref="xfire"/>
            
    <property name="serviceBean" ref="bookManager"/>
            
    <property name="serviceClass" value="org.springside.bookstore.plugins.xfire.service.BookService"/>
        
    </bean>

        
    <!--  (3)BookWebService 使用 WSS4J驗證-->
        
    <bean id="bookServiceWSS4J" class="org.codehaus.xfire.spring.remoting.XFireExporter">
            
    <property name="serviceBean" ref="bookManager"/>
            
    <property name="serviceClass" value="org.springside.bookstore.plugins.xfire.service.BookServiceWSS4J"/>
            
    <property name="inHandlers">
                
    <list>
                    
    <ref bean="domInHandler"/>
                    
    <ref bean="wss4jInHandler"/>
                    
    <ref bean="validateUserTokenHandler"/>
                
    </list>
            
    </property>
        
    </bean>

        
    <bean id="domInHandler" class="org.codehaus.xfire.util.dom.DOMInHandler"/>

        
    <bean id="wss4jInHandler" class="org.codehaus.xfire.security.wss4j.WSS4JInHandler">
            
    <property name="properties">
                
    <props>
                    
    <prop key="action">UsernameToken</prop>
                    
    <prop key="passwordCallbackClass">org.springside.bookstore.plugins.xfire.wss4j.PasswordHandler</prop>
                
    </props>
            
    </property>
        
    </bean>

        
    <bean id="validateUserTokenHandler" class="org.springside.bookstore.plugins.xfire.wss4j.WSS4JTokenHandler"/>
        
        
    <!--  (4)BookWebService 使用 WSS4J驗證 Encrypt模式-->
        
    <bean id="bookServiceWSS4JEnc" class="org.codehaus.xfire.spring.remoting.XFireExporter">
            
    <property name="serviceBean" ref="bookManager"/>
            
    <property name="serviceClass" value="org.springside.bookstore.plugins.xfire.service.BookServiceWSS4JEnc"/>
            
    <property name="inHandlers">
                
    <list>
                    
    <ref bean="domInHandler"/>
                    
    <ref bean="wss4jInHandlerEnc"/>
                    
    <ref bean="validateUserTokenHandler"/>
                
    </list>
            
    </property>
        
    </bean>
            
        
    <bean id="wss4jInHandlerEnc" class="org.codehaus.xfire.security.wss4j.WSS4JInHandler">
            
    <property name="properties">
              
    <props>
                
    <prop key="action">Encrypt</prop>
                
    <prop key="decryptionPropFile">org/springside/bookstore/plugins/xfire/wss4j/insecurity_enc.properties</prop>
                
    <prop key="passwordCallbackClass">org.springside.bookstore.plugins.xfire.wss4j.PasswordHandler</prop>
              
    </props>
            
    </property>
        
    </bean>
        
        
    <!--  (5)BookWebService 使用 WSS4J驗證 Signature模式-->
        
    <bean id="bookServiceWSS4JSign" class="org.codehaus.xfire.spring.remoting.XFireExporter">
            
    <property name="serviceBean" ref="bookManager"/>
            
    <property name="serviceClass" value="org.springside.bookstore.plugins.xfire.service.BookServiceWSS4JSign"/>
            
    <property name="inHandlers">
                
    <list>
                    
    <ref bean="domInHandler"/>
                    
    <ref bean="wss4jInHandlerSign"/>
                    
    <ref bean="validateUserTokenHandler"/>
                
    </list>
            
    </property>
        
    </bean>
        
        
    <bean id="wss4jInHandlerSign" class="org.codehaus.xfire.security.wss4j.WSS4JInHandler">
            
    <property name="properties">
              
    <props>
                
    <prop key="action">Signature</prop>
                
    <prop key="signaturePropFile">org/springside/bookstore/plugins/xfire/wss4j/insecurity_sign.properties</prop>
                
    <prop key="passwordCallbackClass">org.springside.bookstore.plugins.xfire.wss4j.PasswordHandler</prop>
              
    </props>
            
    </property>
        
    </bean>
        
    </beans>

    posted @ 2008-10-29 01:55 Vikings 閱讀(379) | 評論 (0)編輯 收藏

    簡化spring中的事務管理配置(ZT)

    <!-- Transactional proxy for the services -->  
        
    <bean id="baseTxProxy" lazy-init="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">  
            
    <property name="transactionManager"><ref bean="transactionManager"/></property>  
            
    <property name="transactionAttributes">  
                
    <props>  
                    
    <prop key="*">PROPAGATION_REQUIRED</prop>  
                
    </props>  
            
    </property>  
        
    </bean>  
      
        
    <bean id="itemService" parent="baseTxProxy">  
            
    <property name="target">  
                
    <bean class="ItemServiceImpl" autowire="byName"/>  
            
    </property>  
        
    </bean>  
    這樣的話baseTxProxy也可能被實例化。是不是加上abstract="true"屬性,把baseTxProxy只是當作一個模板比較好?因為只需要itemservice這個bean。

    posted @ 2008-08-07 00:12 Vikings 閱讀(301) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 毛片免费vip会员在线看| 中文字幕亚洲天堂| 免费视频成人国产精品网站| 亚洲国产日韩成人综合天堂| 男人进去女人爽免费视频国产| 亚洲成人福利网站| 亚洲国产精品自产在线播放| 在线免费观看国产| 美女被爆羞羞网站在免费观看| 亚洲AV一宅男色影视| 日本不卡免费新一二三区| 最近免费mv在线观看动漫 | 亚洲欧美日韩一区二区三区在线| 亚洲阿v天堂在线2017免费| 在线美女免费观看网站h| 一区二区三区免费视频观看| 亚洲国产精品综合久久网各| 久久亚洲欧洲国产综合| 成年免费大片黄在线观看岛国| 在线观看免费视频一区| 在线观看国产一区亚洲bd| 久久久久亚洲AV无码观看| 亚洲精品老司机在线观看| 一色屋成人免费精品网站| 两个人看的www免费视频| 亚洲AV无码一区二区三区性色| 精品亚洲成a人片在线观看少妇 | 成全视频免费高清| 久艹视频在线免费观看| 免费看黄网站在线看 | 无码AV动漫精品一区二区免费| 亚洲国产成人久久77| 亚洲欧洲∨国产一区二区三区| 国产精品成人四虎免费视频| 18禁无遮挡无码国产免费网站| 国产乱子伦精品免费视频| 亚洲日韩一区精品射精| 亚洲国产成人精品无码区在线秒播| 亚洲产国偷V产偷V自拍色戒 | 亚洲真人无码永久在线| 国产最新凸凹视频免费|