Mirth Connect: JavaScript для вызова веб-службы - PullRequest
2 голосов
/ 27 января 2010

Я пытаюсь вызвать веб-сервис из javascript преобразователя Mirth Channel, используя библиотеку оси Apache (которую предполагается развернуть с Mirth) Я пытался использовать следующий сценарий 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');

Есть идеи?

Спасибо.

1 Ответ

3 голосов
/ 07 февраля 2010

Ответ:

  • Автоматическая генерация прокси клиента службы с помощью инструмента Axis WDSL2Jave
  • Сборка JAR-архива с автоматически сгенерированными классами
  • Скопируйте файл JAR в% MirthInstallPath% / lib / custom
  • Перезапустить службу Mirth
  • Создайте преобразователь JavaScript с помощью следующего кода (в этом примере WS называется Service1, пример WS с кодом .NET):
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

Вот и все.

...