提交了辞职信,工作交接中,闲来无事访问apache的网站,想起来曾一时让我很头疼的webservice,随手写了几行代码,就当练手吧!接下来学习axis2,奔着那个方向去。
这段代码是我在调用电信的服务时的客户端代码,实现下发手机短信的部分代码。重点1.stub方式ws的应用。2.怎么设置soap头。还是那句老话,从知道到不知道是一个很艰苦的过程。
public static void main(String[] args) throws InterruptedException
{
Test test = new Test();
try
{
//URL 调用webservice地址
SendSmsBindingStub service = (SendSmsBindingStub) new SendSmsServiceLocator().getSendSms(new URL("http://1.1.1.1:8080/SendSmsService"));
SOAPHeaderElement header = new SOAPHeaderElement("http://www.chinatelecom.com.cn/schema/ctcc/common/v2_1","RequestSOAPHeader");
SOAPElement soap = null;
soap = header.addChildElement("password");
soap.addTextNode(test.getPassword().toUpperCase());
soap = header.addChildElement("productId");
Node node = doc.selectSingleNode("//cctc/projects/productid[@busiid='"+ busiid +"']");
if(node != null)
soap.addTextNode(node.getText());
else
soap.addTextNode("");
//....................
//设置头
service.setHeader(header);
//因设置不群发,所以去URL的第一个元素
String result = service.sendSms(new URI[0], "senderName", new ChargingInformation(), "message", new SimpleReference());
System.out.println(result);
}
catch (Exception e)
{
e.printStackTrace();
}
}
private String getPassword()
{
//密码为接入网关号+接入密码+10为时间戳后MD5加密
String password = "xxxxxxx" + "yyyyyy" + getTimetemp();
MessageDigest md5 = getMD5();
md5.update(password.getBytes());
byte[] result = md5.digest();
StringBuffer strBuffer = new StringBuffer();
for(int i = 0; i < result.length; i++)
{
String temp = Integer.toHexString(result[i] & 0xff);
if(temp.length() == 1)
strBuffer.append("0");
strBuffer.append(temp);
}
return strBuffer.toString();
}
private SimpleDateFormat sdf = null;
private String getTimetemp()
{
if(sdf == null)
sdf = new SimpleDateFormat("MMddHHmmss");
return sdf.format(new Date(System.currentTimeMillis()));
}
private static MessageDigest getMD5()
{
MessageDigest md5 = null;
try
{
if(md5 == null)
md5 = MessageDigest.getInstance("MD5");
}
catch (NoSuchAlgorithmException e)
{
e.printStackTrace();
}
return md5;
}
分享到:
相关推荐
axis1.4 spring3.0 集成 实现 web service 服务端, axis1.4 客户端认证,授权,访问日志记录,集成spring 解决 PHP 调用web service 无法认证,和解析soap 模板
Java Axis 直接调用webservice 接口工具类, 无需根据wsdl编译客户端,需要axis相关包,测试使用axis 1.4, 附demo引入axis包后直接可以测试;
服务端使用AXIS-1.4作为SOAP引擎。客户端为PHP5.2.9,使用NuSOAP作为SOAP引擎。 服务端 对象类复制代码 代码如下:import java.io.Serializable; public class Person implements Serializable { /** * */ private...
A8 平台提供基于 axis2 1.4 实现的标准 Web service。可以采取多种语言多种方式进行客户端开发。 本指南提供了 Java 和 C#的开发步骤,PHP 建议使用 WSO2 Web Services Framework for PHP 开发。 本指南所有 Java ...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
在对象创建的过程中将被容器调用,onMessage函数方法接收消息参数,将其强制转型为合适的消息类型,同时打印出消息的内容。同时一个mail note将被发送给消息发送者,发送一个e-mail通知给由recipient参数确定的e-...
在对象创建的过程中将被容器调用,onMessage函数方法接收消息参数,将其强制转型为合适的消息类型,同时打印出消息的内容。同时一个mail note将被发送给消息发送者,发送一个e-mail通知给由recipient参数确定的e-...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...
多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...