webService接口编写并发布与webService接口的调用(一)

编写并发布webService接口

1. 编写webService接口

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;

@WebService(name = "Login",// Port名称
	serviceName = "testService", // WebService服务名称
	targetNamespace = "http://webService.test.com" // 命名空间,默认为倒置的包名
)
public interface TestService {
	// 提供一个对外公开的服务
	@WebMethod(operationName = "loginPass")
	// 修改方法名
	String loginPass(@WebParam(name = "userId") String userId,@WebParam(name = "password") String password);
}

2. 编写接口实现类

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;

/**
 1. 实现类
 */
@WebService(endpointInterface = "com.thinkgem.jeesite.common.webService.MyService",//接口路径
	name = "Login",// Port名称
	serviceName = "testService", // WebService服务名称
	targetNamespace = "http://webService.test.com" // 命名空间,默认为倒置的包名(如果调用时生成代码,则com.test.webService为代码的包路径)
)
public class TestServiceImpl implements TestService {

	@WebMethod(operationName = "loginPass" // 修改方法名
	)
	@Override
	public String loginPass(
			@WebParam(name = "userId") String userId,
			@WebParam(name = "password") String password) {
		if ("admin".equals(userId) && "123".equals(password)) {
			return "success";
		}
		return "error";
	}

}

3. 发布webService接口服务

import javax.xml.ws.Endpoint;

public class TestPublisher {
	
	public static void main(String[] args) {
		//指定服务url
		String url = "http://localhost:8089/testservice";
		//指定服务实现类
		TestService server = new TestServiceImpl();
		//采用命令行发布者Endpoint发布服务
		Endpoint.publish(url, server);
	}
}

4. 测试看webService接口服务是否发布成功
浏览器访问发布时设置的url + ?wsdl,如:http://localhost:8089/testservice?wsdl
如果显示:
在这里插入图片描述

5. webService接口调用

webService接口编写并发布与webService接口的调用(二)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是一个简单的 Java 调用 WebService 接口的示例: 1. 首先,需要生成客户端代码来调用 WebService。可以使用 Java 提供的 wsimport 工具,例如: ``` wsimport -keep -verbose http://localhost:8080/your_webservice_url?wsdl ``` 这个命令会根据 WSDL 文件生成客户端代码,并将生成的代码保存在当前目录下的 `your_webservice_url` 目录中。 2. 在代码中创建 WebService 客户端对象。例如: ```java YourWebService service = new YourWebService(); YourWebServicePortType port = service.getYourWebServicePort(); ``` 注意,`YourWebService` 和 `YourWebServicePortType` 分别对应于生成的客户端代码中的服务类和端口类。 3. 调用 WebService 方法。例如: ```java String result = port.yourWebServiceMethod(param1, param2); ``` 其中,`yourWebServiceMethod` 是 WebService 中定义的方法名,`param1` 和 `param2` 是方法的参数。 完整的代码示例: ```java import your.webservice.package.YourWebService; import your.webservice.package.YourWebServicePortType; public class MyWebServiceClient { public static void main(String[] args) { try { // 创建 WebService 客户端对象 YourWebService service = new YourWebService(); YourWebServicePortType port = service.getYourWebServicePort(); // 调用 WebService 方法 String result = port.yourWebServiceMethod(param1, param2); // 处理返回结果 System.out.println(result); } catch (Exception e) { e.printStackTrace(); } } } ``` 其中,`your.webservice.package` 对应于生成的客户端代码中的包名。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吟诗作对歌一曲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值