2010-12-15 97 views
0

J'utilise WAS6.1 comme serveur (mais je suppose que cela ne devrait pas avoir d'importance) .J'ai un fichier filters.properties. Il a une paire de valeurs de clé (par exemple config.file.name =/usr/home/config.xml). Ces valeurs sont utilisées dans web.xml comme indiqué ci-dessous:Comment accéder aux filtres dans le fichier web.xml défini par un fichier .properties

Alors
<context-param> 
    <param-name>config.file</param-name> 
    <param-value>@[email protected]</param-value> 
</context-param> 

J'ai défini une build.xml qui utilise la tâche de filterset de fourmi pour définir tous ces filtres, mais lorsque je tente d'accéder à la page d'accueil, il dit que pas en mesure de trouver location @ config.file.name @. Évidemment, ces filtres ne sont pas chargés correctement. Voici mon code build.xml qui définit les filtres lors de la compilation. Que penses-tu que je manque?

<target name="compile"> 
    <property name="compile.target" location="${project.build.dir}/WEB-INF/classes" /> 

    <property name="project.build.dir.lib" location="${project.build.dir}/WEB-INF/lib" /> 

    <mkdir dir="${compile.target}" /> 
    <mkdir dir="${project.build.dir.lib}" /> 
    <!-- copy the web content into the build location --> 
    <copy todir="${project.build.dir}"> 
     <fileset dir="${web.project.webcontent.dir}" excludes="**/classes/**" /> 
     **<filterset> 
      <filtersfile file="${web.project.src.dir}/filters/${file.filter.name}" /> 
     </filterset>** 

    </copy> 

    <!-- compile the java source and put it in the classes directory --> 
    <javac classpathref="classpath" srcdir="${web.project.src.dir}" destdir="${compile.target}" debug="${javac.debug}" deprecation="${javac.deprecation}" fork="${javac.fork}" memoryMaximumSize="${javac.memoryMaximumSize}" nowarn="${javac.nowarn}" failonerror="${javac.failonerror}"> 
    </javac> 

    <!-- copy all the non-java resources (properties, etc) into the classes directory--> 
    <copy todir="${compile.target}"> 
     <fileset dir="${web.project.src.dir}"> 
      <exclude name="**/*.java" /> 
      <exclude name="filters/**" /> 
     </fileset> 
    </copy> 
    <!-- Create a jar file from the ${compile.target} folder --> 
    <jar jarfile="${project.build.dir.lib}/${ant.jar.file}.jar" excludes="filters/**" basedir="${compile.target}" /> 


</target> 

Vos commentaires sont grandement appréciés.

Répondre

0

Merci d'avoir regardé mon message. Cela fonctionne bien. Le problème principal était que le chemin d'accès au fichier de propriétés n'était pas correct.