我完全是新的gwt-rpc。我已经阅读了很少的文档,但有时并不清楚。我会描述它。
我的客户端构建将实现gwt-rpc来调用服务器端servlet来访问数据。那么,我是否也需要实现服务器端RPC?
意思是,客户端gwt-rpc会与服务器端RPC通信,那个服务器端rpc会与servlets通信吗?或直接客户端gwt-rpc将与servlet通信?
由于
答案 0 :(得分:1)
是的,您还需要实现服务器端RPC。
您必须在服务器端构建一个Servlet,它必须扩展com.google.gwt.user.server.rpc.RemoteServiceServlet类并实现您的RPC接口。您必须注册已在web.xml中实现的新Servlet。例如。
您的新Servlet:
import com.google.gwt.user.server.rpc.RemoteServiceServlet;
public class MyServerSideRPC extends RemoteServiceServlet implements MyRpcInterface{
@Override
public String myRpcMethod(....) {
//Do RPC method work
}
}
您的新Servlet实现的RPC接口
@RemoteServiceRelativePath("service/myrpcpath")
public interface MyRpcInterface extends RemoteService{
public String myRpcMethod(....);
}
在服务器端的web.xml中,注册您创建的servlet,
<servlet>
<servlet-name>MyServerSideRPC</servlet-name>
<servlet-class>.....MyServerSideRPC</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServerSideRPC</servlet-name>
<url-pattern>/gwtrpc/service/myrpcpath</url-pattern>
</servlet-mapping>