最近准備研究下Seam框架,主要是專注一下JBPM集成部分的內容。由於Seam是Jboss的產品,所以官方推薦使用JBoss應用服務器。個人認為那東西太大有100多MB,懶得下載! 查看了下Seam文檔,上面說可以使用Tomcat+嵌入式JBoss,這個比較爽,嵌入式JBoss才20MB。下面記錄一下配置過程。 我的機器環境
軟件 版本 OS Win7專業版 JDK 1.6.0_18-b07 TOMCAT 6.0.24 embedded-jboss beta3.SP10 Seam Framework 2.2.1.CR1 ANT 1.7.1
之所以說明下我的機器環境,是因為配置工作和軟件本版有很大關系,希望同行們盡量少走彎路!
嵌入式JBoss ++-→ Tomcat
把嵌入式JBoss裝載到Tomcat中:
下載嵌入式Jboss,解壓後把bootstrap和lib目錄下所有內容,除了jndi.properties文件以外, 都拷貝到Tomcat的lib目錄下。 從Tomcat的 lib 目錄中移除 annotations-api.jar 文件
接下來,需要更新兩個配置文件,用來增加嵌入式JBoss特有的功能。
將嵌入式JBoss listener增加到 conf/server.xml 中。它在文件中應該排列在所有其他listener的後面
<Server port="8005" shutdown="SHUTDOWN"> <!-- Comment these entries out to disable JMX MBeans support used for the administration web application --> <Listener className="org.apache.catalina.core.AprLifecycleListener" /> <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" /> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> <Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener" /> <!-- 加入嵌入式JBoss監聽器 --> <Listener className="org.jboss.embedded.tomcat.EmbeddedJBossBootstrapListener" />
應該通過增加一個listener到 conf/context.xml 文件中來啟用WAR文件掃描功能。
<Context> <!-- Default set of monitored resources --> <WatchedResource>WEB-INF/web.xml</WatchedResource> <!-- Uncomment this to disable session persistence across Tomcat restarts --> <!-- <Manager pathname="" /> --> <!-- 加入嵌入式JBoss監聽器 --> <Listener className="org.jboss.embedded.tomcat.WebinfScanner" /> </Context>
如果你使用JDK6,你需要在環境變量中設置JAVA_OPTS=-Dsun.lang.ClassLoader.allowArraySyntax=true,Win7中設置如下圖:
至此所有配置完成,可以在Tomcat下部署Seam應用了。 3. 部署Seam DVD Store樣例應用 部署Seam的樣例應用非常簡單,只需兩步: 解壓下載的Seam包,編輯build/default.build.properties文件,設置tomcat.home。我的是這個樣子:
# Use this properties file to set default properties for Seam. # They can be overridden in ../build.properties # # The default qualifier is -SNAPSHOT # # Seam Version # ------------ major.version 2 minor.version .2 patchlevel .1 qualifier .CR1 # # Other program locations # ----------------------- jboss.home /Applications/jboss-5.1.0.GA tomcat.home G:\\dev\\jboss\\apache-tomcat-6.0.24
先確保你安裝了Ant,進入examples\dvdstore目錄下執行:
ant tomcat.deploy
Ok!不出意外的話樣例就部署成功了,趕快打開鏈接http://localhost:8080/jboss-seam-dvdstore看看吧! 應該是下面的樣子: