0

(注意:这个问题是在Biostar上交叉发布的)

大家好,

我正在尝试使用curl将 RPC 编码的 SOAP 查询发送到Reactome(一个生物途径数据库):

我想调用 http://www.reactome.org:8080/caBIOWebApp/services/caBIOService?wsdl中定义的远程方法queryPathwaysForReferenceIdentifiers

我创建了以下 SOAP/XML 文件:soap.xml

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema" xmlns:r="http://www.reactome.org:8080/caBIOWebApp/services/caBIOService" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:reactome="http://www.reactome.org/caBIOWebApp/schema">
<SOAP-ENV:Body>
<r:queryPathwaysForReferenceIdentifiers>
<r:referenceIdentifiers>
<soapenc:Array soapenc:arrayType="soapenc:string[3]">
<soapenc:string>Q9Y266</soapenc:string>
<soapenc:string>P17480</soapenc:string>
<soapenc:string>P2048</soapenc:string>
</soapenc:Array>
</r:referenceIdentifiers>
</r:queryPathwaysForReferenceIdentifiers>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

我使用以下命令将其与 curl 一起发送:

curl -d @soap.xml \
      -H "Content-Type: application/soap+xml" \
      -H 'SOAPAction: ""' \
      "http://www.reactome.org:8080/caBIOWebApp/services/caBIOService"

但是响应是空的,而我期望得到一个结果

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">
  <soapenv:Body>
    <ns1:queryPathwaysForReferenceIdentifiersResponse xmlns:ns1="http://www.reactome.org:8080/caBIOWebApp/services/caBIOService" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
      <queryPathwaysForReferenceIdentifiersReturn xmlns:ns2="http://www.reactome.org/caBIOWebApp/schema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" soapenc:arrayType="ns2:Pathway[0]" xsi:type="soapenc:Array"/>
    </ns1:queryPathwaysForReferenceIdentifiersResponse>
  </soapenv:Body>
</soapenv:Envelope>

我的请求中有错误吗?在哪里 ?

非常感谢 !

皮埃尔

4

1 回答 1

0

这个问题在 Biostar 上得到了回答:http: //biostar.stackexchange.com/questions/5511

于 2011-04-12T19:29:12.753 回答