我使用了IBM MobileFirst Studio V7.1 - 服务发现向导选项,并从应用程序WSDL文件创建了SOAP适配器。 Service Discovery过程在MFP Studio中正确创建MobileFirst适配器。 示例消息有效负载如下。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:fet="http://siebel.com/asi/Fetch Account Info">
<soapenv:Body>
<fet:ExecuteFetchAccountInfo_Input>
<fet:Object_spcId>1-6U8KAR</fet:Object_spcId>
</fet:ExecuteFetchAccountInfo_Input>
</soapenv:Body>
</soapenv:Envelope>
&#13;
现在,使用MobileFirst Studio中的适配器测试选项,在对话框窗口中传递以下JSON有效负载
PARAMS:
{"ExecuteFetchAccountInfo_Input":{"Object_spcId":"1-6U8KAR"}}
&#13;
但是当我调用适配器
时,我收到以下错误
{
"errors": [
"Runtime: Failed to read the HTTP response to: \/eai_enu\/start.swe?SWEExtSource=WebService&SWEExtCmd=Execute \njava.io.EOFException: Unexpected end of ZLIB input stream"
],
"info": [
],
"isSuccessful": false,
"warnings": [
]
}
&#13;
当我尝试检查日志文件时。我能够捕获请求和响应。
请求:
[2/16/16 11:27:10:997 IST] 000001ce com.worklight.integration.model.ProcedureInvoker I FWLSE0318I: request:
/eai_enu/start.swe?SWEExtSource=WebService&SWEExtCmd=Execute
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<tns:ExecuteFetchAccountInfo_Input xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://siebel.com/asi/Fetch Account Info" xmlns:xsdLocal1="http://www.siebel.com/xml/Account%20IO" >
<tns:Object_spcId>1-6U8KAR</tns:Object_spcId>
</tns:ExecuteFetchAccountInfo_Input>
</soap:Body>
</soap:Envelope>
&#13;
响应:
response:
OK
Date=Tue, 16 Feb 2016 05:34:35 GMT
Server=Microsoft-IIS/6.0
X-Powered-By=ASP.NET
_charset=UTF-8
cache-control=no-cache, must-revalidate, max-age=0
pragma=no-cache
transfer-encoding=Chunked
content-type=text/xml;charset=UTF-8
[project IBMBankProject]
[2/16/16 11:27:11:000 IST] 000001ce om.worklight.integration.services.impl.DataAccessServiceImpl E FWLSE0099E: An error occurred while invoking procedure [project IBMBankProject]SoapAdapter1/HttpRequestFWLSE0100E: parameters: [project IBMBankProject]
Failed to read the HTTP response to: /eai_enu/start.swe?SWEExtSource=WebService&SWEExtCmd=Execute
java.io.EOFException: Unexpected end of ZLIB input stream
FWLSE0101E: Caused by: [project IBMBankProject]java.lang.RuntimeException: java.io.EOFException: Unexpected end of ZLIB input streamjava.lang.RuntimeException: Failed to read the HTTP response to: /eai_enu/start.swe?SWEExtSource=WebService&SWEExtCmd=Execute
java.io.EOFException: Unexpected end of ZLIB input stream
&#13;
通过查看响应,它表示响应,如果确定但无法读取它。如果我需要设置一些额外的内容来阅读回复,请提供帮助。
答案 0 :(得分:1)
事实证明这里有一个需要修复的缺陷。 APAR号码为PI67417,可以从Fix Central下载。
一旦您应用了iFix,您还需要在适配器调用中添加“Accept-Encoding:identity”。这应该可以解决您的问题。如果不是,请告诉我。
答案 1 :(得分:0)
由于这在SOAP UI中有效,但在适配器中失败,因此可能表示存在产品缺陷。请打开IBM PMR并提供您的文件以供开发团队复制。