2008-10-23 22 views
5

? Estoy intentando averiguar la mejor manera de utilizar Ant para precompilar JSP que se implementarán en un servidor de aplicaciones Oracle. Aunque estoy implementando en un servidor de aplicaciones de Oracle, me gustaría evitar el uso de la versión de Ant de Oracle.¿Cuál es la mejor forma de precompilar JSP con Ant

Respuesta

2

No estoy seguro de lo que quiere decir con la versión de Oracle de Ant pero, según tengo entendido, necesitará la tarea de la hormiga del oráculo para hacer este trabajo. This página explica cómo hacerlo. Utilizará la hormiga apache que descarga desde el sitio web de apache, pero necesita usar la biblioteca de tareas de Oracle y Oracle para pre compilar las JSP para Oracle.

+0

alternativa Enlace roto: http://web.archive.org/web/20090717005115/http://download-west.oracle.com/ docs/cd/B32110_01/web.1013/b28961/ojspc.htm –

7

compilador JSP de Oracle está disponible en su oc4j instalar en ORACLE_HOME/J2EE/home/jsp/bin/ojspc

Asumiendo que su ruta de clases es correcta en la línea COMPAND debe ejecutar:

your.war ojspc

La guerra se actualizará y colocará un jar en el WEB-INF/lib que contiene las JSP precompiladas. Tenga en cuenta que si sus JSP de precompilación también deben establecer MAIN_MODE en 'JUSTRUN' para obtener el beneficio de rendimiento adicional de precompilar sus JSP. La configuración JUSTRUN hace lo que implica, el contenedor OC4J ya no buscará archivos .jsp actualizados.

<servlet> 
    <servlet-name>jsp</servlet-name> 
    <servlet-class>oracle.jsp.runtimev2.JspServlet</servlet-class> 
    <init-param> 
     <param-name>main_mode</param-name> 
     <param-value>justrun</param-value> 
    </init-param> 
</servlet> 

Una vez que su cómodo con llamar ojspc desde la línea de comandos A continuación, puede empezar a utilizar las tareas ANT proporcionados por Oracle.

Dentro ANT

<oracle:compileJsp file="dist/war/before-${app}war" 
     verbose="false" 
     output="dist/war/${app}.war" /> 

Su etiqueta de proyecto debe hacer referencia a las tareas del oráculo:

<project name="your-name" default="compile" basedir="." xmlns:oracle="antlib:oracle"> 
... 
</project> 

actualización 22/02/2011 Usted también puede simplemente trabajar con el frasco directamente ojspc y evite intentar configurar el oráculo: compileJsp Task, el siguiente código toma un archivo war y compilaciones previas la JSPS en ella.

<!-- Now Precompile the War File (see entry in <project> tag) --> 
    <java jar="${env.ORACLE_HOME}/j2ee/home/ojspc.jar" classpathref="jspPreCompileClassPath" fork="true"> 
     <arg value="-addClasspath"/> 
     <arg pathref="classpath"/> 
     <arg line="'${dist}/war/a-war-file.war'"/> 
    </java> 

la defnición jspPreCompileClassPath se ve así:

<path id="jspPreCompileClassPath"> 
    <path location="${env.ORACLE_HOME}/j2ee/home/lib/pcl.jar"/> 
    <path location="${env.ORACLE_HOME}/j2ee/home/lib/ojsp.jar"/> 
    <path location="${env.ORACLE_HOME}/j2ee/home/lib/oc4j-internal.jar"/> 
    <path location="${env.ORACLE_HOME}/j2ee/home/lib/servlet.jar"/> 
    <path location="${env.ORACLE_HOME}/j2ee/home/lib/commons-el.jar"/> 
    <path location="${env.ORACLE_HOME}/j2ee/home/lib/bcel.jar"/> 
    <path location="${env.ORACLE_HOME}/lib/xmlparserv2.jar"/> 
    <path location="${env.ORACLE_HOME}/j2ee/home/lib/oc4j-schemas.jar"/> 
    <path location="${env.ORACLE_HOME}/j2ee/home/jsp/lib/taglib/ojsputil.jar"/> 
    </path> 
Cuestiones relacionadas