PB9.0能处理这样的WebService吗

乐不 2012-11-01 05:17:56
<complexType name="requestMessage"> 和包含的 type="xsd:base64Binary" 这种, PB9.0能处理这样的WebService吗?

--------------------------------------------------
?wsdl如下:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://192.168.1.10:8081/nsam-public/services/ediEnterprisesService" xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://192.168.1.10:8081/nsam-public/services/ediEnterprisesService" xmlns:intf="http://192.168.1.10:8081/nsam-public/services/ediEnterprisesService"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns1="RequestMessage"
xmlns:tns2="ResponseMessage"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->
<wsdl:types>
<schema targetNamespace="RequestMessage" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="ResponseMessage"/>
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="requestMessage">
<sequence>
<element name="busKey" nillable="true" type="xsd:string"/>
<element name="cnc" nillable="true" type="xsd:string"/>
<element name="dataType" nillable="true" type="xsd:string"/>
<element name="file" nillable="true" type="xsd:base64Binary"/>
<element name="fileKind" nillable="true" type="xsd:string"/>
<element name="filename" nillable="true" type="xsd:string"/>
<element name="mac" nillable="true" type="xsd:string"/>
<element name="mgj" nillable="true" type="xsd:string"/>
<element name="ownerCode" nillable="true" type="xsd:string"/>
<element name="password" nillable="true" type="xsd:string"/>
<element name="userName" nillable="true" type="xsd:string"/>
<element name="version" nillable="true" type="xsd:string"/>
</sequence>
</complexType>
</schema>
<schema targetNamespace="ResponseMessage" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="RequestMessage"/>
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="responseMessage">
<sequence>
<element name="fileMessage" nillable="true" type="xsd:base64Binary"/>
<element name="messageType" nillable="true" type="xsd:int"/>
<element name="result" nillable="true" type="xsd:int"/>
<element name="tipsMessage" nillable="true" type="xsd:string"/>
</sequence>
</complexType>
</schema>
</wsdl:types>
<wsdl:message name="requestDataRequest">
<wsdl:part name="request" type="tns1:requestMessage"/>
</wsdl:message>
<wsdl:message name="putFileToNsamResponse">
<wsdl:part name="putFileToNsamReturn" type="tns2:responseMessage"/>
</wsdl:message>
<wsdl:message name="activateTransMailResponse">
<wsdl:part name="activateTransMailReturn" type="tns2:responseMessage"/>
</wsdl:message>
<wsdl:message name="putFileToNsamRequest">
<wsdl:part name="request" type="tns1:requestMessage"/>
</wsdl:message>
<wsdl:message name="returnOkAfterGettingRequest">
<wsdl:part name="request" type="tns1:requestMessage"/>
</wsdl:message>
<wsdl:message name="requestDataResponse">
<wsdl:part name="requestDataReturn" type="tns2:responseMessage"/>
</wsdl:message>
<wsdl:message name="getFileFromNsamRequest">
<wsdl:part name="request" type="tns1:requestMessage"/>
</wsdl:message>
<wsdl:message name="getTransMailConfigResponse">
<wsdl:part name="getTransMailConfigReturn" type="tns2:responseMessage"/>
</wsdl:message>
<wsdl:message name="getTransMailConfigRequest">
<wsdl:part name="request" type="tns1:requestMessage"/>
</wsdl:message>
<wsdl:message name="returnOkAfterGettingResponse">
<wsdl:part name="returnOkAfterGettingReturn" type="tns2:responseMessage"/>
</wsdl:message>
<wsdl:message name="getFileFromNsamResponse">
<wsdl:part name="getFileFromNsamReturn" type="tns2:responseMessage"/>
</wsdl:message>
<wsdl:message name="activateTransMailRequest">
<wsdl:part name="request" type="tns1:requestMessage"/>
</wsdl:message>
<wsdl:portType name="EdiEnterprisesService">
<wsdl:operation name="activateTransMail" parameterOrder="request">
<wsdl:input message="impl:activateTransMailRequest" name="activateTransMailRequest"/>
<wsdl:output message="impl:activateTransMailResponse" name="activateTransMailResponse"/>
</wsdl:operation>
...
</wsdl:portType>
<wsdl:binding name="ediEnterprisesServiceSoapBinding" type="impl:EdiEnterprisesService">
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="activateTransMail">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="activateTransMailRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://webservice.nsam.application.customs.gov.cn" use="encoded"/>
</wsdl:input>
<wsdl:output name="activateTransMailResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://192.168.1.10:8081/nsam-public/services/ediEnterprisesService" use="encoded"/>
</wsdl:output>
</wsdl:operation>
....
</wsdl:binding>

<wsdl:service name="EdiEnterprisesServiceService">

<wsdl:port binding="impl:ediEnterprisesServiceSoapBinding" name="ediEnterprisesService">

<wsdlsoap:address location="http://192.168.1.10:8081/nsam-public/services/ediEnterprisesService"/>

</wsdl:port>

</wsdl:service>

</wsdl:definitions>
...全文
1056 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mmhoo 2013-01-12
  • 打赏
  • 举报
回复
不知道啊啊啊
l_chlmh 2012-11-09
  • 打赏
  • 举报
回复
只是用11.5试过,9还真难说。
乐不 2012-11-07
  • 打赏
  • 举报
回复
谁有高效的 BLOB 对象或者文件 转到 base64, 然后再逆向解密回来的 DLL, 不是string 转base64 那种, 请发到 1712728232@qq.com 我刚试了一下leio的PB对象,9.0.3 8836版本的http://download.csdn.net/detail/leio/517452 用是可以用,就是速度太慢了, base64加密一个 51KB大小的zip文件 花了6.45秒,解密花了2.25秒; base64加密一个 191KB大小的zip文件 花了88秒多,解密花了9秒多;
乐不 2012-11-02
  • 打赏
  • 举报
回复
http://www.w3school.com.cn/schema/schema_dtypes_misc.asp

找到这个,

二进制数据类型(Binary Data Types)二进制数据类型用于表达二进制形式的数据。

我们可使用两种二进制数据类型:

base64Binary (Base64 编码的二进制数据)
hexBinary (十六进制编码的二进制数据)

下面是一个关于某个 scheme 中 hexBinary 声明的例子:

<xs:element name="blobsrc" type="xs:hexBinary"/>

blob再转成base64Binary编码

乐不 2012-11-02
  • 打赏
  • 举报
回复
web service 里面的type="xsd:base64Binary"这个字段怎么赋值呢,

是不是把文件(如zip格式压缩文件) 转成blob后 赋值给它?

这个webservice不太好试,有2个字段不知道如何给它赋什么值,
wag_enu 2012-11-01
  • 打赏
  • 举报
回复
行不行用PB9 建一个 Web Service Proxy 试一下就知道了。

662

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder Web 应用
社区管理员
  • Web 应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧