本文介绍了Mirth Connect:使用JavaScript调用网络服务的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用apache轴库(应该与Mirth一起部署)从Mirth Channel转换器javascript调用Web服务.我尝试使用以下Java脚本,但是它不起作用:

I'm trying to call a web service from a Mirth Channel transformer javascript using apache axis library (which it's supposed to be deployed with Mirth).I've tried using the following java script, but it does not work:

/*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');

有什么主意吗?

谢谢.

推荐答案

答案:

  • 使用Axis WDSL2Jave工具自动生成服务客户端代理
  • 使用自动生成的类构建JAR存档
  • 将JAR文件复制到%MirthInstallPath%/lib/custom
  • 重新启动Mirth服务
  • 使用以下代码创建一个转换器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

仅此而已.

这篇关于Mirth Connect:使用JavaScript调用网络服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-17 20:38