Wir haben unser Webprojekt auf GWT mit Java erstellt. Völlig gut funktioniert. Jetzt machen wir die Version der Website für mobile, die auch auf gwt sein wird und eine andere URL haben wird (wie zB.exam.com).GWT- Wie RPC-Aufruf (Server-Seite) eines Projekts in einem anderen Projekt aufrufen?
PROBLEM: -
Wir haben die Server-Seite unserer Web-Projekt als Server-Seite von die mobile Website verwenden möchten. Damit nur das Front-End verändert werden muss. Wie gegangen durch einige Tutorials bekommen, dass es möglich ist, dass gwt rpc Anruf von Android App gemacht.
Aber wir wollen, dass es möglich sein sollte in gwt zu gwt RPC-Aufruf.
Für Android-App verwenden sie Syncproxy, wo sie die baseurl ändern und verwenden, um die gwt serverseitigen Methoden aufzurufen. Es wird sicher die Wiederverwendbarkeit des Codes sein.
ANDROID Beispiel: -
SyncProxy.setBaseURL("http://testing.enggheads.in/enggheads/");
GreetingServiceAsync greetService = SyncProxy.create(GreetingService.class);
So, wie es für GWT-Projekt zu erreichen Serverseite Methoden anderen Projektes throuhg diese Methode zu benutzen?
EDIT NEUE AUSGABE: Der Import com.gdevelop nicht aufgelöst werden kann
ich durch mehrere Dokumente von GWT für die Cross-Domain-RPC-Aufrufe wie GWT Android App gegangen war. Ich habe die Syncproxy 0,5 JAR-Datei, die genau das gleiche wie für Android ist. Die gleichen Funktionen haben. Ich habe die JAR-Datei in das Projekt importiert und die Funktionen von SyncProxy wie folgt aufgerufen.
public void onModuleLoad() {
SyncProxy.setBaseURL("http://www.enggheads.in/CrossModuleCode/");
final GreetingServiceAsync greetService = SyncProxy.create(GreetingService.class);
final Button sendButton = new Button("Send");
final TextBox nameField = new TextBox();
nameField.setText("GWT User");
final Label errorLabel = new Label();
// We can add style names to widgets
sendButton.addStyleName("sendButton");
// Add the nameField and sendButton to the RootPanel
// Use RootPanel.get() to get the entire body element
RootPanel.get("nameFieldContainer").add(nameField);
RootPanel.get("sendButtonContainer").add(sendButton);
RootPanel.get("errorLabelContainer").add(errorLabel);
}
Jetzt, während das Projekt kompilieren ich erhalte die folgenden Fehler.
EDIT 2: -
GWT-No 'Access-Control-Allow-Origin' header is present on the requested resource
Entschuldigung, aber ich kann nicht verstehen, wie man diese Funktion benutzt.? Wie es sinnvoll ist, andere Methoden des Domänenservers aufzurufen. –
es ist genau das gleiche, was Sie in Ihrem andriod Projekt mit 'SyncProxy.setBaseURL (" http://www.enggheads.in/CrossModuleCode/ ") tun;' init den Begrüßungsdienst 'GreetingServiceAsync grußservice = GWT.create (GreetingService .class); 'und dann den Einstiegspunkt ändern' ((ServiceDefTarget) greetService) .setServiceEntryPoint ("http://www.enggheads.in/CrossModuleCode/"); ' – Tobika
Es ist nicht möglich, die Methoden des anderen Projektservers zu verwenden . Wie wenn ich eine Funktion Spaß() in einem anderen Projekt habe dann wie man es im aktuellen Projekt verwendet. Eine mobile Website Projekt andere die gleiche Website im Web. Hoffe, du hast meine Abfrage verstanden –