加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

WebService笔记之定制发布(wsdd)(Axis1.4)

发布时间:2020-12-17 00:16:07 所属栏目:安全 来源:网络整理
导读:1,?编写服务 package com.webservice.wsdd;public class HelloWSDD {private int requestCount = 0;public String hello(String name){requestCount++;System.out.println("调用次数" + requestCount);return " 欢迎你" + name;}public Float add(Float a,Fl

1,?编写服务

package com.webservice.wsdd;
public class HelloWSDD {
private int requestCount = 0;
public String hello(String name){
requestCount++;
System.out.println("调用次数" + requestCount);
return " 欢迎你" + name;
}
public Float add(Float a,Float b){
return a + b;
}
}

2,?发布

1>?编写针对本服务的*.wsdd文件.(可以参考axis示例)???deploy.wsdd

<deployment name="test" xmlns="http://xml.apache.org/axis/wsdd/" 
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">

  <service name="HelloWSDD" provider="java:RPC">
    <parameter name="className" value="com.webservice.wsdd.HelloWSDD" />
    <parameter name="allowedMethods" value="*" />
  </service>

</deployment>

2>?使用命令生成本项目的全局配置文件server-config.wsdd

我的jar包我放在了d:Jarsaxisaxis-1_4lib,所以我使用命令

java -Djava.ext.dirs=d:Jarsaxisaxis-1_4lib org.apache.client.AdminClient -lhttp://localhost:8888/axis/services deploy.wsdd

3>?访问http://localhost:8888/axis,?列出的HelloWSDDwsdl

4>?如果是已经有了server-config.wsdd文件,那么就只用添加配置

5>?server-config.wsdd文件放到WEB-INF文件下,将服务class文件按照包结构复制到WEB-INF/classes

3,?编写客户端程序访问HelloWSDD

public class TestWSDDClient {
public static void main(String[] args) {
try{
// 指定访问web服务的位置
String url = "http://localhost:8888/axis/services/HelloWSDD";
// 创建服务
Service service = new Service();
// 创建调用
Call call = (Call)service.createCall();
// 设置调用服务来源
call.setTargetEndpointAddress(url);
// 设置调用方法名
call.setOperationName(new QName(url,"hello"));
// 调用
String result = (String)call.invoke(new Object[]{"zhangsan"});
System.out.print("result:  " + result );
}catch(Exception e){
e.printStackTrace();
}
}
}

4,?取消发布服务

1>?直接在server-config.wsdd文件中删除相应的配置?或者按照2>

2>?创建取消的配置文件??undeploy.wsdd文件

<undeployment name="test" xmlns="http://xml.apache.org/axis/wsdd/" 
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
  <service name="HelloWSDD" >
  </service>
</undeployment >

? ?使用命令取消发布

java -Djava.ext.dirs=d:Jarsaxisaxis-1_4lib 								org.apache.client.AdminClient 		-lhttp://localhost:8888/axis/services undeploy.wsdd

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读