sql >> Database teknologi >  >> RDS >> Oracle

Hvad er den bedste måde at prækompilere JSP'er ved hjælp af Ant

Oracles JSP-kompiler er tilgængelig i din oc4j-installation på ORACLE_HOME/j2ee/home/jsp/bin/ojspc

Forudsat at din klassesti er korrekt på den compand linje du ville køre:

ojspc your.war

Krigen vil blive opdateret og placere en krukke i WEB-INF/lib, der indeholder de præ-kompilerede JSP'er. Bemærk, at hvis du prækompilerer JSP'er, skal du også indstille MAIN_MODE til 'JUSTRUN' for at få den ekstra ydeevnefordel ved at prækompilere dine JSP'er. JUSTRUN-indstillingen gør, hvad den antyder, OC4J-beholderen vil ikke længere søge efter opdaterede .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 er fortrolig med at ringe til ojspc fra kommandolinjen, kan du begynde at bruge ANT-opgaverne fra Oracle.

Inden for ANT

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

Dit projekttag skal referere til oracle-opgaverne:

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

Opdatering 22.02.2011 Du kan også bare arbejde med ojspc-jarken direkte og undgå at prøve at konfigurere oracle:compileJsp-opgaven, koden nedenfor tager en war-fil og prækompilerer JSPS'en 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 sådan ud:

  <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. Hvordan kan brugere lide hinandens indlæg ved hjælp af sequelize postgres nodejs?

  2. Laravel - Masseindsæt på duplikatnøgleopdatering stort datasæt

  3. Sådan oprettes brugerdefineret registreringsdatatypevariabel i Oracle-databasen

  4. MYSQL:JOIN gør SUM dobbelt