【问题标题】:Mobile First 7.1 SOAP Adapter failed to read responseMobile First 7.1 SOAP 适配器未能读取响应
【发布时间】:2016-02-16 06:19:24
【问题描述】:

我使用了 IBM MobileFirst Studio V7.1 - 服务发现向导选项,并从应用程序 WSDL 文件创建了一个 SOAP 适配器。服务发现过程在 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>

现在,使用 MobileFirst Studio 中的适配器测试选项,正在对话窗口中传递以下 JSON 有效负载

参数:

{"ExecuteFetchAccountInfo_Input":{"Object_spcId":"1-6U8KAR"}}

但是当我调用适配器时出现以下错误

{
   "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": [
   ]
}

当我尝试检查日志文件时。我能够捕获请求和响应。

请求:

[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>

回复:

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

通过查看响应,它会说如果 OK,但它无法读取响应。如果我需要设置一些额外的东西来阅读回复,请帮忙。

【问题讨论】:

  • 尝试在 SOAPUI 或其他工具中测试您的 SOAP 请求。如果它在那里也失败了,那么问题可能出在后端而不是 MobileFirst。
  • 我在 SOAP UI 中试过它工作正常。但是,当尝试通过 Mobile First 中的 SOAP 适配器进行测试时,它会失败

标签: soap ibm-mobilefirst mobilefirst-adapters


【解决方案1】:

原来这里有一个需要修复的缺陷。 APAR 编号为PI67417,可从Fix Central 下载。

应用 iFix 后,您还需要在适配器调用中添加“Accept-Encoding: identity”。那应该可以解决您的问题。如果没有,请告诉我。

【讨论】:

    【解决方案2】:

    由于这在 SOAP UI 中有效,但在适配器中失败,这可能表明存在产品缺陷。请打开一个 IBM PMR 并提供您的文件以供开发团队复制。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-30
      • 2020-12-08
      相关资源
      最近更新 更多