Горячее/автоматическое развертывание JSP не работает в JBoss ES 6.2 с Liferay 6.2

Я работаю над проектом, в котором используется Liferay 6.2 на JBoss ES 6.2 (JBoss AS 7.x, насколько я читал). Я использую сценарии ANT, созданные Liferay, для развертывания, но по какой-то странной причине изменения файла JSP не сохраняются. Каждый раз, когда я вношу изменения в JSP, мне приходится выключать JBoss, уничтожать файлы в standalone/tmp, а затем перезапускать JBoss. Изменения Java, кажется, разворачиваются просто отлично. Например, если я добавлю сообщение журнала в свой код портлета и обновлю некоторый текст HTML в моем JSP и разверну проект портлета, я сразу же увижу свою запись в журнале, но текст страницы не изменится. Излишне говорить, что необходимость перезапускать весь сервер приложений для каждого изменения/настройки пользовательского интерфейса значительно снижает мою производительность.

Я не знаю, какая информация может понадобиться, чтобы помочь.


person CodeChimp    schedule 28.03.2015    source источник


Ответы (2)


Проверьте, есть ли у вас проблемы с часовым поясом при развертывании проекта: если временные метки в JSP на 1 час старше (из-за неправильного часового пояса), а предыдущее развертывание/тестирование было 10 минут назад, возможно, JSP был скомпилирован 10 минут назад. назад - это все еще 50 минут после (обновленной) даты jsp, поэтому нет необходимости перекомпилировать.

Я надеюсь, что это объяснение часового пояса не было слишком запутанным и понятным.

person Olaf Kock    schedule 28.03.2015
comment
куда мне пойти проверить? Я имею в виду, что система настроена на восточное время, но изначально это было горное время. Есть ли где-нибудь настройка в JBoss? - person CodeChimp; 30.03.2015
comment
проверьте, есть ли у jboss временные скомпилированные jsps, и сравните их временные метки. tomcat имеет их в своей папке /work - person Olaf Kock; 01.04.2015
comment
Хорошо, я сделаю это. Но я уже могу сказать вам, что мой запуск JBoss сообщает, что часовой пояс установлен на GMT, поэтому я на 99,9% уверен, что это проблема, но я не могу понять, как заставить его не быть GMT. - person CodeChimp; 02.04.2015
comment
Также проверьте временные метки в развернутом коде — если ваш сервер приложений настроен правильно, возможно, ваш CI-сервер (или где бы вы ни создавали развертываемые компоненты) не настроен. Давно я такого не видел в реальной жизни, но точно видел. Конечно, это может быть и что-то другое... - person Olaf Kock; 03.04.2015
comment
Итак, я провел простой тест: поскольку JBoss сообщал в JAVA_OPTS, что часовой пояс был GMT, я просто настроил свою рабочую станцию ​​на GMT. Виолла! Горячее развертывание JSP теперь работает нормально. Однако я не могу определить, откуда JBoss получает -Duser.timezone=GMT. Как я уже сказал, я обыскал все файлы, которые смог найти, но ничего. - person CodeChimp; 03.04.2015

Для меня сработало добавление следующих строк в standalone.xml.

    <subsystem xmlns="urn:jboss:domain:web:2.2" default-virtual-server="default-host" native="false">
        <configuration>
            <jsp-configuration development="true" />
        </configuration>
        ...
    </subsystem>
person Dilip Raj Baral    schedule 02.05.2018