jbpm+jboss+oracle9i配置
目錄
3.1.4. create.db.hibernate.properties. 5
3.2.3. 更簡單的更新JBoss jBPM服務器配置的方法... 8
1. 環境
JDK: J2SDK1.5.05
IDE: Eclipse3.2.1
jboss: jboss-4.0.3SP1
jBPM: jbpm-starters-kit-3.1.2
Database:Oracle9i
2. 下載和安裝
2.1. 安裝JDK1.5.06
http://java.sun.com/下載JDK1.5.06安裝文件。
安裝JDK1.5.06。在系統環境變量中設置JAVA_HOME,並指向JDK1.5.06安裝目錄。
2.2. 安裝Eclipse3.2.1
去www.eclipse.org下載Eclipse3.2.1壓縮包。
將下載的Eclipse3.2壓縮包,解壓到系統某個目錄(E:/java/eclipse-SDK-3.2.1-win32),後面稱爲ECLIPSE_HOME。
2.3. 下載jBPM3.1.2
jBPM的下載地址:http://www.jboss.com/products/jbpm/downloads
JBoss jBPM是jBPM 的軟件包
JBoss jBPM Starters Kit是一個綜合包,它包括了jBPM軟件包、開發插件、一個配置好了的基於JBoss的jBPM示例、一些數據庫配置文件示例。
JBoss jBPM Process Designer Plugin是輔助開發jBPM的Eclipse 插件。
JBoss jBPM BPEL Extension jBPM關於BPEL的擴展包
下載JBoss jBPM Starters Kit 3.1.2。解壓到系統某個目錄(E:/java/jbpm-starters-kit-3.1.2)。目錄下含有五個子目錄:
l jbpm jBPM的軟件包,包含源碼,例子等文件內容。
l jbpm-bpel只含有一個網頁
l jbpm-db各種數據庫hibernate配置文件示例,有些還包含了相應的jdbc驅動程序。
l jbpm-designer輔助開發jBPM的Eclipse插件,具體在jbpm-gpd-feature子目錄中
l jbpm-server一個已經配置好了的基於JBoss的jBPM示例。
2.4. 下載jboss
到www.jboss.com
下載jboss-4.0.3SP1.zip。解壓到系統某個目錄(E:/java/jboss-4.0.3SP1)。在系統環境變量中設置JBOSS_HOME
2.4.1. JBoss的目錄
dir description
bin 啓動和關閉JBoss的腳本
client 客戶端與JBoss通信所需的的Java庫(JARs)
docs 配置的樣本文件(數據庫配置等)
docs/dtd 在JBoss中使用的各種XML文件的DTD
lib 一些JAR,JBoss啓動時加載,且被所有JBoss配置共享(不要把你的庫放在這裏)
server 各種JBoss配置。每個配置必須放在不同的子目錄。子目錄的名字表示配置的名字。JBoss包含3個默認的配置:minimial,default和all。
server/all JBoss的完全配置,啓動所有服務,包括集羣和IIOP。
server/default JBoss的默認配置。 在沒有在JBoss命令航中指定配置名稱時使用。
server/default/conf JBoss的配置文件。下一節你會學習到更多關於其內容的知識。
server/default/data JBoss的數據庫文件。比如,嵌入的數據庫,或者JBossMQ
server/default/deploy JBoss的熱部署目錄。放到這裏的任何文件或目錄會被JBoss自動部署。EJB、WAR、EAR,甚至服務。
server/default/lib 一些JAR,JBoss在啓動特定配置時加載他們。 (all和minimial配置也包含這個和下面兩個目錄。)
server/default/log JBoss的日誌文件。
server/default/tmp JBoss的臨時文件。
如果你想要定義自己的配置,要先在server目錄下創建一個新的包含適當文件的子目錄。
然後,啓動時可用-c參數指定要啓動的配置:
Windows:
>run.bat -c serverName
Unix:
$ ./run.sh -c serverName
2.4.2. JBoss配置文件
JBoss的server目錄可以包含任意數目的目錄,每個表示一個不同的JBoss配置。
server/serverName/conf目錄包含JBoss的配置文件表
JBoss的配置文件
file description
jacorb.properties JBoss IIOP 配置
jbossmq-state.xml JBossMQ(JMS的實現)用戶配置
jboss-service.xml 啓動時運行的JBoss的服務的定義(class loader,JNDI,deployer等)
log4j.xml Log4J的配置
login-config.xml JBoss安全配置(JBossSX)
standardjaws.xml JBoss的遺留CMP 1.1引擎的默認配置。包含對各種數據庫的JDBC-to-SQL的映射信息,默認CMP設置,日誌配置等。
standardjbosscmp-jdbc.xml 除了被用於JBoss的CMP 2.0引擎之外,與standardjaws.xml相同.
2.5. Oracle 9I
解設Oracle 9i已安裝在192.168.0.5上,SID爲ORCL。並建個一個JBPM用戶,密碼也爲JBPM。
3. 配置
3.1. jBPM配置
3.1.1. build.properties
改E:/java/jbpm-starters-kit-3.1.2下jbpm爲jbpm.3
設置jbpm.3根目錄下build.properties的路徑。
如:
# jbpm.version only used for creating javadocs and the distribution package
jbpm.version=3.1.2
# ant.home is only used in the ant.install.libs target for copying the junit and clover libs
ant.home=E://java//apache-ant-1.6.5
# jbpm.home is only to allow build scripts to open the browser with the html test results
jbpm.home=E://java//workspace//jbpm.3
# jboss config proper only used for deployment
jboss.home=E://java//jboss-4.0.3SP1
jboss.version=4.0.x
jboss.source.configuration=default
注:必須是絕對路徑。
3.1.2. 導入工程
啓動eclipse,通過“Import”將jBPM工程導入eclipse中。選擇已經存在的工程。
3.1.3. 添加Oracle驅動
將Oracle需要的JDBC驅動程序拷貝到jbpm.3的lib/jboss。
如Oracle 9i就是ojdbc14.jar
3.1.4. create.db.hibernate.properties
在工程jbpm.3的src/resources目錄下複製一份hsqldb,並改名爲Oracle。該目錄的文件有create.db.hibernate.properties和identity.db.xml。
修改create.db.hibernate.properties爲:
# these properties are used by the build script to create
# a hypersonic database in the build/db directory that contains
# the jbpm tables and a process deployed in there
hibernate.dialect=org.hibernate.dialect.Oracle9Dialect
# for Oracle 8 compatibility use
#hibernate.dialect=org.hibernate.dialect.OracleDialect
hibernate.connection.driver_class=oracle.jdbc.driver.OracleDriver
hibernate.connection.url=jdbc:oracle:thin:@192.168.0.5:1521:orcl
hibernate.connection.username=jbpm
hibernate.connection.password=jbpm
hibernate.show_sql=true
hibernate.c3p0.min_size=1
hibernate.c3p0.max_size=3
hibernate.query.substitutions=true 1, false 0
3.1.5. 修改build.deploy.xml
在eclipse中打開工程jbpm.3下的build.deploy.xml文件,在
<target name="create.db" depends="declare.jbpm.tasks, db.clean, db.start"
description="creates a hypersonic database with the jbpm tables and loads the processes in there">
之前,添加如下內容:
<target name="create.db.oracle" depends="declare.jbpm.tasks" description="creates a oracle database with the jbpm tables and loads the processes in there. Run this target after starting oracle">
<jbpmschema actions="create" cfg="${basedir}/src/config.files/hibernate.cfg.xml" properties="${basedir}/src/resources/oracle/create.db.hibernate.properties" />
<loadidentities file="${basedir}/src/resources/oracle/identity.db.xml" cfg="${basedir}/src/config.files/hibernate.cfg.xml" properties="${basedir}/src/resources/oracle/create.db.hibernate.properties" />
<ant antfile="build.xml" target="build.processes" inheritall="false" />
<deployprocess cfg="${basedir}/src/config.files/hibernate.cfg.xml" properties="${basedir}/src/resources/oracle/create.db.hibernate.properties">
<fileset dir="build" includes="*.process" />
</deployprocess>
</target>
3.1.6. 生成庫表
在eclipse中,右鍵點擊工程jbpm.3下的build.deploy.xml文件,在菜單中選擇“Run As/Ant Build…”,在出現的窗口中選擇“target”爲“create db oracle”,然後點擊“Run”按鈕,開始運行Ant。
等運行完畢後,可以在Oracle中查看到相應得數據庫表結構已經建立,並且已經部署了websale需要用到的流程信息。
3.1.7. 建立web運行需要內容
3.1.7.1. 修改hibernate.cfg.xml
在eclipse中打開工程jbpm.3下的src/config.files目錄下的hibernate.cfg.xml文件,修改其中的內容爲:
<property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@192.168.0.5:1521:orcl</property>
<property name="hibernate.connection.username">jbpm</property>
<property name="hibernate.connection.password">jbpm</property>
<property name="hibernate.query.substitutions">true 1, false 0</property>
<!-- other hibernate properties -->
<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">true</property>
<property name="hibernate.use_sql_comments">true</property>
注意,只修改跟數據庫連接有關的內容,這裏你可以根據自己數據庫的不同,而建立不同的hibernate連接。
3.6.3 打包成war文件
在eclipse中,右鍵點擊工程jbpm.3下的build.deploy.xml文件,在菜單中選擇“Run As/Ant Build…”,在出現的窗口中選擇“target”爲“build webapp”,然後點擊“Run”按鈕,開始運行Ant。
3.2. JBoss
3.2.1. 配置
在JBOSS_HOME/server下,複製一份default,並改名爲jbpm。
我Java學得很菜,就這換個數據庫都搞了很久。原來是複製E:/java/jbpm-starters-kit-3.1.2/jbpm-server下的jbpm。沒搞成,就換成這個了。
複製ojdbc14.jar到JBOSS_HOME/server/jbpm/lib。
複製JBOSS_HOME/docs/examples/jca/oracle-ds.xml到JBOSS_HOME/server/jbpm/deploy,並修改oracle-ds.xml以下內容:
<connection-url>jdbc:oracle:thin:@192.168.0.5:1521:orcl</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>syc</user-name>
<password>syc</password>
修改JBOSS_HOME/server/jbpm/conf/standardjbosscmp-jdbc.xml以下內容:
<defaults>
<datasource>java:/OracleDS</datasource>
<datasource-mapping>Oracle9i</datasource-mapping>
注意:oracle-ds.xml的<type-mapping>Oracle9i</type-mapping>,standardjbosscmp-jdbc.xml的<datasource-mapping>Oracle9i</datasource-mapping>要跟standardjbosscmp-jdbc.xml的<datasource-mapping>Oracle9i</datasource-mapping>中的
<type-mapping><name>Oracle9i</name>…</type-mapping>一致。
3.2.2. 發佈應用
複製jbpm.sar到D:/jboss/server/default/deploy
複製jbpm.war到D:/jboss/server/default/deploy
說明:測試通過後這個war可以刪除了
啓動JBoss測試一下,http://localhost:8080/jbpm/
在瀏覽器中輸入地址http://localhost:8080/jbpm,出現登錄頁面,配置成功。
3.2.3. 更簡單的更新JBoss jBPM服務器配置的方法
複製E:/java/jbpm-starters-kit-3.1.2/jbpm-server下的jbpm到JBOSS_HOME/server下。
複製ojdbc14.jar到JBOSS_HOME/server/jbpm/lib。
1. 複製JBOSS_HOME/docs/examples/jca/oracle-ds.xml到JBOSS_HOME/server/jbpm/deploy,並修改oracle-ds.xml以下內容:
<connection-url>jdbc:oracle:thin:@192.168.0.5:1521:orcl</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>syc</user-name>
<password>syc</password>
2. 修改'${JBPM_SDK_HOME}/jbpm-server/server/jbpm/deploy/jbpm.sar/META-INF/jboss-service.xml'中的'DefaultDS'爲'OracleDS'。
3. 修改
'${JBPM_SDK_HOME}/jbpm-server/server/jbpm/deploy/jbpm.sar/jbpm.sar.cfg.jar/hibernate.cfg.xml'文件:
<property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
<property name="hibernate.connection.datasource">java:/OracleDS</property>
4. 參考資料:
http://blog.csdn.net/hpangit/archive/2006/12/15/1444039.aspx
http://www.cnpoint.com/framwwork/2006/1027/content_4503.htm
精通JBoss-EJB與Web Services開發精解,電子工業出版社,劉洋,魏飛等。
文章出自:傑克