使用axis开发webservice

[b]1、在tomcat中的部署axis[/b]
修改WEB-INF下的web.xml文件,添加以下内容:
<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>SOAPMonitorService</servlet-name>
<servlet-class>org.apache.axis.monitor.SOAPMonitorService</servlet-class>
<init-param>
<param-name>SOAPMonitorPort</param-name>
<param-value>5001</param-value>
</init-param>
<load-on-startup>100</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/servlet/AxisServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/ws/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SOAPMonitorService</servlet-name>
<url-pattern>/SOAPMonitor</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>wsdl</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xsd</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>


[b]2、发布web服务[/b]
添加要发布的服务到server-config.wsdd。如发布一个OA web服务,服务名称为:OASubmitService
<service name="OASubmitService"
provider="java:RPC">
<parameter name="allowedMethods" value="submitForOA" />
<parameter name="scope" value="Session" />
<parameter name="className" value="com.leadtone.oaserver.OASubmitServiceImpl" />
<operation name="submitForOA" qname="operNS:submitForOA" xmlns:operNS="http://tempuri.org/ns.xsd"
returnQName="DataXmlStr" returnType="rtns:string"
xmlns:rtns="http://www.w3.org/2001/XMLSchema" soapAction="" >
<parameter qname="dataXml" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
<parameter qname="paramXml" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
</operation>
<namespace>http://oa.leadtone.com/</namespace>
</service>

3、Apache Axis提供了WSDL2Java和Java2WSDL两个开发工具。
1)使用java2wsdl生成wsdl
用axis的java2wsdl类来生成wsServerTest.wsdl:
选择项目,选择或者填入main函数org.apache.axis.wsdl.Java2WSDL
在run的程序参数设置为:
-o wsServerTest.wsdl
-l "http://localhost:8080/poa/services/OASubmitService"
-n "urn:submitForOA"
-p"com.leadtone.oaserver" "urn:submitForOA"
com.leadtone.oaserver.OASubmitService
各参数的含义如下。
-o:指定输出的WSDL文件的文件名。
-l:指定服务的位置。
-n:WSDL文件的目标名字空间。
-p:指定从package到名字空间的映射,这里可以有多个映射。
Java2WSDL根据已有的Java类文件生成WSDL文件,Java类文件可以是接口类文件,并不需要实现细节。
2)使用wsdl2java生成stub用axis的wsdl2java来生成stub:
选择项目,选择或者填入main函数org.apache.axis.wsdl.WSDL2Java
在run的程序参数设置为:
D:\program\Eclipse3.2\wsSeverTest\wsServerTest.wsdl -t -p com.leadtone.oaserver.OASubmitService
参数说明: -o 输出wsdl文件名称
-l 访问的url
-n 命名空间
-p 包名 命名空间的名字



4、客户端测试
直接在浏览器中输入webservice的url地址,如,http://localhost:8080/poa/services/OASubmitService
如果是安全通道,将client.keystore和client.truststore放到项目工程下。在vm 参数设定:
-Djavax.net.ssl.keyStore=D:\program\Eclipse3.2\wsClientTest\client.keystore
-Djavax.net.ssl.keyStorePassword=changeit
-Djavax.net.ssl.trustStore=D:\program\Eclipse3.2\wsClientTest\client.truststore


将url改为https://localhost:8080/poa/services/OASubmitService来调用发布的函数。

本文欢迎转载,但请注明作者与出处
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值