1) 搭建环境
我们需要如下东东:
Eclipse3.1及其以上版本:http://www.eclipse.org/downloads/index.php
MyEclipse4.0及其以上版本:http://www.myeclipseide.com
Java SE 5.0及其以上版本:http://www.sun.com/download/index.jsp
Resin3.0.x:http://www.caucho.com/download/index.xtp
Tapestry4.0包:http://jakarta.apache.org/site/downloads/downloads_tapestry.cgi
Tapestry4.0支持包:http://jakarta.apache.org/tapestry/dependencies.html
OK,现在我们开始搭建Tapestry项目。对于Eclipse的配置,我们就略过了。
使用MyEclipse新建一个Web Project:
我们将项目名称命名为MyTapestry4:
点击Finish,我们新建了一个Web Project:
然后我们将下载好的Tapestry4及其支持包拷贝到WEB-INF/lib/目录中:
然后将包文件载入项目:
OK,基本的项目配置完成,现在我们在src下新建包:com.tapestry4:
然后我们进行web.xml配置:
为了测试项目是否已经正常配置,我们可以做点小测试:
首先在com.tapestry4下新建一个Home.java文件:
在Tapestry4中,java文件可以不再是abstract的,这个差别相比于Tapestry3还是很突出的。因为一个很简单的理由,一旦Tapestry4的java文件不再是抽象类,那么就可以进行单元测试了。在后面,我们会看到如何进行单元测试。
接着在WEB-INF/下建一个Home.page文件,注意在<page-specification>里面一定要指定类装载路径,否则,页面会报没有绑定文件的错误。
最后,我们在web/目录下新建一个Home.html文件:
2) 让我们的项目跑起来
将resin解压到硬盘,当然,使用tomcat,jetty等,都可以用下面的方式来启动项目。
首先,打开Eclipse的Window -> Preference :
在MyEclipse的Application Server选项下,我们找到Resin3,然后在右边进行Resin配置。首先指定Resin Server为Enable,然后指定Resin Home Directory地址。
然后我们要确保JDK的版本是否正确,并且加载两条JVM参数:
-Dorg.apache.tapestry.disable-caching=true
-Dorg.apache.tapestry.enable-reset-service=true
使用过Tapestry3的朋友对这两条参数都非常熟悉了,它们的作用是关闭Tapestry的页面缓存,这样就能够让我们在开发项目的时候,修改html和page之后,不需要频繁地重新启动项目。但是在加载这两条参数之后,内存消耗比较大,所以在项目发布的时候,我们就不再使用这两条参数了。
一旦你正确地配置了Resin,我们就可以在MyEclipse中启动Resin了。首先点击MyEclipse的J2EE项目配置管理:
然后在下拉菜单中选择我们的MyTapestry4项目,点击右边的Add按钮:
选择我们已经配置好的Resin Server,最后点击Finish。
OK,现在我们可以清楚地看到,我们的项目已经被部署到Resin的deploy目录下了。
接着,我们启动Resin,就可以启动我们的项目了:
在Eclipse的控制台,我们可以清楚地看到项目启动的整个过程:
嘿嘿,OK了。我们的项目已经搭建成功,打开一个浏览器,在地址栏中输入:
http://127.0.0.1:8080/MyTapestry4/app
其实搭建Tapestry4项目,很简单吧?^0^J
如果按照上面的配置浏览网页时发生异常:java.lang.UnsupportedClassVersionError: Bad version number in .class file
请查看你的Myeclipse使用的Java Compile环境要和你使用的JDK环境一致。