Using Tomcat 6.0.x with JSF 1.2_x

来源:互联网 发布:ubuntu安装codeblocks 编辑:程序博客网 时间:2024/05/11 02:40

在Tomcat6.0.x中构建JSF1.2_x运行环境
(原文:http://www.horstmann.com/corejsf/tomcat-instructions.html)

  • 下载Tomcat 6.0.x, 可由此处下载 http://tomcat.apache.org/download-60.cgi 。将下载所得压缩包解压到任意目录。我们这里假设称其为tomcat。
  • 由此下载JSF1.2_x的最新稳定的发行版本 https://javaserverfaces.dev.java.net/servlets/ProjectDocumentList。将下载所得压缩包解压到任意目录。我们这里假设称其为jsf。
  • 执行脚步 tomcat/bin/startup.shtomcat/bin/startup.bat,启动Tomcat服务器。
  • 当你建立一个web应用时,你必须在该应用中添加目录WEB-INF/lib,并且必须添加四个文件到相应的目录:
    • jsf/lib/jsf-api.jar
    • jsf/lib/jsf-impl.jar
    • tomcat/webapps/你的应用目录/WEB-INF/lib/jstl.jar
    • tomcat/webapps/你的应用目录/WEB-INF/lib/standard.jar
  • 如11页(译注:该文章摘自Core JavaServer Faces)所示,将你的将你的应用编译并打包为WAR文件。 然而,在编译所有使用了JSF API的程序时,都需要将以下文件添加到你的CLASSPATH:
    • tomcat/lib/servlet-api.jar
    • tomcat/lib/jsp-api.jar
    • tomcat/lib/el-api.jar
    • jsf/lib/jsf-api.jar
  • 将上述WAR文件复制到tomcat/webapps/目录
  • 打开你的浏览器,输入如下URL:http://localhost:8080/你的应用名
  • 如果上述路径无法启动,请查看该日志文件 tomcat/logs/localhost.date.log

以下是Tomcat中修改过的build.xml文件和 build.properties 文件。 在运行启动脚步前,你需要正确设置TOMCAT_HOME和JSF_HOME这两个环境变量。(或者,编辑build.properties然后将 tomcat.dirjsf.dir设置为安装目录。)

<project default="install"><property environment="env"/><property file="build.properties"/> <property name="appdir" value="${basedir}/${app}"/><basename property="appname" file="${appdir}"/><property name="builddir" value="${appdir}/build"/><property name="warfile" value="${builddir}/${appname}.war"/><path id="classpath">      <pathelement location="${servlet.api.jar}"/><pathelement location="${jsp.api.jar}"/><pathelement location="${el.api.jar}"/><pathelement location="${jsf.api.jar}"/>      <fileset dir="${appdir}">        <include name="web/WEB-INF/**/*.jar"/></fileset></path><target name="init"><fail unless="app" message="Run ant -Dapp=..."/></target><target name="prepare" depends="init" description="Create build directory."><mkdir dir="${builddir}"/><mkdir dir="${builddir}/WEB-INF"/><mkdir dir="${builddir}/WEB-INF/classes"/>      <mkdir dir="${builddir}/WEB-INF/lib"/>   </target><target name="copy" depends="prepare" description="Copy files to build directory."><copy todir="${builddir}" failonerror="false" verbose="true"><fileset dir="${appdir}/web"/></copy><copy todir="${builddir}/WEB-INF/classes" failonerror="false" verbose="true"><fileset dir="${appdir}/src/java"><exclude name="**/*.java"/></fileset></copy><copy todir="${builddir}/WEB-INF/lib"><fileset dir="${jsf.lib.dir}" includes="${jsf.libs}"/><fileset dir="${jstl.lib.dir}" includes="${jstl.libs}"/></copy>      <copy todir="${builddir}/WEB-INF" failonerror="false" verbose="true"><fileset dir="${appdir}"><include name="lib/**"/></fileset></copy></target><target name="compile" depends="copy" description="Compile source files."><javac srcdir="${appdir}/src/java" destdir="${builddir}/WEB-INF/classes" debug="true" deprecation="true"><compilerarg value="-Xlint:unchecked"/><include name="**/*.java"/><classpath refid="classpath"/></javac></target><target name="war" depends="compile" description="Build WAR file."><delete file="${warfile}"/><jar jarfile="${warfile}" basedir="${builddir}"/></target><target name="install" depends="war" description="Deploy web application."><copy file="${warfile}" todir="${deploy.dir}"/></target><target name="clean" depends="init" description="Clean everything."><delete dir="${builddir}"/></target></project>
tomcat.dir=${env.TOMCAT_HOME}jsf.dir=${env.JSF_HOME}deploy.dir=${tomcat.dir}/webappsservlet.api.jar=${tomcat.dir}/lib/servlet-api.jarjsp.api.jar=${tomcat.dir}/lib/jsp-api.jarel.api.jar=${tomcat.dir}/lib/el-api.jarjsf.api.jar=${jsf.dir}/lib/jsf-api.jarjsf.lib.dir=${jsf.dir}/libjstl.lib.dir=${tomcat.dir}/webapps/examples/WEB-INF/libjsf.libs=jsf-api.jar,jsf-impl.jarjstl.libs=jstl.jar,standard.jar


原创粉丝点击