如何在.jsp页面中创建Web服务客户端?

vik*_*ram 10 java jsp web-services weblogic

我为我的Web服务创建了一个WSDL.我想知道如何从我的另一个Web应用程序的jsp页面调用它.

我想从jsp调用web服务..例如,考虑到我有非常简单的Web服务,它会在点击提交后显示我在index.jsp页面中输入的文本,我将如何使用wsdl url来调用web服务在点击提交时获取文本值.

/维克拉姆

Pas*_*ent 5

我真的不建议在JSP中编写任何类型的逻辑,包括调用Web服务,这不是一个好习惯.JSP是一种视图技术,应该用于演示,而不是用于业务逻辑.相反,您应该将表单提交给Servlet,检索提交的参数,调用Web服务,然后在JSP视图中打印结果.但是让我们关闭括号.

由于您在评论中提到了WebLogic和Workshop,我假设您正在使用它们:) WebLogic支持JAX-WS,因此我建议您将它用于您的客户端.

基本上,您需要首先生成"客户端工件"(即您将用于调用Web服务的类).一种方法是使用clientgenAnt任务.请参阅 从独立客户端调用Web服务:主要步骤以获取详细信息(应该可以从Workshop生成类,但我无法告诉您如何使用它).

一旦生成客户端工件,调用Web服务就是小菜一碟.代码将类似于以下内容:

ComplexService test = new ComplexService(), 
ComplexPortType port = test.getComplexPortTypePort();

BasicStruct in = new BasicStruct();

in.setIntValue(999);
in.setStringValue("Hello Struct");

BasicStruct result = port.echoComplexType(in);
System.out.println("echoComplexType called. Result: " + result.getIntValue() + ", " + result.getStringValue());
Run Code Online (Sandbox Code Playgroud)


bal*_*dre 0

数据是如何到达java servlet页面的?

JSON、XML?

如果JSON,我如何建议您使用jQuery.get()方法非常棒!这就是我在 ASP 页面中使用的方式...