У меня есть клиент для стороннего веб-сервиса, который должен был быть создан с помощью инструмента Azis WSDL2Java. Каждый веб-запрос должен быть зашифрован с использованием обработчика шифрования, предоставленного третьей стороной, и входящие ответы могут быть расшифрованы в том же формате. Это все работает очень хорошо, за исключением того, что у меня есть обработчики, указанные в client-config.wsdd в src / main / resources моего jar. один из параметров client-config - это имя пользователя, а другой - местоположение файла ключа. Это необходимо будет развернуть во многих различных средах, где местоположение пользователя и ключа будет отличаться, и будет невозможно изменить значения каждый раз, а затем перестраивать. Есть ли способ, которым я могу либо передать параметры моему wsdd, либо поместить wsdd в папку $ JBOSS_HOME / server // conf и т. Д.? (Я использую JBoss 5.1.0.GA)
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>