我是靠谱客的博主 清爽鸵鸟,最近开发中收集的这篇文章主要介绍如何在web应用中使用Axis2,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部