Почему после запуска комбинации Liferay / Tomcat через Eclipse происходит сбой публикации и мой портлет отменяется при каждом сохранении? - PullRequest
0 голосов
/ 06 апреля 2011

Я успешно настроил сервер Tomcat, который запускает Liferay через Eclipse.Я работаю над очень простым портлетом, чтобы узнать больше о структуре портала Liferay.Каждый раз, когда я изменяю ЛЮБОЙ файл в своем портлете и сохраняю, Eclipse пытается переиздать или повторно развернуть на сервере Tomcat.Даже при самом тривиальном изменении (изменение одной строки в CSS-файле) возникает ошибка.Всплывающее сообщение гласит:

Внутренняя ошибка произошла во время: «Публикация на сервере Liferay v6.0 (Tomcat 6) на локальном хосте ...».org.eclipse.jst.server.tomcat.core.internal.ITomcatVersionHandler.prepareForServingDirectly (Lorg / затмение / ядро ​​/ среда / IPath; Lorg / затмение / Jst / сервер / кот / ядро ​​/ внутренний / TomcatServer;) Lorg / затмение / сердцевина/ runtime / IStatus

Кроме того, консоль Eclipse выглядит так:

5 апреля 2011 г. 11:11:21 org.apache.catalina.loader.WebappClassLoader изменено SEVERE: Отсутствует ресурс '/WEB-INF/lib/commons-logging.jar' 5 апреля 2011 г. 11:11:21 org.apache.catalina.core.StandardContext reload ИНФОРМАЦИЯ: Перезагрузка этого контекста началась 23: 11: 21,080ИНФОРМАЦИЯ [ExtHotDeployListener: 205] Среда расширения для customer-portal-liferay-portlet не будет отменена 23: 11: 21,081 INFO [PortletHotDeployListener: 404] Отмена регистрации портлетов для customer-portal-liferay-portlet 23: 11: 21,082 INFO [PortletHotDeployListener:435] 1 портлет для customer-portal-liferay-portlet был незарегистрирован

Я думаю, что ошибка консоли является результатом предыдущей ошибки - я попытался удалить общийs-logging.jar в / WEB-INF / lib /, и он просто стирается после появления первой ошибки.

Одно замечание: после возникновения этой ошибки я могу запустить "ant deploy" в моем портлетеи он успешно разворачивается.Это происходит только во время сохранения.

Ответы [ 3 ]

2 голосов
/ 23 августа 2011

Я использую Ant для развертывания. Существует 2 способа развертывания:

  1. Перетащите файл build.xml в представление
  2. или выберите файл сборки из значка «Добавить файлы сборки».

Теперь дважды щелкните файл ant в представлении ant, чтобы развернуть его. Двойной щелчок запускает цель по умолчанию и, следовательно, создает файл войны.

1 голос
/ 10 июня 2011

Ошибка, которую вы видите, заключается в том, что плагины Liferay IDE eclipse имели версию (1.2.2), которая была несовместима с последней версией Ecipse Helios SR2. Другой версией был релиз (1.2.3) плагинов Liferay IDE eclipse, и это решило проблему. Таким образом, решение должно состоять в том, чтобы просто обновить стабильный адрес сайта обновления , чтобы получить последнюю версию. Это исправит ошибку, и развертывание должно произойти нормально.

1 голос
/ 06 апреля 2011

Это мое лучшее предположение: в представлении сервера Eclipse найдите объявленный вами сервер.В начале этой строки в дальнем левом углу есть стрелка, по которой можно щелкнуть, чтобы открыть сервер и увидеть проекты, развернутые на этом сервере.Если какие-либо проекты перечислены здесь, Eclipse перестроит и развернет его, когда что-то изменится.Лично мне это не нравится, поэтому выбирайте и удаляйте развернутые проекты, чтобы они больше не развертывались автоматически в Eclipse.Другой способ - изменить сервер так, чтобы он не выполнял автоматическое развертывание, но я все равно никогда не использую эту функцию.

Я не уверен, почему автоматическое развертывание вызывает проблемы для вас, все должно быть в порядке (хотя у меня естьвидел случайные проблемы, когда Liferay пытается прочитать файл WAR, пока он все еще записывается), но я бы не стал беспокоиться, если ant deploy работает без проблем.

...