GWT RPC接口问题

Del*_*ari 5 gwt rpc

我对下面的代码有疑问..

@RemoteServiceRelativePath("stockPrices")
public interface StockPriceService extends RemoteService {

  StockPrice[] getPrices(String[] symbols);
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释一下@RemoteServiceRelativePath("stockPrices")我们需要在"stockPrices"中使用什么以及我们需要提供什么名称..这是强制性的吗?

提前致谢!!!

Pet*_*aný 8

查看RemoteServiceRelativePath注释的文档,它很好地解释了这个注释的作用.在您的情况下,您的服务必须位于GWT.getModuleBaseURL() + "stockPrices"......这意味着如果您的GWT应用程序在/mygwtapp,那么您的服务必须在/mygwtapp/stockPrices.您可以通过定义实现服务接口的servlet来在此URL上安装某些服务.

您可以使用任何其他路径而不是"stockPrices",只需确保服务器上此路径后面有真正的服务.

你的远程服务需要一些远程路径(切入点),无论是使用@RemoteServiceRelativePath注释,或通过设置它ServiceDefTarget接口.如果服务没有入口点,则无法调用.(请记住:此路径是服务器上的URL)

例如,@RemoteServiceRelativePath您可以在没有此批注的情况下定义服务,而不是使用,然后在实例化异步服务代理时,显式设置路径:

StockPriceServiceAsync stockService = GWT.create(StockPriceService.class);
((ServiceDefTarget) stockService).setServiceEntryPoint("/services/stock.service");
Run Code Online (Sandbox Code Playgroud)