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开发精解,电子工业出版社,刘洋,魏飞等。
文章出自:杰克