- 浏览: 281121 次
- 性别:
- 来自: 西安
文章分类
最新评论
-
1339344944:
czb6788782 写道亲,你这Global类能给一份么
解压tar.gz文件包 -
牧佑叔叔:
[size=small][/size]u;8i
Mybatis实现条件查询 -
牧佑叔叔:
Mybatis实现条件查询 -
简妮3:
亲们 想问下 定时任务在启动的时候可以传参数么?
java 定时器几种方式 -
czb6788782:
亲,你这Global类能给一份么
解压tar.gz文件包
客户端代码:
try { // 创建连接对象并呼叫AP SOAPConnection conn = SOAPConnectionFactory.newInstance().createConnection(); SOAPMessage resMsg = conn.call(reqMsg, apUrl); // 获取AP的响应消息 String msg = ""; if (null == resMsg) { msg = getResponse(servletContext, currOperaId, 0); } else { // 接收对方返回的SOAPMessage对象并转成字符串 Document doc = resMsg.getSOAPPart().getEnvelope().getOwnerDocument(); StringWriter output = new StringWriter(); TransformerFactory.newInstance() .newTransformer() .transform(new DOMSource(doc), new StreamResult(output)); msg = output.toString(); } // 移除servlet上下文中存储的消息 servletContext.removeAttribute(id); return msg; } catch (Exception ex) { logger.error(Global.LOG_EXCEPTION_NAME, ex); return ""; }
服务器端代码:
/** * <创建UploadResponse事件的字符串> * <功能详细描述> * @param bool 1成功0失败 * @return * @see [类、类#方法、类#成员] */ public static String createUploadResponse(int bool) { StringBuffer sb = new StringBuffer(); sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); sb.append("<SOAP-ENV:Envelope xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:SOAP-ENC=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:cwmp=\"urn:dslforum-org:cwmp-1-1\">"); sb.append("<SOAP-ENV:Header><cwmp:ID>1484</cwmp:ID></SOAP-ENV:Header>"); sb.append("<SOAP-ENV:Body SOAP-ENV:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">"); if (1 == bool) { sb.append("<cwmp:UploadResponse><Status>0</Status><StartTime>"); sb.append(Global.getCurrentTime()); sb.append("</StartTime><CompleteTime>"); sb.append(Global.getCurrentTime()); sb.append("</CompleteTime>"); sb.append("</cwmp:UploadResponse>"); } else { sb.append("<SOAP-ENV:Fault><faultcode>Client</faultcode><faultstring>CWMP fault</faultstring>"); sb.append("<detail><cwmp:Fault><FaultCode>9011</FaultCode><FaultString>Upload failure</FaultString></cwmp:Fault>"); sb.append("</detail></SOAP-ENV:Fault>"); } sb.append("</SOAP-ENV:Body></SOAP-ENV:Envelope>"); return sb.toString(); }
/** * <把soap字符串格式化为SOAPMessage> * <功能详细描述> * @param soapString * @return * @see [类、类#方法、类#成员] */ public static SOAPMessage formartSoapString(String soapString) { MessageFactory msgFactory; try { msgFactory = MessageFactory.newInstance(); SOAPMessage reqMsg = msgFactory.createMessage(new MimeHeaders(), new ByteArrayInputStream(soapString.getBytes(Charset.forName("UTF-8")))); reqMsg.saveChanges(); return reqMsg; } catch (Exception e) { logger.error(EXCEPTION_NAME, e); return null; } }
发表评论
-
java 单例模式详解
2013-07-01 18:09 798概念: java中单例 ... -
java反射详解
2013-06-04 12:17 241151、通过一个对象获得完整的包名和类名 package R ... -
dom4j修改xml文件
2013-05-22 21:12 2265import java.io.File; import j ... -
request的getRemoteAddr()和getRemoteHost()方法有什么区别?
2013-02-20 16:50 1977request.getRemoteHost()为什么得到的 ... -
配置log4j单独显示指定类(包)下的日志信息
2013-02-20 10:22 2414配置log4j单独显示指定类(包)下的日志信息 -
解压tar.gz文件包
2013-01-26 17:00 8148import java.io.BufferedInputSt ... -
压缩解压zip文件包
2013-01-26 16:58 922import java.io.*; import or ... -
把汉字转换成byte数组,然后再把byte数组转换成汉字
2012-11-08 20:45 12754/** * <把字符串转换成字节数组然 ... -
HTTP状态码大全(备忘)
2012-10-24 21:12 897"100" : Continue &quo ... -
Spring启动后,立即执行需要的操作
2012-07-26 21:37 21869Spring 配置文件: <bean id=" ... -
spring启动后,立即执行需要的操作
2012-07-26 21:13 14051、在需要进行操作的bean的xml定义中加上init-met ... -
ServletContextAware接口
2012-07-26 21:10 1071在Spring中,凡是实现ServletContextAwar ... -
用户登录锁定后异常退出
2012-07-26 21:08 1231应用场景: 当用户登录时在被锁定状态下异常退出,做一下处理: ... -
用户登录
2012-07-26 20:43 1065本段代码的前提是:同一用户只能在一处登录并且同一session ... -
spring定时器的创建和配置
2012-07-17 20:30 9251、创建业务处理类 public class Palp ... -
手动利用spring提供的quartz创建定时器
2012-07-17 20:25 881/** * <创建定时器> ... -
操作日期加减方法
2012-07-17 20:23 811操作日期加减方法: public static void ... -
Spring MVC实现文件上传
2012-07-16 17:16 4042@Override public String Up ... -
模拟HTTPClient发送消息到服务器
2012-07-16 14:53 1901// 存储服务器的响应消息 String r ... -
上传文件过滤类
2012-07-16 14:52 1017package com.mvc.interceptor; ...
相关推荐
标题中的“利用jdk web服务api实现,这里使用基于 SOAP message 的 Web 服务”指的是使用Java开发Web服务,特别是基于SOAP(Simple Object Access Protocol)的消息传递协议。SOAP是一种用于交换结构化和类型化信息...
Web服务是一种基于互联网的软件组件,它使用标准的XML(可扩展标记语言)进行数据交换,通常采用SOAP(简单对象访问协议)作为消息传输协议,并通过WSDL(Web服务描述语言)来描述服务接口。Java Web服务通常使用JAX...
9. **Web Services**:理解SOAP和RESTful两种Web服务的原理,使用JAX-WS和JAX-RS创建和调用Web服务。 10. **Spring框架**:Spring是Java Web开发中的主流框架,提供了依赖注入、AOP(面向切面编程)、数据访问、...
8. **JMS(Java Message Service)**:消息传递接口,用于异步通信,可能包含发布/订阅和点对点的消息传递示例。 9. **Web服务**:如SOAP(Simple Object Access Protocol)和RESTful服务的创建和调用,可能是通过...
9. **Struts、JSF(JavaServer Faces)**:这两个是Java Web的MVC框架,分别提供了不同的方法来组织和控制Web应用的逻辑。 10. **Web服务**:包括SOAP(Simple Object Access Protocol)和REST(Representational ...
SOAP消息通常包含一个Header和一个Body,用于传递元数据和实际业务数据。DOM4J是一个强大的Java库,用于处理XML文档,包括读取、写入、修改和解析。本篇文章将深入探讨如何利用DOM4J解析SOAP消息中的元素,以便在...
通过以上步骤,你可以成功地创建和发布一个Java版的定制Web服务,无论是RPC还是Message风格,都能有效地传递自定义对象。这使得开发者能够轻松地实现跨平台、跨语言的数据交换,促进了系统的集成和扩展。
2. **SOAPPart和SOAPEnvelope**:`SOAPMessage`对象包含一个`SOAPPart`,它是整个SOAP消息的容器。`SOAPPart`又包含一个`SOAPEnvelope`,表示SOAP消息的XML结构。 3. **SOAPHeader和SOAPBody**:`SOAPEnvelope`对象...
总结来说,Java的WebService支持涵盖了从设计、开发到部署的全过程,涉及了CXF和Axis这样的Web服务框架,以及WSDL和SOAP这两个关键的通信规范。理解并掌握这些知识,对于构建和集成跨平台的分布式系统至关重要。
总结起来,AXIS2 RCP/literal样式中的两种MESSAGE定义方式对于开发和调试SOAP Web服务客户端至关重要。硬编码XML字符串适用于简单场景,而JOM更适合处理复杂的业务逻辑和数据结构。TCPMon作为一个实用的辅助工具,...
总的来说,SAAJ和JAXM为Java开发者提供了强大的工具,以便在Web服务环境中创建高效的SOAP客户端和服务,处理复杂的XML消息传递需求。理解这两个API的工作原理及其交互方式,是构建和维护高质量的SOAP应用程序的关键...
Java调用Web Service是开发过程中常见的一项任务,主要用于不同系统间的接口交互,实现服务的消费。本示例提供了一个完整的Java调用Web Service的源码Demo,名为`CallWebServiceClientDemo`,它可以帮助开发者理解并...
6. **Web服务**:Java EE支持SOAP和RESTful两种类型的Web服务。SOAP(Simple Object Access Protocol)基于XML,适合于需要强类型和契约的场景;REST(Representational State Transfer)则更加轻量级,基于HTTP协议...
6. **Web服务**:Java服务器高级编程还会涵盖SOAP(简单对象访问协议)和RESTful Web服务的实现。JAX-WS和JAX-RS分别是Java用于创建SOAP和RESTful服务的API。 7. **高性能和可伸缩性**:通过负载均衡、集群、缓存...
使用SOAP(Simple Object Access Protocol)或者REST(Representational State Transfer)等协议,Java应用程序可以创建Web服务,实现跨平台、跨语言的进程间通信。 在实际应用中,选择合适的IPC方式取决于具体...
10. **Web服务(Web Services)**:如SOAP(简单对象访问协议)和REST(Representational State Transfer)等,用于不同系统间的通信,实现服务的互操作性。 11. **Tomcat、Jetty等应用服务器**:这些服务器运行和...
3. **调用Web Service方法**:使用客户端对象调用服务的方法,传递必要的参数。例如: ```java Service service = new Service(); MyWebServicePortType port = service.getPort(MyWebServicePortType.class); ...
Web服务允许不同系统间的互操作性,通过SOAP(Simple Object Access Protocol)协议传输XML数据。 了解和掌握上述技术,开发者可以构建高效、可扩展的企业级应用。无论是进行简单的网页开发,还是复杂的分布式系统...