Прекомпиляция JSP: этот сервер специфичен? - PullRequest
2 голосов
/ 27 июля 2010

Поскольку JSP придерживаются стандартного API, могу ли я предварительно скомпилировать их в своих проектах, а затем развернуть результат на любом сервере?

В частности, я использую Tomcat, JBoss и WebSphere.

Ответы [ 2 ]

4 голосов
/ 27 июля 2010

Нет, не совсем. Если вы посмотрите на исходный код java, который создается компилятором JSP, вы увидите, что он расширяет базовый класс, который является проприетарным для контейнера. Например, контейнер сервлетов JBoss 4 генерирует классы JSP с расширением org.apache.jasper.runtime.HttpJspBase, которое зависит от Tomcat и JBossWeb.

Так что может иметь возможность повторно использовать предварительно скомпилированные JSP между различными серверами tomcat, но даже тогда это может не сработать.

1 голос
/ 27 июля 2010

Поскольку механизмы сервлетов / JSP на серверах приложений различаются, может быть добавлен байт-код, который нельзя переносить.

Я должен написать тест, чтобы подтвердить это. Если у меня будет время, я попробую его с Tomcat и WebLogic и сообщу.

...