概述
Axis2可以处理WSDL并生成java代码,在服务端端称为Skeletons,在客户端称为Stubs。
Axis2的repsository是WEB-INF。axis2.xml是全局配置文件,在WEB-INF/conf/下。
第一件事:向web.xml中添加Axis2 Servlet
<web-app>
<servlet>
<servlet-name>AxisServlet</servlet-name>
<display-name>Apache-Axis Servlet</display-name>
<servlet-class>
org.apache.axis2.transport.http.AxisServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
</web-app>
第二件事:编写服务
public Book[] getBooks() {
return new Book[]{onlyBook};
}
public Book findBook(String isbn) {
if (isbn.equals(onlyBook.getIsbn()))
return onlyBook;
return null;
}
上面是BookService.java中的一部分。
第三件事:编写服务的部署描述文件
<serviceGroup>
<service name="BookService"
targetNamespace="http://ws.apache.org/axis2/samples/book/">
<description>Book sample service</description>
<schema schemaNamespace="http://ws.apache.org/axis2/samples/book/xsd/"/>
<parameter name="ServiceClass" locked="false">samples.demo.BookService</parameter>
<operation name="getBooks">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
<operation name="findBook">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
</service>
</serviceGroup>
可以使用RPCMessageReceiver部署POJO,也可以给服务指定一个schema。
第四件事:是否创建aar后缀文件?
aar文件用于hot deployment和服务隔离,但我们这里是webapp内部使用Axis2,所以使用Exploded deployment,也就是说我们要在WEB-INF下创建:
---WEB-INF
| web.xml
|
---services
---BookService
---META-INF
services.xml
当你把这webapp放在容器中起动时,你可以通过访问:
http://yourhost:port/projectName/services/BookService?wsdl
查看这个服务的wsdl。
最后欢迎大家访问我的个人网站:1024s
最后
以上就是清爽鸵鸟为你收集整理的如何在web应用中使用Axis2的全部内容,希望文章能够帮你解决如何在web应用中使用Axis2所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复