Axis1.4调用Cxf发布的webservice服务
2015-07-31 19:17
483 查看
Html代码
webservice服务相关文件如
SheetStateSync.xml
实际调用代码如下
Java代码
import java.rmi.RemoteException;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
public class Client {
public static void main(String[] args) {
String endPoint = "http://10.31.4.45:9000/SheetStateSync";
Service service = new Service();
try {
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endPoint);
call.setOperationName(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "syncSheetState"));
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "serSupplier"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "serCaller"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "callerPwd"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "callTime"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "opDetail"), XMLType.XSD_STRING, ParameterMode.IN);
String returnValue = (String) call.invoke(new Object[] {"boco1","boco1","boco1","boco1", getOpdetail()});
System.out.println(returnValue);
} catch (ServiceException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
}
}
private static String getOpdetail() {
return "<?xml version='1.0' encoding='GBK'?>"
+ "\n<opDetail>"
+ "\n <recordInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>alarmId</fieldEnName>"
+ "\n <fieldChName>网管告警ID</fieldChName>"
+ "\n <fieldContent>BOCO_WNMS_3596995728_2365773550_2810909194_1946027486</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>sheetNo</fieldEnName>"
+ "\n <fieldChName>EOMS工单ID</fieldChName>"
+ "\n <fieldContent>FJ-051-130909-10011</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>sheetStatus</fieldEnName>"
+ "\n <fieldChName>工单状态</fieldChName>"
+ "\n <fieldContent>待受理</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>statusTime</fieldEnName>"
+ "\n <fieldChName>状态时间</fieldChName>"
+ "\n <fieldContent>2012-11-20 03:13:15</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>region_id</fieldEnName>"
+ "\n <fieldChName>地市</fieldChName>"
+ "\n <fieldContent>11156</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>DealMan</fieldEnName>"
+ "\n <fieldChName>当前步骤处理人</fieldChName>"
+ "\n <fieldContent>孙子琪</fieldContent>"
+ "\n </fieldInfo>"
+ "\n </recordInfo>"
+ "\n</opDetail>";
}
}
在服务侧,看到client提交的报文为
Xml代码
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:syncSheetState xmlns:ns1="http://service.eoms.chinamobile.com/SheetStateSync" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<ns1:serSupplier xsi:type="xsd:string">boco1</ns1:serSupplier>
<ns1:serCaller xsi:type="xsd:string">boco1</ns1:serCaller>
<ns1:callerPwd xsi:type="xsd:string">boco1</ns1:callerPwd>
<ns1:callTime xsi:type="xsd:string">boco1</ns1:callTime>
<ns1:opDetail xsi:type="xsd:string"><?xml version='1.0' encoding='GBK'?> <opDetail> <recordInfo> <fieldInfo> <fieldEnName>alarmId</fieldEnName> <fieldChName>网管告警ID</fieldChName> <fieldContent>BOCO_WNMS_3596995728_2365773550_2810909194_1946027486</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>sheetNo</fieldEnName> <fieldChName>EOMS工单ID</fieldChName> <fieldContent>FJ-051-130909-10011</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>sheetStatus</fieldEnName> <fieldChName>工单状态</fieldChName> <fieldContent>待受理</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>statusTime</fieldEnName> <fieldChName>状态时间</fieldChName> <fieldContent>2012-11-20 03:13:15</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>region_id</fieldEnName> <fieldChName>地市</fieldChName> <fieldContent>11156</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>DealMan</fieldEnName> <fieldChName>当前步骤处理人</fieldChName> <fieldContent>孙子琪</fieldContent> </fieldInfo> </recordInfo> </opDetail></ns1:opDetail>
</ns1:syncSheetState>
</soapenv:Body>
</soapenv:Envelope>
webservice服务相关文件如
SheetStateSync.xml
实际调用代码如下
Java代码
import java.rmi.RemoteException;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
public class Client {
public static void main(String[] args) {
String endPoint = "http://10.31.4.45:9000/SheetStateSync";
Service service = new Service();
try {
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endPoint);
call.setOperationName(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "syncSheetState"));
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "serSupplier"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "serCaller"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "callerPwd"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "callTime"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.eoms.chinamobile.com/SheetStateSync", "opDetail"), XMLType.XSD_STRING, ParameterMode.IN);
String returnValue = (String) call.invoke(new Object[] {"boco1","boco1","boco1","boco1", getOpdetail()});
System.out.println(returnValue);
} catch (ServiceException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
}
}
private static String getOpdetail() {
return "<?xml version='1.0' encoding='GBK'?>"
+ "\n<opDetail>"
+ "\n <recordInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>alarmId</fieldEnName>"
+ "\n <fieldChName>网管告警ID</fieldChName>"
+ "\n <fieldContent>BOCO_WNMS_3596995728_2365773550_2810909194_1946027486</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>sheetNo</fieldEnName>"
+ "\n <fieldChName>EOMS工单ID</fieldChName>"
+ "\n <fieldContent>FJ-051-130909-10011</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>sheetStatus</fieldEnName>"
+ "\n <fieldChName>工单状态</fieldChName>"
+ "\n <fieldContent>待受理</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>statusTime</fieldEnName>"
+ "\n <fieldChName>状态时间</fieldChName>"
+ "\n <fieldContent>2012-11-20 03:13:15</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>region_id</fieldEnName>"
+ "\n <fieldChName>地市</fieldChName>"
+ "\n <fieldContent>11156</fieldContent>"
+ "\n </fieldInfo>"
+ "\n <fieldInfo>"
+ "\n <fieldEnName>DealMan</fieldEnName>"
+ "\n <fieldChName>当前步骤处理人</fieldChName>"
+ "\n <fieldContent>孙子琪</fieldContent>"
+ "\n </fieldInfo>"
+ "\n </recordInfo>"
+ "\n</opDetail>";
}
}
在服务侧,看到client提交的报文为
Xml代码
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:syncSheetState xmlns:ns1="http://service.eoms.chinamobile.com/SheetStateSync" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<ns1:serSupplier xsi:type="xsd:string">boco1</ns1:serSupplier>
<ns1:serCaller xsi:type="xsd:string">boco1</ns1:serCaller>
<ns1:callerPwd xsi:type="xsd:string">boco1</ns1:callerPwd>
<ns1:callTime xsi:type="xsd:string">boco1</ns1:callTime>
<ns1:opDetail xsi:type="xsd:string"><?xml version='1.0' encoding='GBK'?> <opDetail> <recordInfo> <fieldInfo> <fieldEnName>alarmId</fieldEnName> <fieldChName>网管告警ID</fieldChName> <fieldContent>BOCO_WNMS_3596995728_2365773550_2810909194_1946027486</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>sheetNo</fieldEnName> <fieldChName>EOMS工单ID</fieldChName> <fieldContent>FJ-051-130909-10011</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>sheetStatus</fieldEnName> <fieldChName>工单状态</fieldChName> <fieldContent>待受理</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>statusTime</fieldEnName> <fieldChName>状态时间</fieldChName> <fieldContent>2012-11-20 03:13:15</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>region_id</fieldEnName> <fieldChName>地市</fieldChName> <fieldContent>11156</fieldContent> </fieldInfo> <fieldInfo> <fieldEnName>DealMan</fieldEnName> <fieldChName>当前步骤处理人</fieldChName> <fieldContent>孙子琪</fieldContent> </fieldInfo> </recordInfo> </opDetail></ns1:opDetail>
</ns1:syncSheetState>
</soapenv:Body>
</soapenv:Envelope>
相关文章推荐
- 基于HTTP Live Streaming(HLS) 搭建在线点播系统
- ACM棋盘问题
- vmware几种网络环境的搭建
- opencv图像金字塔
- 小玩流媒体播放——HLS流媒体点播系统
- hdu 5222
- HDU 4417 Super Mario
- HDU 2665 Kth number
- HDU 5224 Tom and paper
- 信息提示框
- poj-1265 Area
- 计原——脱机运算器实验
- git: reset
- 百度地图定位纠偏
- iOS 判断当前屏幕旋转状态
- 2015 HUAS Summer Contest#2~B
- hdu 1394 Minimum Inversion Number 【线段树求逆序数】
- OpenSSL命令行工具的证书操作
- HDU 5334 Virtual Participation
- 字符串各种数据类型