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.今后碰到问题再继续补充。新手出品。