はじめての投稿です。不手際がありましたらご指摘をお願いします。
------
環境は、RHELinux, Apache, CF10-Enterprize.Tomcat,
CFINVOKE WEB Service で外部システムに接続しようとしています。
接続先は .Net SOAP2 です。 CF10 発売前は CFMX6.1 => Java => 先方、とJavaモジュールを挟んで接続していました。
CF10 でやっとJavaモジュールなく、接続しようとしたのですが、「WSDL のサービス要素に指定されているポートが見つかりませんでした。 」とエラーになります。 wsdl:service の port には1つのみnameがあり、CFで名前指定 serviceport しなくてもいいはず。serviceport 指定するとそのようなポート名はない、と。
CFコードは、
<cfinvoke webservice="http://consumer.***.com/***/***Service.svc?wsdl"
method="GetRates"
returnvariable="retInv">
<cfinvokeargument name="request" value="#xmlRequest#" />
</cfinvoke>
method="GetRates" は、wsdl:operation の name値です。
value= は、先方から指定のあったXML書式です。Javaモジュールでは動作しているので間違いはないはずです。
また、Administrator の WEB サービスで、「WEBサービスのバージョンを選択」と「WEBサービスのバージョンを更新」とありますが、1CF で 1つのバージョンなのでしょうか、それともWEBサービス追加ごとに指定できるのでしょうか。
ちなみに、AdminのWEBサービス登録でも上記WSDLはエラーとなり登録できませんでした。ブラウザでは正常にWSDL定義が表示されます。
ふと思うのですが、上記の CFINVOKE では WEBサービスのバージョンは 1 , 2 のどちらで先方へ接続しに行くのでしょうか。
いくつも質問が入ってしまい失礼しました。 分けて質問した方が良かったのでしょうか。
ご存じの方がいらっしゃいましたらお教えください。宜しくお願います。
* Last updated by: IGA on 8/20/2013 @ 5:49 PM *