集成SOAP和VXML

时间:2009-11-04 20:49:02

标签: web-services jsp soap axis

我正在为VXML应用编写一个允许访问SOAP服务的界面。
由于尝试使用javascript进行SOAP调用以及VXML限制所固有的困难,因为外部资源调用几乎仅限于HTTP个请求,{{1} }和GET

我设计了一个java servlet,它将充当POST应用程序的服务提供者。它可以使用参数来调用此servlet,这些参数指示Web服务类型,要调用的方法名称以及传递给它的参数。然后,servlet进行适当的Web服务调用,并在标准化的VXML文档响应中返回响应。

问题是我严重低估了VXML的真实难度。我以为我可以简单地构建soap调用并在java中执行它,但是它对我这样看起来更复杂,需要像SOAP这样的东西。

我在某处读到Apache Axis2的听众可能是Axis,这听起来很像我现在所做的。 我在这里重新发明轮子了吗? 对于我如何更好地做到这一点有什么建议吗?
我现在非常投入到我现在这样做的方式,因此非常容易接受完成HTTP servlets调用并处理来自SOAP的响应的简单方法。

编辑 - 在接受了此处的建议后,我进一步深入了解jsp servlet
事实证明,Axis是Apache的第三代Axis2。不幸的是,经过广泛搜索后,我找不到可以下载原始Apache SOAP实现的单一地方。
我可能不在乎:

A)Apache SOAP可以让我整合一些Axisjars     进入独立的jsps应用

B)一切......我的意思是到目前为止所做的一切都已经完成了     来自WAR的例子(我正在使用的书,我的代码     到目前为止写的......一切)。

所以我想更多地思考...嘿,ApacheSOAP必须有某种独立的库,只需要让我做一个单独的简单Java调用并解析结果。
但不,没有这样的运气! 显然,如果你想使用SOAPJava,你要么拥有巨大且难以理解的厚而复杂的轴,要么......你从头开始推出自己的肥皂实施方案。我对此很感兴趣。我不明白为什么肥皂是如此美妙,因为我花了很多时间来尝试从SOAP获得一个简单的hello world请求。

1 个答案:

答案 0 :(得分:2)

Axis这样的库肯定是解决方案,您不想尝试自己构建/解析SOAP消息。

使用wsdl2javaanother linkanother)来创建可以调用web services的客户端代理。这将生成一堆Java代码,您可以从代码中调用这些代码,然后Axis将处理您的参数打包到XML消息中,将其通过网络发送到服务器,对反应进行反序列化等。