在我正在工作的项目中,我使用部署描述符(WSDD)文件部署了SOAP服务器。为此,启动Web服务器(例如tomcat,jetty),然后执行以下命令:
java -cp%AXISCLASSPATH%org.apache.axis.client.AdminClient deploy.wsdd
我需要跳过上面的命令以避免调用Axis AdminClient。是否可以将我的web服务部署为war文件?
注意:由于limitations。
,因此无法使用JWS解决方案答案 0 :(得分:1)
Stackoverflow上的其他人找到了一种方法to programmatically configure Axis。这也可能对你有用。
Axis项目在其关于集成的部分中有一些documentation on the EngineConfigurationFactory。
答案 1 :(得分:0)
如果您使用Maven构建,则可以使用maven-wsdd-plugin。
如果您的WSDL没有改变(例如,您只是在Web服务业务逻辑中修复错误,或者您正在构建适合给定WSDL的Web服务),则可以跳过maven插件。只需使用AdminClient将Web服务部署到开发servlet容器,如问题中所述。这将在开发servlet容器的/ {axis_context} / WEB-INF目录中生成server-config.wsdd。复制该server-config.wsdd并将其打包到war的WEB-INF目录中。将战争部署到其他位置时,Web服务应包含在Web服务列表中。
使用Axis 1.4和Tomcat 1.7进行测试