移动MISC系统sp升级开发

来源:互联网 发布:speedgrade什么软件 编辑:程序博客网 时间:2024/04/28 19:05
移动MISC系统sp升级开发

----------------------------------------------------------------

/**

 *   版权:  石太祥 [ E.Alpha ]   所有 ;

 *

 *   email:     ealpha(AT)msn(DOT)com  ;

 *   msn: ealpha(AT)msn(DOT)com  ;

 *   QQ  : 9690501

 *

 *  所有转载请注明本信息!

 */

----------------------------------------------------------------

 

 

说明 : 系统采用AXIS,如果无axis知识,建议可以到IBM开发者上搜索相关 AXIS 文档浏览

 

—————————————————————————————————————

 

1、    配置好AXIS

2、    wsdl 文件 copy   /TOMCAT_HOME/webapps/axis/WEB-INF

 

Wsdl 文件由于MISC提供的不能生成 header ;经过修改以后的新的WSDL文件为:

 

<definitions xmlns:ws="http://www.monternet.com/dsmp/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.ort/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:dsmp="http://www.monternet.com/dsmp/schemas/" targetNamespace="http://www.monternet.com/dsmp/wsdl/">

<types>

  <schema targetNamespace="http://www.monternet.com/dsmp/schemas/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified" attributeFormDefault="unqualified">

   <complexType name="address_info_schema">

    <sequence>

     <element name="DeviceType" type="xsd:integer"/>

     <element name="DeviceID" type="xsd:string"/>

    </sequence>

   </complexType>

   <complexType name="user_id_schema">

    <sequence>

     <element name="UserIDType" type="xsd:integer"/>

     <element name="MSISDN" type="xsd:string"/>

     <element name="PseudoCode" type="xsd:base64Binary"/>

    </sequence>

   </complexType>

   <!-- request & response -->

  

   <element name="TransactionID" type="xsd:string"/>

  

  

   <element name="SyncOrderRelationReq" type="dsmp:SyncOrderRelationReqType"/>

   <complexType name="SyncOrderRelationReqType">

    <sequence>

     <element name="Version" type="xsd:string"/>

     <element name="MsgType" type="xsd:string"/>

     <element name="Send_Address" type="dsmp:address_info_schema"/>

     <element name="Dest_Address" type="dsmp:address_info_schema"/>

     <element name="FeeUser_ID" type="dsmp:user_id_schema"/>

     <element name="DestUser_ID" type="dsmp:user_id_schema"/>

     <element name="LinkID" type="xsd:string" minOccurs="0"/>

     <element name="ActionID" type="xsd:integer"/>

     <element name="ActionReasonID" type="xsd:integer"/>

     <element name="SPID" type="xsd:string" minOccurs="0"/>

     <element name="SPServiceID" type="xsd:string"/>

     <element name="AccessMode" type="xsd:integer" minOccurs="0"/>

     <element name="FeatureStr" type="xsd:base64Binary" minOccurs="0"/>

    </sequence>

   </complexType>

   <element name="SyncOrderRelationResp" type="dsmp:SyncOrderRelationRespType"/>

   <complexType name="SyncOrderRelationRespType">

    <sequence>

     <element name="Version" type="xsd:string"/>

     <element name="MsgType" type="xsd:string"/>

     <element name="hRet" type="xsd:integer"/>

    </sequence>

   </complexType>

  </schema>

</types>

 

 

<message name="ma.SyncOrderRelationReq">

  <part name="SyncOrderRelationInput" element="dsmp:SyncOrderRelationReq"/>

  <part name="TransactionIDInput" element="dsmp:TransactionID"/>

</message>

 

<message name="ma.SyncOrderRelationResp">

  <part name="SyncOrderRelationOutput" element="dsmp:SyncOrderRelationResp"/>

  <part name="TransactionIDOut" element="dsmp:TransactionID"/>

</message>

 

<portType name="maPort">

  <operation name="SyncOrderRelation">

   <input message="ws:ma.SyncOrderRelationReq"/>

   <output message="ws:ma.SyncOrderRelationResp"/>

  </operation>

</portType>

 

<binding name="maPortBinding" type="ws:maPort">

  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

  <operation name="SyncOrderRelation">

   <soap:operation  style="document" soapAction="sim.SyncOrderRelation"/>

   <input>   

    <soap:body use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.monternet.com/dsmp/schemas/"/>

    <soap:header  message="ws:ma.SyncOrderRelationReq" part="TransactionIDInput" use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding" namespace="http://www.w3.org/2001/XMLSchema"/>   

   </input>

   <output>

    <soap:body use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.monternet.com/dsmp/schemas/"/>

    <soap:header style="document"  message="ws:ma.SyncOrderRelationResp" part="TransactionIDOut" use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding" namespace="http://www.w3.org/2001/XMLSchema"/>

   </output>

  </operation>

</binding>

<service name="dsmp">

  <port name="maPort" binding="ws:maPortBinding">

   <soap:address location="http://localhost/axis/services/maPort"/>

  </port>

</service>

</definitions>

 

 

3、    生成客户端,服务端代码:
使用命令:Java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java --server-side --skeletonDeploy true dsmp.wsdl

4、    deploy.wsdd              用来发布service
MaPortBindingImpl.java   
服务短编程使用

MaPortBindingStub.java   
客户端编程使用

5、    建立服务:

使用命令 java org.apache.axis.utils.Admin client|server deploy.wsdd

 

建立服务端和客户端的服务。

 

6、    编写客户端测试代码:

 

package com.smsmail.misc;

 

import java.math.BigInteger;

import java.net.URL;

 

import javax.xml.rpc.holders.StringHolder;

 

import com.monternet.www.dsmp.schemas.Address_info_schema;

import com.monternet.www.dsmp.schemas.SyncOrderRelationReqType;

import com.monternet.www.dsmp.schemas.SyncOrderRelationRespType;

import com.monternet.www.dsmp.schemas.User_id_schema;

import com.monternet.www.dsmp.schemas.holders.SyncOrderRelationRespTypeHolder;

import com.monternet.www.dsmp.wsdl.MaPortBindingStub;

 

/*

 * 移动MISC系统升级,SP客户端测试环境

 */

public class ClientTest {

 

    private static BigInteger msg;

 

    public static void main(String[] args) {

       

        MaPortBindingStub binding = null;

        SyncOrderRelationRespType value = null;

        SyncOrderRelationReqType req=new SyncOrderRelationReqType();

        SyncOrderRelationRespTypeHolder syncOrderRelationOutput = new SyncOrderRelationRespTypeHolder();

        StringHolder transactionIDOut = new StringHolder();

       

       

        /**

         *

         *   TransactionID 由返回的provision包里面的对应字段来决定,然后放到响应包里面的对应字段

         *   TransactionID不是sp生成的

         *

         */

       

       

        // 根据 -  数据业务管理平台接口规范-1.5.1 定义。可以参考schemas 下的类文件      

        BigInteger devicetypeSend_Address = BigInteger.valueOf(201);

        BigInteger devicetypeDest_Address = BigInteger.valueOf(0);

        BigInteger UserIDTypeFeeUser_ID = BigInteger.valueOf(1);

        BigInteger ActionID = BigInteger.valueOf(1);

        BigInteger ActionReasonID = BigInteger.valueOf(1);

        BigInteger AccessMode = BigInteger.valueOf(3);

       

        // 对于一些固定的值来决定

       

        Address_info_schema Send_Address = new Address_info_schema();

        Send_Address.setDeviceID("dev");

        Send_Address.setDeviceType(devicetypeSend_Address);

       

        Address_info_schema Dest_Address = new Address_info_schema();

        Dest_Address.setDeviceID("0011");

        Dest_Address.setDeviceType(devicetypeDest_Address);

       

       

        User_id_schema FeeUser_ID = new User_id_schema();

        FeeUser_ID.setMSISDN("13817931870");

        FeeUser_ID.setUserIDType(UserIDTypeFeeUser_ID);

 

        User_id_schema DestUser_ID = new User_id_schema();

        DestUser_ID.setMSISDN("13817931870");

        DestUser_ID.setUserIDType(UserIDTypeFeeUser_ID);

 

        /**

         *  给请求赋值

         */

       

        req.setMsgType("SubscribeServiceReq");     

        req.setVersion("1.5.0");

        req.setSend_Address(Send_Address);

        req.setDest_Address(Dest_Address);

        req.setFeeUser_ID(FeeUser_ID);

        req.setDestUser_ID(DestUser_ID);

        req.setLinkID("");   // 可选

        req.setActionID(ActionID);

        req.setActionReasonID(ActionReasonID);

        req.setSPID("800001");

        req.setSPServiceID("+021");

        req.setAccessMode(AccessMode);     

       

        try {

            URL endpoint = new URL("http://localhost:808/axis/services/maPort");  //详细见说明1 和说明 2  说明3

            binding = (MaPortBindingStub) new com.monternet.www.dsmp.wsdl.DsmpLocator().getmaPort(endpoint);

             binding.setTimeout(60000);

            

            binding.syncOrderRelation(req,"27",syncOrderRelationOutput,transactionIDOut);

           

 

        }

        catch (Exception e) { 

            e.printStackTrace();

        }

       

    }

   

}

 

 

 

 

说明1、 该URL是在真实环境中提交给 MISC平台的地址;

 

说明2、 该URL指向本地的服务地址,一定要保证 访问该URL时候提示为:

maPort

Hi there, this is an AXIS service!

Perhaps there will be a form for invoking the service here...

 

说明3 、本出URL的地址中端口为 808 是因为在 TCPMonitor中设置 监听端口转发为 808 如果不开启TCPMonitor 则直接设置为8080

 

 

7、    编写服务短返回代码

 

        // 添加返回

        SyncOrderRelationRespType ret = new SyncOrderRelationRespType();

       

        BigInteger hret = BigInteger.valueOf(0);

       

        ret.setMsgType("SubscribeServiceResp");

        ret.setHRet(hret);

        ret.setVersion("1.5.0");

        //return null;

 

8、    问题解决:

 

 

n         由于每次请求的SOAP 报文命名空间问题。

采用修改AXIS 1.2版本的源文件:源文件为    (该文件由网友提供,无源代码)

 

n         包含 xmls=““ 问题

 

修改 SerializationContextImpl.java 文件,按照如下修改

 

public String qName2String(QName qName, boolean writeNS)
    {
        String prefix = null;
        String namespaceURI = qName.getNamespaceURI();

        if (namespaceURI.length() == 0) {
            if (writeNS) {
                // If this is unqualified (i.e. prefix ""), set the default
                // namespace to ""
                String defaultNS = nsStack.getNamespaceURI("");
                if (defaultNS != null && defaultNS.length() > 0) {
        
            //registerPrefixForURI("", "");

                }
            }
        } else {
            prefix = getPrefixForURI(namespaceURI);
        }

        if ((prefix == null) || (prefix.length() == 0))
           return qName.getLocalPart();

        StringBuffer sb = new StringBuffer(prefix);
        sb.append(':');
        sb.append(qName.getLocalPart());
        return sb.toString();
    }

 

 


[点击此处收藏本文]
发表于 2004年08月14日 11:59 PM

typez 发表于2004-08-18 5:05 PM  
把wsdl文件里的 elementFormDefault="unqualified" 和attributeFormDefault="unqualified"都改成qualified就不
会出现xmlns=""的问题了,不需要改axis源代码

无名 发表于2004-09-02 2:13 PM  
不错的咚咚,我是用Axis1.2Beta版做的 正向订制,反响定制,反向取消都做在一起的,希望有朋友跟我一起讨论 QQ:64732070
msn:hjjiang888@hotmail.com

无名 发表于2004-09-02 2:23 PM  
String endpoint = "http://localhost:8880/axis/services/maPort?wsdl";
//设置需要调用的函数名称
SyncOrderRelationReqType req = new SyncOrderRelationReqType();
String version = "1.5.0";
String msgType = "SyncOrderRelationReq";
Address_info_schema send_Address = new Address_info_schema();
send_Address.setDeviceType(new BigInteger("201"));
send_Address.setDeviceID("SZ12345");

Address_info_schema dest_Address = new Address_info_schema();
dest_Address.setDeviceType(new BigInteger("11"));
dest_Address.setDeviceID("BJ88888");

User_id_schema feeUser_ID = new User_id_schema();
feeUser_ID.setUserIDType(new BigInteger("1"));
feeUser_ID.setMSISDN("13651412464");
feeUser_ID.setPseudoCode("011".getBytes());

User_id_schema destUser_ID = new User_id_schema();
destUser_ID.setUserIDType(new BigInteger("2"));
destUser_ID.setMSISDN("13662667675");
destUser_ID.setPseudoCode("012".getBytes());

String linkID = "ForLulu";
BigInteger actionID = new BigInteger("2");
BigInteger actionReasonID = new BigInteger("7");
String SPID = "922124";
String SPServiceID = "-MASTER";
BigInteger accessMode = new BigInteger("3");
//长号码和指令内容之间将以空格符分隔
byte[] featureStr = "093338 T0001".getBytes();
req.setVersion(version);
req.setMsgType(msgType);
req.setSend_Address(send_Address);
req.setDest_Address(dest_Address);
req.setFeeUser_ID(feeUser_ID);
req.setDestUser_ID(destUser_ID);
req.setLinkID(linkID);
req.setActionID(actionID);
req.setActionReasonID(actionReasonID);
req.setSPID(SPID);
req.setSPServiceID(SPServiceID);
req.setAccessMode(accessMode);
req.setFeatureStr(featureStr);

MaPortBindingStub stub = new MaPortBindingStub(new java.net.URL(
endpoint), (javax.xml.rpc.Service)null);

SyncOrderRelationRespType resp;
SyncOrderRelationRespTypeHolder syncOrderRelationOutput = new
SyncOrderRelationRespTypeHolder();
StringHolder transactionIDOut = new javax.xml.rpc.holders.
StringHolder();

stub.syncOrderRelation(req,
"110000000001",
syncOrderRelationOutput,
transactionIDOut);

resp = syncOrderRelationOutput.value;
String tranID = transactionIDOut.value;

System.out.println(resp.getVersion());
System.out.println(resp.getMsgType());
System.out.println(resp.getHRet());

无名 发表于2004-09-02 2:40 PM  
这是业务处理
public void syncOrderRelation(com.monternet.www.dsmp.schemas.
SyncOrderRelationReqType
syncOrderRelationInput,
java.lang.String transactionIDorderInput,
com.monternet.www.dsmp.schemas.holders.
SyncOrderRelationRespTypeHolder
syncOrderRelationOutput,
javax.xml.rpc.holders.StringHolder
transactionIDorderOut) throws java.rmi.
RemoteException {
//syncOrderRelationOutput.value = new com.monternet.www.dsmp.schemas.SyncOrderRelationRespType();
//transactionIDorderOut.value = new java.lang.String();

String ver = syncOrderRelationInput.getVersion();
String msgType = "SyncOrderRelationResp"; //syncOrderRelationInput.getMsgType();

SyncOrderRelationRespType resp = new SyncOrderRelationRespType();
resp.setVersion(ver);
resp.setMsgType(msgType);

/**
* 是否成功的标志
*
* 所有的业务处理都在这里
* String getHRet(SyncOrderRelationReqType req)
*/
String checkhret = getHRet(syncOrderRelationInput);
java.math.BigInteger hret = new java.math.BigInteger(checkhret);
resp.setHRet(hret);

syncOrderRelationOutput.value = resp; //new com.monternet.www.dsmp.schemas.SyncOrderRelationRespType();
//该消息编号
transactionIDorderOut.value = transactionIDorderInput; //new java.lang.String();

hunterx 发表于2004-09-07 3:42 PM  
会出现noSoapAction错误是什么原因呢?

Freelunch 发表于2004-09-08 4:18 PM  
请教一个问题:如何在服务处理类中维持一个类似session的环境来保持如数据库等连接?
QQ:397289035
MSN:wujian_light@msn.com

elusiya 发表于2004-09-09 9:33 PM  
发布的时候出错误:
1、java org.apache.axis.utils.Admin client|server deploy.wsdd
-bash: server: command not found
java.lang.IllegalArgumentException: Usage: Admin client|server <xml-file>
at org.apache.axis.utils.Admin.main(Admin.java:306)
2、然后我有如下方式发布:
1)java org.apache.axis.utils.Admin client deploy.wsdd
<?xml version="1.0" encoding="UTF-8"?>
<Admin>Done processing</Admin>
2)java org.apache.axis.utils.Admin server deploy.wsdd
<?xml version="1.0" encoding="UTF-8"?>
<Admin>Done processing</Admin>
可是服务却找不到404
http://localhost:8080/axis/services/maPort

大概是什么回事?请大侠帮忙。
testservice@126.com

elusiya 发表于2004-09-09 9:35 PM  
用如下方式发布:
java org.apache.axis.client.AdminClient deploy.wsdd
<?xml version="1.0" encoding="UTF-8"?>
<Admin>Done processing</Admin>

同样找不到服务

elusiya 发表于2004-09-09 9:36 PM  
但是我发布axis自带的例子没有问题,都正常

junkie 发表于2004-09-10 10:46 AM  
把编译好的class文件放到axis的WEB-INF/classes文件夹下

changsir 发表于2004-09-10 10:54 AM  
例子我测试,从编译到发布结束,一切正常。

java org.apache.axis.utils.Admin client|server deploy.wsdd

作者这里是简略写法,发布的时候应该分成两条命令执行。

java org.apache.axis.utils.Admin client deploy.wsdd

java org.apache.axis.utils.Admin server deploy.wsdd

elusiya 发表于2004-09-11 11:14 PM  
我用两步发布结果还是发布不了,而且没有错误的提示。
java org.apache.axis.utils.Admin client deploy.wsdd
java org.apache.axis.utils.Admin server deploy.wsdd

elusiya 发表于2004-09-12 12:26 AM  
我分两步发布,提示都是
<?xml version="1.0" encoding="UTF-8"?>
<Admin>Done processing</Admin>

但是在服务中还是找不到

niuniu 发表于2004-09-12 3:55 PM  
我用上面的方法发布之后,用client程序做测试,返回的三个值都为空。

无名 发表于2004-09-13 2:36 PM  
调用Apache Axis 1.2Beta 版本API实现
发布:java org.apache.axis.client.AdminClient -p 8000 deploy.wsdd
查看:java org.apache.axis.client.AdminClient -p 8000 list (8000为Tomcat端口)
客户端:java com.monternet.www.dsmp.wsdl.TestClient
具体业务处理类:com.monternet.www.dsmp.wsdl.MaPortBindingImpl
监视http通信:java org.apache.axis.utils.tcpmon [listenPort targetHost targetPort] 访问远程WebService可以设置代理(具体查看Axis User's Guide)

有研究过Axis实现Provision接口的朋友欢迎与我探讨 redgoldjiang@sohu.com 我会把资料整理发布在这里的。

铜板 发表于2004-09-16 6:40 PM  
感谢啊!楼主能不能把反向的程序也贴出来讲解一下,再次感谢!!

kevin 发表于2004-09-22 2:06 PM  
找不到服务的兄弟注意:
java org.apache.axis.utils.Admin client deploy.wsdd
java org.apache.axis.utils.Admin server deploy.wsdd
此两条命令必须在axis的WEB-INF目录下运行,会在当前目录生成server-config.wsdd 和 client-config.wsdd两个文件,如果WEB-INF目录下面已经有server-config.wsdd 文件,你也可以直接从deploy.wsdd中把service一节copy添加到该文件中,然后重新启动tomcat就可以了

cxfei 发表于2004-09-27 5:23 PM  
不好意思,问一个比较弱智的问题:
Addres_info_schema,User_id_schema,SyncOrderRelationReqType,这些类是生成的还是自己编写的啊?
我不大懂为什么你们的命名空间都是:com.monternet.www.dsmp.schemas,而不是本地的。

tonny 发表于2004-09-28 10:04 AM  
我的WSDL2Java功能老是不能用,各位大哥救救我啊!

tonny 发表于2004-09-28 10:28 AM  
下面是抛出的异常:

java.lang.NoClassDefFoundError: org/w3c/dom/Node
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:115)
at org.apache.axis.encoding.ser.SimpleSerializerFactory.class$(SimpleSer
ializerFactory.java:69)
at org.apache.axis.encoding.ser.SimpleSerializerFactory.<init>(SimpleSer
ializerFactory.java:69)
at org.apache.axis.encoding.DefaultTypeMappingImpl.myRegisterSimple(Defa
ultTypeMappingImpl.java:687)
at org.apache.axis.encoding.DefaultTypeMappingImpl.registerSOAPTypes(Def
aultTypeMappingImpl.java:657)
at org.apache.axis.encoding.DefaultTypeMappingImpl.<init>(DefaultTypeMap
pingImpl.java:164)
at org.apache.axis.encoding.DefaultTypeMappingImpl.<init>(DefaultTypeMap
pingImpl.java:130)
at org.apache.axis.encoding.DefaultTypeMappingImpl.getSingleton(DefaultT
ypeMappingImpl.java:124)
at org.apache.axis.wsdl.toJava.Emitter$1.<init>(Emitter.java:524)
at org.apache.axis.wsdl.toJava.Emitter.setTypeMappingVersion(Emitter.jav
a:522)
at org.apache.axis.wsdl.toJava.Emitter.setup(Emitter.java:407)
at org.apache.axis.wsdl.toJava.Emitter.run(Emitter.java:385)
at org.apache.axis.wsdl.gen.WSDL2.run(WSDL2.java:311)
at org.apache.axis.wsdl.WSDL2Java.main(WSDL2Java.java:290)

苦海有边 发表于2004-10-09 8:49 PM  
D:/resin/resin-2.1.13/webapps/axis/WEB-INF>java org.apache.axis.utils.Admin cli
nt deploy.wsdd
log4j:WARN No appenders could be found for logger (org.apache.axis.i18n.Project
esourceBundle).
log4j:WARN Please initialize the log4j system properly.
<?xml version="1.0" encoding="UTF-8"?>
<Admin>Done processing</Admin>

运行时,为什么会如上?

苦海有边 发表于2004-10-09 8:53 PM  
运行
D:/resin/resin-2.1.13/webapps/axis/WEB-INF>Java -Djava.ext.dirs=lib org.apache.a
xis.wsdl.WSDL2Java --server-side --skeletonDeploy true sp.wsdl
提示:
log4j:WARN No appenders could be found for logger (org.apache.axis.i18n.ProjectR
esourceBundle).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" java.lang.NoClassDefFoundError: javax.wsdl.Definition

at org.apache.axis.wsdl.toJava.JavaGeneratorFactory.class$(JavaGenerator
Factory.java:69)
at org.apache.axis.wsdl.toJava.JavaGeneratorFactory.addDefinitionGenerat
ors(JavaGeneratorFactory.java:171)
at org.apache.axis.wsdl.toJava.JavaGeneratorFactory.addGenerators(JavaGe
neratorFactory.java:125)
at org.apache.axis.wsdl.toJava.JavaGeneratorFactory.<init>(JavaGenerator
Factory.java:103)
at org.apache.axis.wsdl.toJava.Emitter.<init>(Emitter.java:139)
at org.apache.axis.wsdl.WSDL2Java.createParser(WSDL2Java.java:197)
at org.apache.axis.wsdl.gen.WSDL2.<init>(WSDL2.java:96)
at org.apache.axis.wsdl.WSDL2Java.<init>(WSDL2Java.java:182)
at org.apache.axis.wsdl.WSDL2Java.main(WSDL2Java.java:347)

addjava 发表于2004-10-10 5:53 PM  
好贴.谢谢楼主
根据上面的wsdl用jb9做这个接口挺不错的.

qiujiu 发表于2004-10-10 9:54 PM  
请问
imort com.monternet.www.dsmp.schemas.Address_info_schema;

import com.monternet.www.dsmp.schemas.SyncOrderRelationReqType;

import com.monternet.www.dsmp.schemas.SyncOrderRelationRespType;
这些包是从那里得到的

Java自由人 发表于2004-10-14 6:01 PM  
为什么我的provision接口做好了,可是用手机测试定购业务的时候就是显示服务器繁忙,偶尔也能通过,我是用直接解析和生成XML的方法,都对了N遍了,数据是没有问题,下面是我回复的数据:
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Header>
<TransactionID xmlns="http://www.monternet.com/dsmp/schemas/">00110324792658</TransactionID>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<SyncOrderRelationResp xmlns="http://www.monternet.com/dsmp/schemas/">
<Version>1.5.0</Version>
<MsgType>SyncOrderRelationResp</MsgType>
<hRet>0</hRet>
</SyncOrderRelationResp>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

TransactionID的值是根据request中的值相等。难道还需要其他方面的设置嘛? 或者是MISC的测试平台的问题?:( 帮帮忙啊

原创粉丝点击