利用Ant构建Getting Started应用
现在准备构建示例Web应用:
这版本的Java Services Developer
Pack包含一个Apache Software Foundation(http://www.apache.org)开发的可跨平台移植的生成工具,即Ant。Ant工具的文档可以在index.html文件中找到,其中该文件位于Java
WSDP安装目录的<JWSDP_HOME>/jakarta-ant-1.5.1/docs/目录中。
与Java WSDP一起发布的Ant版本设置了该示例生成文件所需的jwsdp.home环境变量。为了保证你使用的是这个版本的Ant,而不是其他的安装,必须在PATH的前面添加<JWSDP_HOME>/jakarta-ant-1.5.1/bin。
本例使用Ant工具来管理Java源代码的编译和部署分层的创建。Ant运行在通常被称作build.xml的生成文件的控制之下,该文件定义了所需的处理步骤。这个文件存储在源代码分层的顶级目录内。
和Makefile一样,build.xml文件提供了若干支持可选择开发活动(例如删除部署主目录以便再从头构建你的项目)的目标。该构建文件所包含的目标用于编译应用程序,在运行服务器上安装应用程序,在运行服务器上重新加载修改过的应用程序,以及删除该应用程序旧的副本以再生其内容。
当使用该示例应用中的build.xml编译源文件时,临时/build目录被创建在根目录之下。这个目录包含Web应用程序二进制分区的正确映像。这个目录在开发时可以根据需要删除和重新创建,所以不要编辑该目录中的文件。
创建Ant的生成文件和部署文件
该示例讨论了怎样使用Ant构建和部署这个示例。第一步是在gs/目录内创建文件build.xml。文件代码如下:
<!-- Setting up the Getting Started example to prepare to
<project name="gs-example" default="build" basedir=".">
<!-- Configure the context PATH for this application -->
<property name="example" value="GSApp" />
<property name="path" value="/${example}"/>
value="${jwsdp.home}/docs/tutorial/examples/${example}/build"
<!-- Configure properties to access the Manager application --
> <property name="url" value="http://localhost:8080/manager"/>
<property file="build.properties"/>
<property file="${user.home}/build.properties"/>
<!-- Configure custom Ant tasks for the Manager application -->
<fileset dir="${jwsdp.home}/common/lib">
classname="org.apache.catalina.ant.InstallTask" />
classname="org.apache.catalina.ant.ReloadTask" />
classname="org.apache.catalina.ant.RemoveTask"/>
<target name="prepare" depends="init" description="Create
<mkdir dir="${build}/WEB-INF" />
<mkdir dir="${build}/WEB-INF/classes" />
<!-- Executable Targets -->
<target name="install" description="Install Web application"
<install url="${url}" username="${username}"
password="${password}" path="${path}"
<target name="reload" description="Reload Web application"
<reload url="${url}" username="${username}"
password="${password}" path="${path}"/>
<target name="remove" description="Remove Web application">
<remove url="${url}" username="${username}"
password="${password}" path="${path}"/>
<target name="build" depends="prepare" description="Compile
app Java files and copy HTML and JSP pages" >
<javac srcdir="src" destdir="${build}/WEB-INF/classes">
<include name="**/*.java" />
<classpath refid="classpath"/>
<copy todir="${build}/WEB-INF">
<fileset dir="web/WEB-INF" >
<include name="web.xml" />
编译源文件
为了编译JavaBean组件,需要使用Ant工具并运行build.xml文件中的build目标。步骤如下:
1.在终端窗口中,如果是在自己创建应用请转到gs/目录,如果是在编译从该教程中下载的示例文件,请转到<JWSDP_HOME>
/docs/turorial/examples/gs/目录。
2.为了构建Java文件输入下列命令:
ant build
该命令编译ConverterBean的源文件。它把结果类的放在<JWSDP_HOME>/docs/tutorial/examples/GSApp/build/Web-INF/classes/converterApp目录内,正如build.xml中build目标指定的一样。它还将Index.jsp文件放置于GSApp/build目录中并将web.xml文件放置于GSApp/build/WEB_INF目录中。Tomcat允许在像这样的已解包目录中部署应用程序。在部署应用程序 一节中讨论了如何部署应用程序。
部署应用程序
在这个Java
WSDP版本中,应用程序是使用Ant工具部署的。必须在使用Ant工具安装应用程序前启动Tomcat。关于部署Web应用程序的更多信息,请浏览部署应用程序 一节。
启动Tomcat
为了启动Tomact,在终端窗口下输入下列命令。
<JWSDP_HOME>/bin/startup.sh (Unix platform)
<JWSDP_HOME>\bin\startup (Microsoft Windows)
这个启动脚本启动了后台任务并立即将用户返回用户命令行提示。启动脚本完全启动Tomcat要花费几分钟时间。
注意:Tomcat的启动脚本要若干分钟才能完成。为了检验Tomcat是否在运行,将浏览器指到http://localhost:8080。若出现Tomcat闪屏,便可以继续。若闪屏没有立即加载,等待若干分钟然后再试。如果若干分钟后,Tomcat闪屏还是没有显示,参考无效的本地服务器localhost:8080错误中的疑难解答技巧。
关于Tomcat文档可在<JWSDP_HOME>/docs/tomcat/index.html中找到。
使用Ant安装应用程序
Web应用被定义为标准布局中目录和文件的分层结构。在本例中,分层结构是以解包的形式访问,其中每一个目录和文件分别存在于文件系统中。本节讨论了如何利用创建Ant的生成和部署文件中定义Ant工具部署应用程序。
上下文是被映射到Web应用程序文档根目录中的名字。Getting Started应用的上下文是/GSApp。请求URL
http://localhost:8080/GSApp/index.html检索来自文档根目录的文件index.html。为了向Tomcat安装应用程序,需要通知Tomcat新的上下文是可用的。
用来自build.xml文件的Ant
install任务把新上下文通知给Tomact。Ant
install任务不需要Tomcat重新启动,但Tomcat重新启动后也记不起已安装的应用程序。为了永久部署应用程序,参阅部署Web应用程序一节。 Ant安装任务告诉Tomcat管理器应用程序把该应用安装由在路径属性和包含Web应用程序文件的位置指定的上下文中。阅读安装Web应用程序一节了解关于该过程信息。部署Web应用程序的步骤如下所示。
1. 在终端窗口上,转到gs/目录。
2. 输入下列命令以部署Web应用程序文件。
运行Getting Stared应用程序
为了运行应用程序,需要确定Tomcat正在运行,然后运行来自Web浏览器的JSP页面。
运行Web客户端
为了运行客户端程序,将浏览器指向URL:
http://localhost:8080/GSApp
这个Java WSDP的版本中,Tomcat要求主机是localhost。所谓localhost是指运行着Tomcat的机器。在该例中,应用程序的上下文是GSApp,它被定义在build.xml文件中。
为测试应用程序,
1. 在"Enter an amount
to convert"域内输入100。
2. 点击Submit。
图3-1演示了正在运行的应用程序。
图 3-1 ConverterBean Web客户端
关闭Tomcat
完成了应用程序的测试和部署后,就应该关闭Tomcat。
<JWSDP_HOME>/bin/shutdown.sh (Unix platform)
<JWSDP_HOME>\bin\shutdown (Microsoft Windows)
<JWSDP_HOME>/bin/shutdown.sh (Unix platform)
<JWSDP_HOME>\bin\shutdown (Microsoft Windows)
|