2013-06-14 2 views
0

Iam 완전히 새로운 gwt-rpc. 필자는 몇 가지 문서를 읽었지만 어느 시점에서는 명확하지 않습니다. Iam이 설명하려고합니다.클라이언트 측 응용 프로그램에서 GWT-RPC를 호출 할 수 없습니다.

내 클라이언트 측 빌드는 gwt-rpc를 구현하여 서버 측 서블릿을 호출하여 데이터에 액세스합니다. 그래서, 내가 너무 서버 측 RPC를 구현해야합니까?

클라이언트 측 gwt-rpc는 서버 측 RPC와 통신하고 서버 측 rpc는 서블릿과 통신합니까? 또는 직접 클라이언트 쪽 gwt - rpc 서블릿과 통신 할 것인가?

감사합니다.

답변

1

예, 서버 측 RPC도 구현해야합니다.

com.google.gwt.user.server.rpc.RemoteServiceServlet 클래스를 확장하고 RPC 인터페이스를 구현해야하는 서버 측에서 Servlet을 빌드해야합니다. web.xml에 구현 한이 새로운 서블릿을 등록해야합니다. 예를 들어.

새 서블릿 :

새 서블릿

@RemoteServiceRelativePath("service/myrpcpath") 
public interface MyRpcInterface extends RemoteService{ 
    public String myRpcMethod(....); 
} 

으로 그리고 서버 측에서 당신의 web.xml에 구현되어

import com.google.gwt.user.server.rpc.RemoteServiceServlet; 

public class MyServerSideRPC extends RemoteServiceServlet implements MyRpcInterface{ 
    @Override 
    public String myRpcMethod(....) { 
    //Do RPC method work 
    } 

} 

귀하의 RPC 인터페이스, 사용자가 만든 서블릿을 등록,

<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> 
+0

답장을 보내 주셔서 감사합니다. 그러나 초보자 인 iam bit는 혼란 스럽습니다. 서버 측과 클라이언트 측 RPC가 동일한 시스템에 남아 있습니까? 클라이언트 측 (모바일 애플리케이션이라고 가정) 또는 서버 (원격 시스템)에 있음을 의미합니다. 그리고 그들이 다른 기계에 있다면, 즉, 클라이언트 컴퓨터와 클라이언트 쪽 rpc에 서버 쪽 rpc, 다음 방법, 클라이언트 쪽 rpc는 서버 쪽 rpc를 호출 할 수있을 것입니다? 클라이언트 측이나 다른 어떤 곳에서 서버 IP 주소를 구성해야합니까? 도와주세요. 감사합니다 –

+0

아니, 당신은 클라이언트 측에서 서버의 IP 주소를 구성하지 않아도됩니다. 어쨌든, 네, 클라이언트 쪽에서 몇 가지 일을해야합니다. 나는이 [GWT-RPC 튜토리얼] (http://www.tutorialspoint.com/gwt/gwt_rpc_communication.htm) –