rpc 呼び出しを行うために、サービス インターフェイスで静的メソッドを定義しようとしています。しかし、それは私がそうするのを許しません。ここにコードを貼り付けています
クライアントクラス
public void sendDomesticData(String product,String dma,String yrmnths,String dist,String metrics) {
String url = GWT.getModuleBaseURL() + "domesticservice";
domesticServiceAsync = (DomesticServiceAsync) GWT.create(DomesticService.class);
ServiceDefTarget endpoint = (ServiceDefTarget) domesticServiceAsync;
endpoint.setServiceEntryPoint(url);
domesticServiceAsync.sendDomesticData(product,dma,yrmnths,dist,metrics,new Domestichandler<Void>() );
}
public class Domestichandler<Void> implements AsyncCallback<Void> {
@Override
public void onFailure(Throwable caught) {
String error = caught.getMessage();
System.out.println(error);
}
public void onSuccess(Void result) {
System.out.println("perfect");
}
}
Service
public interface DomesticService extends RemoteService {
public void sendDomesticData(String product,String dma,String yrmnths,String dist,String metrics);
}
public interface DomesticServiceAsync {
void sendDomesticData(String product,String dma,String yrmnths,String dist,String metrics,AsyncCallback<Void> callback);
}
サーバ側 -
public void sendDomesticData(String product, String dma, String yrmnths, String dist, String metrics) {
System.out.println(product);
}
基本的に、フロント インターフェイスからサーバー側に値を送信しようとしていますが、戻り値は必要ありません。ただし、サーバー側に渡される値は、サーバー クラスにグローバルに格納する必要があるため、別のメソッドでそれらの値にアクセスできます。すべての senddomestic 値を static に変更しようとしましたが、変更できませんか? なぜ?