我需要在xPages中使用webservice客户端。
我发现了一个简单的ws来测试,称为CurrencyConverter。 WSDL在这里:http://www.webservicex.net/CurrencyConvertor.asmx?WSDL
CurrencyConvertor service = new CurrencyConvertor();
CurrencyConvertorSoap msg = service.getCurrencyConvertorSoap();
double rate = msg.conversionRate(Currency.USD,Currency.CZK);
System.out.println(“USD to CZK rate =”+ rate);
效果很好。
然后我想在xPages中使用相同的方法。
值= “#{service.currency}”
你知道吗?它不起作用。它抛出一个带有消息的WebServiceException:class net.webservicex.ConversionRate没有名称为{http://www.webserviceX.NET/} FromCurrency
的属性那么,我做错了什么,还是只是典型的IBM Notes / Domino问题?
编辑:我在Domino 9服务器上创建了一个典型的项目。有人可以检查并尝试一下吗?也许我只是做错了什么。 Here是测试应用程序。
答案 0 :(得分:2)
版本9.0.1已将Apache Axis jar添加回类路径,因此可以使用SSJS创建WS客户端。
要通过java执行此操作,您必须将apache轴jar添加到系统/应用程序类路径,然后从库中调用代码。
答案 1 :(得分:2)
我建议你首先尝试没有托管bean。
Eclipse使用的Java版本可能与Domino java版本不同。 Domino Java版本中可能存在错误(版本已在9.0.1中更新),或者您可能需要为该版本使用不同的wsimport选项(如-p)。
另一种对我有用的方法是使用Apache CXF wsdl2java 。我从Domino 8.5.3开始使用它。我从生成的代码中创建了一个JAR,并从Code / Java-elements中的Java代码调用它。
Here是我的一些经验。