首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

webservice带讯息头的请求写法

2012-11-09 
webservice带消息头的请求写法package org.testimport java.net.MalformedURLExceptionimport java.rmi.

webservice带消息头的请求写法

package org.test;import java.net.MalformedURLException;import java.rmi.RemoteException;import java.text.SimpleDateFormat;import java.util.Date;import javax.xml.rpc.ServiceException;import javax.xml.soap.SOAPException;import org.apache.axis.message.SOAPHeaderElement;import org.apache.axis.types.URI.MalformedURIException;import cn.com.chinatelecom.util.MD5;import cn.com.chinatelecom.www.schema.ctcc.terminal_location.v2_1.LocationInfo;import cn.com.chinatelecom.www.wsdl.ctcc.terminal_location.v2_1._interface.TerminalLocation;import cn.com.chinatelecom.www.wsdl.ctcc.terminal_location.v2_1.service.TerminalLocationBindingStub;import cn.com.chinatelecom.www.wsdl.ctcc.terminal_location.v2_1.service.TerminalLocationServiceLocator;public class TerminalLocationTest {public LocationInfo getLoc() {String webserviceurl = "http://58.53.194.143:9081/TerminalLocationService";String SPID = "18100152"; // SPID "18100153"; "18100152"String Token = "whtyxsgj"; // 密钥 "9731D853835EF670292F1AFD524AB90C"; "whtyxsgj"String timeStamp = "2010101100";String DestNum = "tel:18986262090"; // 发送号码 "tel:13387559210" "tel:18986262090"//String ProductID = "1350190202012345603"; // 产品编号//String ServiceID = "21位的业务编号,2开头"; // 业务编号//String TimeStamp = dateString(); // 当前时间//String senderName = "10620000"; // 短信主叫号码,在浙江ISAG实际无效,ISAG会读int requestedAccuracy = 300;int acceptableAccuracy = 300;               //http://www.chinatelecom.com.cn/schema/ctcc/common/v2_1SOAPHeaderElement SoapHeader = new SOAPHeaderElement("http://www.chinatelecom.com.cn/schema/ctcc/common/v2_1","RequestSOAPHeader");LocationInfo locInfo = null;try {/* 初始化Web Service Client */TerminalLocationServiceLocator tlsl = new TerminalLocationServiceLocator();tlsl.setTerminalLocationEndpointAddress(webserviceurl);TerminalLocation tl = tlsl.getTerminalLocation(new java.net.URL(webserviceurl));/* 设置SOAP Header */SoapHeader.addChildElement("spId").addTextNode(SPID); // SpIDSoapHeader.addChildElement("timeStamp").addTextNode(timeStamp);String spPwd = (SPID + Token + timeStamp).trim();String md5Encry = MD5.compile(spPwd).toUpperCase();// MD5加密SoapHeader.addChildElement("spPassword").addTextNode(md5Encry);// SoapHeader.addChildElement("FA").addTextNode(DestNum);SoapHeader.addChildElement("OA").addTextNode(DestNum);SoapHeader.addChildElement("multicastMessaging").addTextNode("false");//SoapHeader.addChildElement("productId").addTextNode(ProductID);//SoapHeader.addChildElement("multiFlag").addTextNode("1");//SoapHeader.addChildElement("protoFlag").addTextNode("4");//SoapHeader.addChildElement("cmdId").addTextNode("1");//SoapHeader.addChildElement("updown").addTextNode("1");//SoapHeader.addChildElement("dlgIndex").addTextNode("-1");//SoapHeader.addChildElement("ReqId").addTextNode("1918010D100917090943000477E");//SoapHeader.addChildElement("SpIp").addTextNode("58.53.194.148");//SoapHeader.addChildElement("scsId").addTextNode("1222");//SoapHeader.addChildElement("multiAll").addTextNode("1");//SoapHeader.addChildElement("multiCur").addTextNode("1");//SoapHeader.addChildElement("sp_flux").addTextNode("1");//SoapHeader.addChildElement("app_flux").addTextNode("1");((TerminalLocationBindingStub) tl).setHeader(SoapHeader); // 添加SOAP头/* 设置被叫号码 */org.apache.axis.types.URI address = new org.apache.axis.types.URI();address = new org.apache.axis.types.URI(DestNum);/* 发送短信 */System.out.println("starting getLoc>>>>>>>>>>>>>>>>>>");locInfo = tl.getLocation(address, requestedAccuracy,acceptableAccuracy);System.out.println("ending getLoc>>>>>>>>>>>>>>>>>>");System.out.println("Latitude: " + locInfo.getLatitude() + "\n"+ "Longitude: " + locInfo.getLongitude());} catch (cn.com.chinatelecom.www.schema.ctcc.common.v2_1.ServiceException e) {// 鉴权失败System.out.println("ServiceException is happened>>>>>>>");System.out.println("MessageId:" + e.getMessageId());System.out.println("Text:" + e.getText());//String[] variables = e.getVariables();//for (int i = 0; i < variables.length; i++) {//System.out.println("Variable:" + variables[i]);//}} catch (cn.com.chinatelecom.www.schema.ctcc.common.v2_1.PolicyException e) {System.out.println("PolicyException is happened>>>>>>>");System.out.println("MessageId:" + e.getMessageId());System.out.println("Text:" + e.getText());e.printStackTrace();//String[] variables = e.getVariables();//for (int i = 0; i < variables.length; i++) {//System.out.println("Variable:" + variables[i]);//}} catch (MalformedURLException e) {e.printStackTrace();} catch (ServiceException e) {e.printStackTrace();} catch (SOAPException e) {e.printStackTrace();} catch (MalformedURIException e) {e.printStackTrace();} catch (RemoteException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();System.out.println("Text:" + e.getMessage());}return locInfo;}private static String dateString() {SimpleDateFormat sdf = new SimpleDateFormat("MMddHHmmss");return sdf.format(new Date());}private static String getTimeStamp() {SimpleDateFormat sdf = new SimpleDateFormat("MMDDHHMMSS");return sdf.format(new Date());}public static void main(String[] args) {new TerminalLocationTest().getLoc();//System.out.println(getTimeStamp());//System.out.println(dateString());}}

?

热点排行