`
voll588
  • 浏览: 4773 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

jax-ws 客户端动态访问小结

 
阅读更多

最近研究java6自带的webservice包(jax-ws),一些代码分享下。

 

public static void procWeb() throws Exception{
		QName serviceName = new QName("http://WebXml.com.cn/", "qqOnlineWebService");
		
		//QName for Port As defined in wsdl.
		QName portName = new QName("http://WebXml.com.cn/", "qqOnlineWebServiceSoap");
		
//		//Endpoint Address
		String  endpointAddress = "http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl";
		
		//Create a dynamic Service instance
		Service service = Service.create(serviceName);
		
		service.addPort(portName, SOAPBinding.SOAP11HTTP_BINDING, endpointAddress);  
		
		//Create a dispatch instance
		Dispatch<SOAPMessage> dispatch = 
		   service.createDispatch(portName, SOAPMessage.class, Service.Mode.MESSAGE);
		
		// Use Dispatch as BindingProvider
		BindingProvider bp = (BindingProvider) dispatch;
		
		// Optionally Configure RequestContext to send SOAPAction HTTP Header
		Map<String, Object> rc = bp.getRequestContext();
		rc.put(BindingProvider.SOAPACTION_USE_PROPERTY, Boolean.TRUE);
		rc.put(BindingProvider.SOAPACTION_URI_PROPERTY, "http://WebXml.com.cn/qqCheckOnline");
		
		// Obtain a preconfigured SAAJ MessageFactory
		MessageFactory factory = ((SOAPBinding)bp.getBinding()).getMessageFactory();

		// Create SOAPMessage Request
		SOAPMessage request = factory.createMessage();

		// Request Body
		SOAPBody body = request.getSOAPBody();

		// Compose the soap:Body payload
		QName payloadName =
		   new QName("http://WebXml.com.cn/", "qqCheckOnline");

		SOAPBodyElement payload = body.addBodyElement(payloadName); 

		SOAPElement message = payload.addChildElement("qqCode");

		message.addTextNode("88888");

		// Invoke the endpoint synchronously
		SOAPMessage reply = null;

		try {
			//Invoke Endpoint Operation and read response
			reply = dispatch.invoke(request);
		} catch (WebServiceException wse){
			wse.printStackTrace();
		}

		// process the reply
		SOAPBody bodyRes = reply.getSOAPBody();
		
		SOAPBodyElement nextSoapBodyElement = (SOAPBodyElement)bodyRes.getChildElements().next();              
        SOAPElement soapElement = (SOAPElement)nextSoapBodyElement.getChildElements().next();
		String strmsg = soapElement.getValue();

		System.out.println(strmsg);

	}
 
分享到:
评论
1 楼 LinApex 2014-09-22  
使用不了哦,朋友/// 能不能详细说明一下

相关推荐

    jax-ws webservice demo

    基于jax-ws 实现的web service client和server端的demo程序。 注:如果使用的是 myeclipse 时 server 部署到tomcat 启动的时候会报错 解决办法:找到myeclipse安装目录下的 plugins 目录里 查找 webservices-rt.jar,...

    jax-ws WebService客户端与服务端工程.rar

    jax-ws客户端与服务端工程.rar-------------

    JAX-WS自学笔记

    JAX-WS自学笔记 本人自学JAX-WS笔记和简单例子,文档标题结构如下: JAX-WS使用教程 1、JAX-WS概述 2、创建Web Service 2.1 从java开始 2.1.1 运行wsgen 2.1.2 生成的WSDL和XSD 2.1.3 目录结构 2.2 从WSDL...

    Jax-ws所需要的JAR包

    亲测可用,Jax-ws所需要的JAR包,拷贝到tomcat安装路径的lib里,实现了webservice发布到tomcat,赞!

    MyEclipse8_0中使用 JAX-WS 部署 WebService 实例

    MyEclipse8_0中使用 JAX-WS 部署 WebService 实例 - 外衣 - 博客频道 - CSDN_NET.mht

    JAX-WS 2.2 RI所有相关jar包

    JAX-WS 2.2 RI 所包含的JAR包集合,包含25个JAR包,列表如下: FastInoset.jar gmbal-api-only.jar ha-api.jar javax.annotation.jar javax.mail_1.4.jar jaxb-api.jar jaxb-impl.jar jaxb-xjc.jar jaxws-api...

    metro-jax-ws-master

    The Java API for XML Web Services (JAX-WS) is a Java programming language API for creating web services, particularly SOAP services. JAX-WS is one of the Java XML programming APIs. It's a part of the ...

    pooled-ws-client-test:池化 JAX-WS 客户端示例

    这是一个示例项目,展示了一种利用 Apache Commons Pool 创建和维护 JAX-WS 客户端代理池的方法。 将部署两件事:一个 JAX-WS 端点和一个“客户端”servlet。 调用 servlet 时,它将创建一个代理对象池,并使用该池...

    webService部署tomcat需要的jax-ws jar包

    webService部署tomcat需要的jax-ws 的完整jar包

    JAX-WS_WebService.rar

    JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用

    JAX-WS2.0 API

    JAX-WS2.0 API

    Jax-WS 简单实例

    Jax-WS的简单实例 Jax-WS的简单实例

    一个包含jax-ws和jax-rs的例子(含服务端和客户端)

    NULL 博文链接:https://hwei199.iteye.com/blog/2272572

    使用JAX-WS(JWS)发布WebService

    使用JAX-WS(JWS)发布WebService 使用myeclipse开发java的webservice的两种方式 方式一: (此方式只能作为调试,有以下bug:jdk1.6u17?以下编译器不支持以Endpoint.publish方式发布document方式的soap,必须在...

    jax-ws webservice简单demo

    jax-ws webservice完整demo,包含所有jax-ws 2.2jar包。

    jax-rs jax-ws所需包,亲测可用

    javax.xml.ws.Service 报错需要的包,亲测可以用,直接下载在ide里buildpath一下就可以,四个jar包 ,整合了其他的jar所以配置简单

    JAX-WS开发的文件生成与部署相关全视频过程

    如果基于一个JAX-WS进行WebService开发,有很多教程,但是具体怎么更自动地生成一些文件,实现客户端与服务端的交互,都讲得不大清楚,为了让大家更方便地部署,我将服务端、客户端文件的生成与部署全过程以及测试...

    JAX-WS 2.2 完整jar包

    JAX-WS 2.2 RI 所包含的JAR包集合,包含25个JAR包,列表如下: FastInoset.jar gmbal-api-only.jar ha-api.jar javax.annotation.jar javax.mail_1.4.jar jaxb-api.jar jaxb-impl.jar jaxb-xjc.jar jaxws-api...

    jax-ws 方式发布web Service 后台用Hibernate实现,前端.NET通过引用服务方式实现

    rar中包含整个项目的源码和数据库生成脚本,采用jax-ws发布Web Service服务,支持java客户端和.Net客户端调用,数据库采用oracle10g,里面有创建数据库脚本文件createTable_Oracle10g.sql,由于Hibernate映射表中会...

    JAX-WS Web service

    JAX-WS Web service 开发初步

Global site tag (gtag.js) - Google Analytics