Использование GWT Twitter4j

#gwt #twitter4j

#gwt #twitter4j

Вопрос:

Я пытаюсь создать простой проект gwt, который извлекает твиты и отображает их.Сервер передает обратно твиты типа twitter4j.Отправлять твиты клиенту. Оба модуля импортируют twitter4j.Твитнуть. Но при запуске я получаю следующую ошибку: — ОШИБКА: Строка 37: Исходный код недоступен для типа twitter4j.Tweet; вы забыли наследовать требуемый модуль?. Кажется, у меня проблемы с наследованием twitter4j. Во всех сообщениях, которые я видел о наследовании файла jar, неясно, как это сделать. Я понимаю, что должен написать инструкцию по наследованию в gwt.xml файл, что-то вроде — но если я попытаюсь — это не сработает. Кто-нибудь может, пожалуйста, объяснить?

В сообщении, которое я нашел в Интернете, один человек предложил не наследовать его, но: — Не добавляйте twitter4j в свой gwt.xml . Просто добавьте в него путь к классу вашего проекта. и сделайте все функциональные возможности, такие как обновление статуса и все в вашем ServiceImpl. Попробуйте

Это смущает меня еще больше. Я добавил файл jar в библиотеки моего проекта. Но это не работает, я подозреваю, что здесь я упускаю что-то элементарное, но я полностью застрял. Есть ли что-то вроде пути к GWT? Большое спасибо за любую помощь

Ответ №1:

Имейте в виду, что все в вашем client пакете скомпилировано в JavaScript и выполняется в браузере пользователя. Таким образом, вы сможете использовать классы twitter4j только на стороне сервера вашего приложения; вам придется создать какой-то легкий GWT-сериализуемый «прокси-объект» для передачи данных туда и обратно между вашими клиентскими и серверными уровнями.

Поскольку вы не можете использовать twitter4j на стороне клиента вашего приложения, вам не понадобится ничего в вашем .gwt.xml файле, ссылающемся на него. Вместо этого вы добавите twitter4j в свой classpath и выполните все свои обновления на стороне сервера (как упоминалось в нижней части вашего вопроса). Вы упоминаете, что это «не работает», но в вашем вопросе недостаточно информации, чтобы попытаться выяснить, почему.