Как использовать GWT - RPC для сервера Tomcat - PullRequest
2 голосов
/ 18 марта 2011
  1. Установлен Tomcat 6
  2. Установлен плагин Eclipse + GWT
  3. Создан проект GWT с образцом сгенерированного кода
  4. Скомпилированный проект GWT (GWT compile)
  5. Скопированный каталог war (скомпилированный) из рабочей области eclipse в папку webapps / ROOT TOMCAT
  6. Запустите localhost: 8080 в моем браузере

Страница sample.html из проекта GWT отображается правильноно когда я пытаюсь сделать серверный вызов, возникает ошибка.

  • Нет проблем с пристанью (режим разработки Eclipse GWT) - нормально работает rpc
  • ПРОБЛЕМА на TOMCAT.

В журнале catalina.out на TOMCAT написано:

Ошибка развертывания каталога веб-приложения ROOT java.lang.UnsupportedClassVersionError: Неверный номер версии в файле .class (невозможно загрузить класс com.tomcat.server.GreetingServiceImpl)

Я думаю, что может быть проблема в WEB_INF / web.xml при определении сервлета, вот мой web.xml

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
   version="2.5">

  <display-name>Welcome to Tomcat</display-name>
  <description>
     Welcome to Tomcat
  </description>

  <!-- Servlets -->
  <servlet>
    <servlet-name>greetServlet</servlet-name>
    <servlet-class>com.tomcat.server.GreetingServiceImpl</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>greetServlet</servlet-name>
    <url-pattern>/tomcat/greet</url-pattern>
  </servlet-mapping>

  <!-- Default page to serve -->
  <welcome-file-list>
    <welcome-file>Tomcat.html</welcome-file>
  </welcome-file-list>

</web-app>

Ответы [ 4 ]

3 голосов
/ 18 марта 2011

У меня была такая же проблема при развертывании на моем хостинг-сервере Godaddy. Он работал нормально на моей локальной машине, но не когда я развернул. Я получил точно такое же сообщение об ошибке. Проблема в том, что вы скомпилировали свой код с версией Java, более новой, чем та, которую использует Tomcat.

Install jdk1.5.0_22 (Or whatever your tomcat server is using)
Probably need to restart your machine
Eclipse->Window->Preferences->Java->Installed JRES->Add
Standard VM->Next
Browse to the directory of your jdk
Finish
Clean the project
Compile the project
Redeploy and cross your fingers!

Это сработало для меня, если не для вас, то ... да ... это должно сработать. Удачи

3 голосов
/ 18 марта 2011

Вы, вероятно, компилируете свои классы с более новым jdk, чем версия tomcat, на которой работает.

1 голос
/ 19 марта 2011

Вы можете получить эту ошибку, только если версия JDK, используемая для компиляции классов, БОЛЬШЕ, чем версия JDK, используемая Tomcat. СРОК. Преследование по любому другому пути будет бесплодным.

для какой среды установлено JAVA_HOME?

Посмотрите журналы запуска Tomcat, какой JDK он использует при запуске, он находится в верхней части журналов при запуске

Теперь посмотрите на ваш инструмент разработки, который скомпилировал классы. Вам НЕОБХОДИМО использовать другой JDK с более высокой версией, чтобы получить эту ошибку.

1 голос
/ 19 марта 2011

Я использую команду GWT-SDK webAppCreator (из терминала), и она генерирует все файлы, необходимые для запуска на внешнем сервере, таком как Tomcat.

Я приведу шаги, которым я следовал, чтобы помочь другим начать с простой разработки GWT-TOMCAT

TOMCAT

  1. Загрузите версию Tomcat, я предпочитаю Tomcat 6 http://apache.tsl.gr/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.zip

  2. Следуйте инструкциям для вашей конкретной операционной системы, чтобы установить ее. Я следовал этому руководству (MAC-OS) http://www.malisphoto.com/tips/tomcatonosx.html

GWT

  1. Загрузите версию GWT-SDK (я использую 2.0.4, которая мне кажется более стабильной и совместимой с внешними источниками, такими как библиотека EXT-GWT и TOMCAT) http://code.google.com/p/google-web-toolkit/downloads/list

  2. Откройте свой ТЕРМИНАЛ, если вы являетесь пользователем UNIX, затем измените каталог на GWT-SDK, который вы только что загрузили

  3. Изменение разрешений для запуска скрипта webAppCreator. Я обычно меняю права доступа ко всем файлам, набирая -> chmod 750 *

  4. Создать проект GWT, выполнив в терминале -> ./webAppCreator -out MyProject com.myproject

  5. Все файлы генерируются автоматически

  6. Переключить каталог на проект, который вы только что создали, введите в терминал -> cd MyProject

  7. Скомпилируйте ваш проект с помощью скрипта ant, предоставленного GWT-SDK, введите терминал -> ant build

  8. Откройте ваш проект и скопируйте его файл build.xml, war / contents в папку webcats / ROOT Tomcat

  9. НАКОНЕЦ откройте браузер с типом localhost: 8080 /, чтобы запустить ваш проект (по умолчанию откроется HTML-страница вашего проекта, поскольку она определена в файле /WEB-INF/web.xml) *

Поздравляем!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...