`
redhacker
  • 浏览: 496012 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

利用soapui和jdk API访问webservice

 
阅读更多
继上一篇(http://redhacker.iteye.com/blog/1444508)关于在jdk6下如何创建webservice之后,本篇将讲述如何利用jdk API结合soapui工具编写简单webservice访问。

一、启动hello webservice服务。启动方式参见上篇博客

启动后效果如下:



二、打开soapui工具。工具下载不再赘述。



三、新建WSDL project。







四、发起ws请求,获取请求与返回报文。









五、根据请求报文编写java请求程序。

package com.je.ws.client;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class HelloServiceTest {

	public static String HELLO_WS_URL = "http://127.0.0.1:8001/HelloServicePort";
	
	// 调用WS
	private static void testHelloService(String name) throws Exception,
			IOException {

		// 构建请求报文
		StringBuffer sendMsgBuffer = new StringBuffer(
				"<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:jav=\"http://www.javaedu.com\">");
		sendMsgBuffer.append("<soapenv:Header/>").append("<soapenv:Body>")
				.append("<jav:hello>").append("<arg0>").append(name)
				.append("</arg0>").append("</jav:hello>")
				.append("</soapenv:Body>").append("</soapenv:Envelope>");
		String sendMsg = sendMsgBuffer.toString();

		// 开启HTTP连接ַ
		URL url = new URL(HELLO_WS_URL);
		HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
		
		// 设置HTTP请求相关信息
		httpConn.setRequestProperty("Content-Length",
				String.valueOf(sendMsg.getBytes().length));
		httpConn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
		httpConn.setRequestMethod("POST");
		httpConn.setDoOutput(true);
		httpConn.setDoInput(true);

		// 进行HTTP请求
		OutputStream outObject = httpConn.getOutputStream();
		outObject.write(sendMsg.getBytes());
		
		// 关闭输出流
		outObject.close();

		// 获取HTTP响应数据
		InputStreamReader isr = new InputStreamReader(
				httpConn.getInputStream(), "utf-8");
		BufferedReader inReader = new BufferedReader(isr);
		StringBuffer result = new StringBuffer();
		String inputLine;
		while ((inputLine = inReader.readLine()) != null) {
			result.append(inputLine);
		}
		
		// 打印HTTP响应数据
		System.out.println(result);
		
		// 关闭输入流
		inReader.close();
		isr.close();
	}
	
	// 测试主方法
	public static void main(String[] args) throws IOException, Exception {
		testHelloService("jack");
	}
}



返回结果:

<?xml version="1.0" ?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
	<S:Body>
		<ns2:helloResponse xmlns:ns2="http://www.javaedu.com">
		<return>Hello,jack</return></ns2:helloResponse>
	</S:Body>
</S:Envelope>


六、说明:获取到报文后,可用利用jdk自带的XML dom API或dom4j、jdom等API进行XML解析,获取您想要的数据。

如果您觉得本文对您有益,请点击博文后的google广告,对作者表示支持,谢谢!
  • 大小: 25.3 KB
  • 大小: 14.5 KB
  • 大小: 4.6 KB
  • 大小: 10.5 KB
  • 大小: 23.8 KB
  • 大小: 6.8 KB
  • 大小: 5.1 KB
  • 大小: 27.1 KB
  • 大小: 11.3 KB
  • 大小: 6.8 KB
  • 大小: 5.1 KB
0
0
分享到:
评论

相关推荐

    jdk5 webservice demo

    10. **测试工具**: 可以使用`wsdl2java`工具生成客户端代码,并利用`soapUI`等工具进行Web服务的测试和调试。 这个"JDK5 WebService Demo"项目是一个理想的起点,帮助开发者理解和实践JAX-WS在JDK 5中的使用,掌握...

    Webservice入门教程_用JDK开发Webservice示例代码

    2. **JAX-WS**:在Java世界中,JAX-WS(Java API for XML Web Services)是用于创建和消费Web服务的标准API。它简化了开发过程,提供了从Java类到WSDL的自动生成,以及从WSDL到Java类的反向生成。 3. **创建...

    利用jdk web服务api实现,这里使用基于 SOAP message 的 Web 服务

    标题中的“利用jdk web服务api实现,这里使用基于 SOAP message 的 Web 服务”指的是使用Java开发Web服务,特别是基于SOAP(Simple Object Access Protocol)的消息传递协议。SOAP是一种用于交换结构化和类型化信息...

    根据wsdl生成webservice服务端(3种方式)

    本文将详细介绍三种基于WSDL生成WebService服务端的方法:使用`wsdl2java`命令、通过SOAPUI工具及借助MyEclipse的Web Service项目功能。 #### 方法一:使用`wsdl2java`命令生成 `wsdl2java`是Apache CXF提供的一个...

    webServices 接口测试 soapUI 和 WebServiceStudio

    用于webServices的接口测试 ... WebServiceStudio 通soapui类型就可以进行测试 不要jdk 应该是用 .net写的 界面虽然不好看 但是很小 很轻便 soapui过大用连接下载 链接: https://pan.baidu.com/s/1dFo7pC1 密码: i42k

    用eclipse开发WebService图解

    本篇文章将详细阐述如何利用Eclipse来创建和调试WebService,旨在帮助初学者及开发者深入理解这一过程。 首先,我们要了解什么是WebService。WebService是一种基于网络的、分布式的模块化应用程序,它通过XML(可...

    webservice下对json文件的操作

    Web服务(WebService)是一种基于互联网的、平台独立的交互方式,它允许...通过查看这些代码,你可以深入理解在Java环境下如何利用WebService处理JSON文件。这个示例对于学习WebService和JSON交互具有很高的实践价值。

    基于SoapUI的接口测试程

    WSDL,全称Web Services Description Language(Web服务描述语言),是一种基于XML的应用语言,用于定义Web服务的接口和访问方式。WSDL描述了服务访问点(即端点)和服务之间的交互模式,包括请求/响应消息的结构和...

    EOS与WebService的集成方案

    - **测试和调试**:发布后,使用SOAP客户端或工具,如 SoapUI,对发布的WebService进行调用测试,验证其功能和性能。 ### 4. 实施步骤 - 创建WebService接口 - 编写BizService业务逻辑 - 配置EOS以支持SOAP通信 - ...

    SoapUI Pro v2[1].0.2.zip

    这个软件主要用于Web服务的测试,特别是SOAP(简单对象访问协议)和RESTful(Representational State Transfer)API的测试。 【描述】中提到的关键技术包括: 1. **Java**:SoapUI 是基于Java开发的,这意味着它...

    Java WebService入门实例

    - 为了确认WebService是否成功发布,可以使用浏览器或者专门的工具(如SoapUI)访问发布的URL,查看WSDL(Web Service Description Language)文件,它定义了服务的接口和方法。 4. **生成客户端** - 使用JDK...

    SSH搭建webservice服务

    最后,我们可以使用工具,例如 soapUI,来测试 WebService。输入 http://localhost:8080/sps/services/ 可以看到所有发布的服务,输入 http://localhost:8080/sps/services/hello?wsdl 可以查看 hello 服务的 WSDL ...

    webservice

    4. **JAX-WS(Java API for XML Web Services)**:这是Java平台上的WebService开发标准,它提供了创建、部署和消费SOAP服务的API。JAX-WS通常与JDK一起使用,简化了WebService的开发过程。 5. **Apache Axis**:这...

    发布webService服务接口与spring整合教程

    你还可以使用工具(如SoapUI)进行功能测试和性能测试。 5. **注意兼容性**:根据描述,本教程适用于JDK 1.6或更高版本。请确保你的开发环境和目标运行环境都满足这个要求。 在提供的压缩包文件“webService服务...

    java调用webservice程序

    在Java中,我们通常使用JAX-WS(Java API for XML Web Services)框架来创建和消费WebService。以下是调用WebService接口的主要步骤: 1. **获取WSDL文档**:首先,你需要知道WebService的WSDL地址。这个文档描述了...

    apache-cxf2.7.18官方版最稳定版本

    5. **测试与调试**:CXF提供了多种测试工具,如SOAPUI,帮助开发者测试和调试Web服务。 总的来说,Apache CXF 2.7.18是一个功能强大的工具,它简化了Web服务的开发和部署,同时提供了丰富的特性和良好的社区支持,...

    pb调用webservice(pb客户端+java服务端).zip

    在Java服务端,开发者通常会利用JDK提供的API,如JAX-WS(Java API for XML Web Services),来创建和部署Web服务。在这个案例中,Eclipse作为一个流行的Java集成开发环境,提供了友好的工具支持,帮助开发者快速...

    webservice服务器端和客户端源码

    1. JAX-WS(Java API for XML Web Services):Java平台上的Web服务标准,用于创建和部署SOAP Web服务。它简化了WSDL的生成和解析,以及SOAP消息的处理。 2. Axis2:Apache基金会开发的一个开源Web服务引擎,支持JAX...

    java发布webService 步骤

    1. **安装Java开发环境**:确保你已经安装了Java JDK,可以访问Java API并编译Java源代码。 2. **安装Tomcat服务器**:Tomcat是一款开源的Servlet容器,用于运行Java Web应用,包括Web服务。 二、创建Web服务 1. *...

Global site tag (gtag.js) - Google Analytics