基于axis的webService的创建

1.从入司到目前为止,一共有两次要使用到webservice接口

a.短信接口,这次的接口,其实只是我单方面的使用对方的短信接口,对方给我返回值,在具体的使用上,已经在以前博客里面有介绍了。

b.传输数据接口,主要是双方系统的交互,对方系统要获取我们这边系统的部分数据,所以我们这边使用了这个接口。

2.下面介绍代码具体实现。

a.先导入jar包
这里写图片描述

b.先新建一个web项目,在项目WEB-INF下面的web.xml进行第一步配置
<servlet>
     <servlet-name>AxisServlet</servlet-name>
     <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>

<servlet-mapping>
        <servlet-name>AxisServlet</servlet-name>
        <url-pattern>/servers/*</url-pattern>
        **这里是配置webservice的路径**
</servlet-mapping>
**如果项目中有拦截器的,记得不要拦截这个路径。**
c.在web.xml同级目录下,新增一个配置文件server-config.wsdd,
  (上面的图片中可以看到)
<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">

<globalConfiguration>
    <parameter name="sendMultiRefs" value="true" />
    <parameter name="disablePrettyXML" value="true" />
    <parameter name="dotNetSoapEncFix" value="true" />
    <parameter name="enableNamespacePrefixOptimization" value="false" />
    <parameter name="sendXMLDeclaration" value="true" />
    <parameter name="sendXsiTypes" value="true" />
    <parameter name="attachments.implementation"
    value="org.apache.axis.attachments.AttachmentsImpl" />
    </globalConfiguration>

<handler type="java:org.apache.axis.handlers.http.URLMapper" name="URLMapper" />

    **下面的service name=""配置的是服务名,
    <service name="hello" provider="java:RPC">
    **下面的value是你的webservice类所在包的路径
        <parameter name="className" value="server.HelloWorld" />
        <parameter name="scope" value="request" />
        <parameter name="allowedMethods" value="*" />
     <messageReceiver
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver" />
    </service>

    <transport name="http">
        <requestFlow>
            <handler type="URLMapper" />
        </requestFlow>

</deployment>
d.展示我的webservice类所在的目录结构

这里写图片描述

e.最后是类的编写
package server;

public class HelloWorld {


    public String getName(String name) {
        return "hello====>" + name;
    }

    public String dockInfoInsert(String dateSource) {
        String a = "{测试数据接口成功}";
        return a;

    }   
}

f.测试结果
这里写图片描述

g.具体怎样连接测试接口的方法在另外一篇有介绍。(包括自己写工具和Myeclipse生成工具两种方法)

h.最后直接访问:
http://127.0.0.1:8080/axis/servers/hello?wsdl,可以访问,就代表接口部署成功
    1)127.0.0.1,这个Ip是你接口部署服务器所在网络ip
    2)8080 端口号
    3)axis 项目名称(测试demo没有使用拦截器)
    4)servers 路径(web.xml中配置过)
    5)hello 服务名(server-config.wsdd中配置的) 

i.至此,一个简单的webservice实例就搭建完成了。在项目具体使用过程中碰到了一个问题,那就是向数据库进行注入的时候,无法使用hibernate进行注入,只能进行最原始的jdbc进行注入,目前还没有找到解决方法。

j.今后碰到问题再继续补充。新手出品。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值