2
我正在GWT(Google Web Toolkit)上开发项目,我需要调用Web服务(JAX-WS)。但问题是我不知道如何从GWT调用Web服务,所以我需要知道如何在GWT客户端访问该JAX-WS?我正在用eclips开发我的项目,我的服务在glassfish服务器上运行。如何在GWT客户端界面中调用JAX-WS?
请提供一些基本的指导来解决这个问题。
我正在GWT(Google Web Toolkit)上开发项目,我需要调用Web服务(JAX-WS)。但问题是我不知道如何从GWT调用Web服务,所以我需要知道如何在GWT客户端访问该JAX-WS?我正在用eclips开发我的项目,我的服务在glassfish服务器上运行。如何在GWT客户端界面中调用JAX-WS?
请提供一些基本的指导来解决这个问题。
调用外部非gwt ws的正常方法是通过RequestBuilder类,虽然这并不困难,但当您需要在应用程序中准备几个调用时,这可能很乏味。
我建议你看看gwtquery又名gquery,它有一个Ajax类,允许以非常简单的方式调用ws。看看到documentation
这可能是一个JAX-WS服务JSON响应
@BindingType(JSONBindingID.JSON_BINDING)
public class MyService {
public Book get(@WebParam(name="id") int id) {
Book b = new Book();
b.id = id;
return b;
}
public static final class Book {
public int id = 1;
public String title = "Java";
}
}
的例子,这可能是在客户端,客户端调用
import static com.google.gwt.query.client.GQuery.*;
[...]
post(//GQuery post static method (you have get, ajax, getJSONP, etc)
"http://url_to_the_jax-ws.server/MyService",
$$("{get:{id:5}}"), // GQuery json parses the parameters
new Function(){ // Callback
public void f() {
Properties p = getDataProperties(); // JSON response
alert("success " + p.get("title"));
}
}
);
一样其他应用程序。将JAX-WS库放入您的类路径中,从WSDL生成客户端,初始化客户端和调用方法。 –