2

Apache 軸ライブラリ (Mirth で展開されることになっている) を使用して、Mirth Channel トランスフォーマー JavaScript から Web サービスを呼び出そうとしています。次の Java スクリプトを使用してみましたが、機能しません。

/*importPackage(java.net);
importPackage(org.apache.axis.client.Call);
importPackage(org.apache.axis.client.Service);
importPackage(javax.xml.namespace.QName);*/

  var endpoint = 'http://tempuri.org/IService1/';
  var service = org.apache.axis.client.Service();
  var call = service.createCall();
  call.setTargetEndpointAddress( new URL(endpoint) );
  call.setOperationName(new QName('http://soapinterop.org/', 'SayHello'));
  var ret = call.invoke('John Doe');

何か案が?

ありがとう。

4

1 に答える 1

3

答え:

  • Axis WDSL2Jave ツールを使用してサービス クライアント プロキシを自動生成する
  • 自動生成されたクラスで JAR アーカイブを構築する
  • %MirthInstallPath%/lib/custom にある JAR ファイルをコピーします。
  • マースサービスを再開する
  • 次のコードを使用してトランスフォーマー JavaScript を作成します (この例では、WS は Service1 と呼ばれ、.NET でコード化されたサンプル WS です)。
var locator = new Service1Locator();
var wsdlURL = new URL('http://localhost:8731/Design_Time_Addresses/HelloWorldWS/Service1'));
var proxy = locator.getBasicHttpBinding_IService1(wsdlURL);
var result = proxy.sayHello("John Doe");
// use result to whatever message mapping you need to perform

それで全部です。

于 2010-02-07T20:01:42.680 に答える