1
我有必須使用Azis WSDL2Java工具創建的第三方Web服務的客戶端。每個Web請求必須使用由第三方提供的加密處理程序加密,並且傳入的響應myst將以相同的格式進行解密。除了我的jar包的src/main/resources中的client-config.wsdd中指定了處理程序外,這一切都運行良好。 client-config的其中一個參數是用戶名,一個是密鑰文件的位置。這需要部署到用戶和密鑰位置不同的許多不同環境中,每次重建時都不可能更改這些值。有沒有辦法,我可以通過參數傳遞給我的wsdd,或者將wsdd放在$ JBOSS_HOME/server/conf文件夾等中? (我使用JBoss 5.1.0.GA)可以從JBoss獲取Can Axis Client-Config.wsdd配置嗎?
的WSDD看起來像這樣
<?xml version='1.0'?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<requestFlow>
<handler name="EncryptionHandler" type="java:com.3rdparty.services.util.EncryptionHandler" >
<parameter name="userName" value="myuser"/>
<parameter name="keyFile" value="/jboss-5.1.0.GA/server/<name>/conf/my.key"/>
<parameter name="passwordCallbackClass" value="com.3rdparty.security.client.PWCallback"/>
</handler>
</requestFlow>
<responseFlow>
<handler name="DecryptionHandler" type="java:com.3rdparty.services.util.DecryptionHandler" >
<parameter name="userName" value="myuser"/>
<parameter name="keyFile" value="/jboss-5.1.0.GA/server/<name>/conf/my.key"/>
</handler>
</responseFlow>
</globalConfiguration>
<transport name="http" pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<transport name="local" pivot="java:org.apache.axis.transport.local.LocalSender"/>
<transport name="java" pivot="java:org.apache.axis.transport.java.JavaSender"/>
</deployment>
謝謝!我會研究:-) – rainyday 2010-12-06 09:59:57