如何使用Axis发布WebService

一、发布前准备

准备发布一个webservcie服务,需要准备以下依赖jar包


二、创建web项目

可以创建一个简单的web项目,用于发布webservcie,本文略


三、相关配置

1)web.xml配置如下

<!-- ********************************************** -->

<!-- WebService核心处理类 -->

<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>/services/*</url-pattern>

</servlet-mapping>

<!-- ********************************************** -->


2)创建一个service-config.wsdd文件,用于配置需要发布的webservice方法

<?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">

 

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

 

<service name="firstWs" provider="java:RPC">

<parameter name="className" value="com.ws.demo.FirstWsImpl" />

<parameter name="allowedMethods" value="*" />

</service>

 

<transport name="http">

<requestFlow>

<handler type="URLMapper" />

</requestFlow>

</transport>

</deployment>


四、项目完整文件图


五、运行及测试

1)访问:http://localhost:8080/wsclient/services,即可看到发布的webservice服务

2)测试

String wsurl = "http://localhost:8080/wsclient/services/firstWs?wsdl";

try {

Service service = new Service();

Call call = (Call)service.createCall();

call.setTargetEndpointAddress(new URL(wsurl));

call.setOperationName("list");

String result = (String)call.invoke(new Object[]{"张三",20});

System.out.println(result);

} catch (MalformedURLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (RemoteException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (ServiceException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值