2010-07-27 2 views

답변

4

아니요. JSP 컴파일러에 의해 생성 된 Java 소스를 살펴보면 컨테이너에 독점적 인 기본 클래스를 확장한다는 것을 알 수 있습니다. 예를 들어, JBoss 4의 서블릿 컨테이너는 org.apache.jasper.runtime.HttpJspBase으로 확장되는 JSP 클래스를 생성합니다.이 클래스는 Tomcat 및 JBossWeb에만 해당됩니다.

그래서 은 미리 컴파일 된 JSP를 다른 Tomcat 기반 서버간에 재사용 할 수 있지만 작동하지 않을 수도 있습니다.

+0

+1. 또 다른 요점은 컴파일러 자체가 다른 클래스가되는 경향이 있다는 것입니다. Tomcat은 Jasper 컴파일러를 사용합니다. Jasper 컴파일러는 다른 서블릿/JSP 컨테이너와 다를 필요가 없습니다. 주의 : WebLogic은 weblogic.appc 클래스를 사용하여 컴파일 프로세스의 플래그를 지정합니다. –

1

서블릿/JSP 엔진은 앱 서버마다 다르므로 이동성이없는 바이트 코드가 추가 될 수 있습니다.

확인을 위해 테스트를 작성해야합니다. 시간이 있다면 Tomcat과 WebLogic로 시도하고 다시보고 할 것입니다.

+0

런타임시 추가되는 바이트 코드에 대해 걱정하지 않습니다. –

+0

응용 프로그램 서버 특정 JAR이 CLASSPATH에있을 것으로 예상하고 해당 JAR을 찾지 못할 것입니다. – duffymo

관련 문제