sql >> Databasteknik >  >> RDS >> Oracle

Vilket är det bästa sättet att förkompilera JSP:er med Ant

Oracles JSP-kompilator är tillgänglig i din oc4j-installation på ORACLE_HOME/j2ee/home/jsp/bin/ojspc

Förutsatt att din klasssökväg är korrekt på den kompandrad du skulle köra:

ojspc your.war

Kriget kommer att uppdateras och placera en burk i WEB-INF/lib som innehåller de förkompilerade JSP:erna. Observera att om du förkompilerar JSP:er bör du också ställa in MAIN_MODE på 'JUSTRUN' för att få den extra prestandafördelen med att förkompilera dina JSP:er. JUSTRUN-inställningen gör vad den antyder, OC4J-behållaren kommer inte längre att leta efter uppdaterade .jsp-filer.

<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>

När du är bekväm med att anropa ojspc från kommandoraden kan du börja använda ANT-uppgifterna från Oracle.

Inom ANT

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

Din projekttagg bör referera till Oracle-uppgifterna:

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

Uppdatering 2011-02-22 Du kan också bara arbeta med ojspc jar direkt och undvika att försöka konfigurera oracle:compileJsp Task, koden nedan tar en war-fil och förkompilerar JSPS i den.

 <!-- 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>

jspPreCompileClassPath-definitionen ser ut så här:

  <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>


  1. Transponera rader till kolumner i MySQL

  2. Vad betyder följande Oracle-fel:ogiltigt kolumnindex

  3. mysql SUMMA av VARCHAR-fält utan att använda CAST

  4. Pearsons korrelationskoefficientformel i SQL