#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 и выполните все свои обновления на стороне сервера (как упоминалось в нижней части вашего вопроса). Вы упоминаете, что это «не работает», но в вашем вопросе недостаточно информации, чтобы попытаться выяснить, почему.