Мы создали наш веб-проект на GWT с java. Полностью работает отлично. Теперь мы продвигаемся к созданию версии веб-сайта для мобильных устройств, которая также будет на gwt и будет иметь другой URL-адрес (например, m.exam.com).GWT- Как сделать RPC-вызов (использовать серверную часть) одного проекта в каком-то другом проекте?
ВОПРОС: -
мы хотим использовать на стороне сервера нашего веб-проекта, как на стороне сервера мобильный сайт. Так что только интерфейсные должны быть изменены. Как ушел через некоторые учебные пособия выяснилось, что его возможный вызов gwt rpc сделал из приложения для Android.
Но мы хотим, чтобы это было возможно в gwt для вызова gwt RPC.
Для приложения для Android они используют Syncproxy, где они меняют baseurl, и используют его для вызова методов стороны сервера gwt. Это будет точно повторного использования кода.
ANDROID Пример: -
SyncProxy.setBaseURL("http://testing.enggheads.in/enggheads/");
GreetingServiceAsync greetService = SyncProxy.create(GreetingService.class);
Итак, как добиться этого для проекта GWT использовать серверные побочные методы другого проекта throuhg этого метода?
EDIT NEW Проблема: com.gdevelop импорт не может быть решена
Я прошел через несколько Документов GWT для перекрестных вызовов домена, как GWT удаленных процедур в приложение для Android. Я получил файл syncproxy 0.5 jar, который точно такой же, как и для Android. Имея те же функции. Я импортировал файл jar в проект и вызвал функции SyncProxy, как следует.
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);
}
Теперь при составлении проекта я получаю следующие ошибки.
EDIT 2: -
GWT-No 'Access-Control-Allow-Origin' header is present on the requested resource
Извините, но я не могу понять, как использовать эту функцию.? Как это будет полезно для вызова других методов на стороне сервера. –
это то же самое, что вы делаете в своем проекте andriod с помощью 'SyncProxy.setBaseURL (« http://www.enggheads.in/CrossModuleCode/ »);« init greet service »GreetingServiceAsync greetingService = GWT.create (GreetingService .class); 'и затем изменить точку входа' ((ServiceDefTarget) greetService) .setServiceEntryPoint ("http://www.enggheads.in/CrossModuleCode/"); ' – Tobika
Невозможно использовать методы другой стороны сервера проекта , Например, если у меня есть функция fun() в другом проекте, то как использовать ее в текущем проекте. Один из проектов мобильного веб-сайта на том же веб-сайте в Интернете. Надеюсь, ты понял мой запрос –