Thanks monkeyden. As I wrote, I have been trying various combinations of the things you
mention while I try to learn how to develop a Seam application, about JBoss and
Hibernate.
The idea is to have 2 separate databases; one to store the dvdstore business data only (my
dvdstore hsqldb database) and the other, only for jBPM's use (my jBPM hsqldb
database).
For all EntityManger declarations in the java code I have added
unitName="dvdDatadtabase" to the PersistenceContext annotation ( eg in the
AcceptAction class I have
|
@PersistenceContext(unitName="dvdDatabase",type=PersistenceContextType.EXTENDED)
| EntityManager em;
| ).
I am running hsqldb in server mode (ie the jdbc driver and urls have been changed). I
delete both databases manually, undeploy and then deploy the application (using the ant
scripts which work perfectly well before I change the database settings). However, on
successful deployment, my jBPM database has all the domain tables (ORDERS etc) and my
dvdsore database has both sets of tables jBPM tables (ORDERS etc, plus, JBPM_EVENT etc).
The key config I have added/changed (in bold in the config files below) are
1 - In persistence.xml I have added a new persistence-unit
name="dvdDatabasejBPM" pointing at the jBPM database
2 - In dvd-ds.xml I have added a new local-tx-datasource with jndi-name dvdDatasourcejBPM
3 - I have created jBPM.hibernate.cfg.xml, which is exactly the same as the
hibernate.cfg.xml except have changed the connection.datasource property to
java:/dvdDatasourcejBPM (I have not changed hibernate.cfg.xml)
4 - I have added to jBPM.cfg.xml .
Nothing else has changed and all the files are packaged up correctly in the ear and
contained war and jar.
Any ideas on what I am missing? Is there something I can read that tells me the
relationships between all these files (and if settings in any of them take precedence over
the other) and the differences between seam managed and other database settings?
Here are my configuration files:
--------------------------------------------------------
persistence.xml
| <?xml version="1.0" encoding="UTF-8"?>
| <persistence
xmlns="http://java.sun.com/xml/ns/persistence"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
| version="1.0">
| <persistence-unit name="dvdDatabase">
| <provider>org.hibernate.ejb.HibernatePersistence</provider>
| <jta-data-source>java:/dvdDatasource</jta-data-source>
| <properties>
| <property name="hibernate.hbm2ddl.auto"
value="create-drop"/>
| <property name="hibernate.cache.use_query_cache"
value="true"/>
| <property name="hibernate.show_sql" value="true"/>
|
| <property name="hibernate.cache.provider_class"
| value="org.hibernate.cache.HashtableCacheProvider"/>
| </properties>
| </persistence-unit>
| <persistence-unit name="dvdDatabasejBPM">
| <provider>org.hibernate.ejb.HibernatePersistence</provider>
| <jta-data-source>java:/dvdDatasourcejBPM</jta-data-source>
| <properties>
| <property name="hibernate.hbm2ddl.auto"
value="create-drop"/>
| <property name="hibernate.cache.use_query_cache"
value="true"/>
| <property name="hibernate.show_sql" value="true"/>
|
| <property name="hibernate.cache.provider_class"
| value="org.hibernate.cache.HashtableCacheProvider"/>
| </properties>
| </persistence-unit>
| </persistence>
|
--------------------------------------------------------
dvd-ds.xml
<?xml version="1.0" encoding="UTF-8"?>
|
| <datasources>
| <local-tx-datasource>
| <jndi-name>dvdDatasource</jndi-name>
|
<!--<connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}dvd</connection-url>
-->
| <connection-url>
| jdbc:hsqldb:hsql://localhost/dvd_server
| </connection-url>
| <driver-class>org.hsqldb.jdbcDriver</driver-class>
| <user-name>sa</user-name>
| <password></password>
| </local-tx-datasource>
|
| <local-tx-datasource>
| <jndi-name>dvdDatasourcejBPM</jndi-name>
| <connection-url>
| jdbc:hsqldb:hsql://localhost/jBPM
| </connection-url>
| <driver-class>org.hsqldb.jdbcDriver</driver-class>
| <user-name>sa</user-name>
| <password></password>
| </local-tx-datasource>
|
| </datasources>
--------------------------------------------------------
jBPM.cfg.xml
<jbpm-configuration>
|
| <jbpm-context>
| <string name="resource.hibernate.cfg.xml"
value="jbpm.hibernate.cfg.xml" />
| <service name="persistence">
| <factory>
| <bean
class="org.jbpm.persistence.db.DbPersistenceServiceFactory">
| <field
name="isTransactionEnabled"><false/></field>
| </bean>
| </factory>
| </service>
| <service name="message"
factory="org.jbpm.msg.db.DbMessageServiceFactory" />
| <service name="scheduler"
factory="org.jbpm.scheduler.db.DbSchedulerServiceFactory" />
| <service name="logging"
factory="org.jbpm.logging.db.DbLoggingServiceFactory" />
| <service name="authentication"
factory="org.jbpm.security.authentication.DefaultAuthenticationServiceFactory"
/>
| </jbpm-context>
|
| </jbpm-configuration>
--------------------------------------------------------
jBPM.hibernate.cfg.xml
<?xml version='1.0' encoding='utf-8'?>
|
| <!DOCTYPE hibernate-configuration PUBLIC
| "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
|
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
|
| <hibernate-configuration>
| <session-factory>
|
| <property name="show_sql">true</property>
| <property
name="connection.datasource">java:/dvdDatasourcejBPM</property>
| <property
name="transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property>
| <property
name="transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property>
| <property
name="cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
| <property name="hbm2ddl.auto">create-drop</property>
| <!--property
name="transaction.flush_before_completion">true</property-->
|
| <!-- ############################################ -->
| <!-- # mapping files with external dependencies # -->
| <!-- ############################################ -->
|
| <!-- following mapping file has a dependendy on -->
| <!-- 'bsh-{version}.jar'. -->
| <!-- uncomment this if you don't have bsh on your -->
| <!-- classpath. you won't be able to use the -->
| <!-- script element in process definition files -->
| <!--
| <mapping resource="org/jbpm/graph/action/Script.hbm.xml"/>
| -->
|
| <!-- following mapping files have a dependendy on -->
| <!-- 'jbpm-identity-{version}.jar', mapping files -->
| <!-- of the pluggable jbpm identity component. -->
| <!-- comment out the following 3 lines if you don't-->
| <!-- want to use the default jBPM identity mgmgt -->
| <!-- component -->
|
| <!--
| <mapping resource="org/jbpm/identity/User.hbm.xml"/>
| <mapping resource="org/jbpm/identity/Group.hbm.xml"/>
| <mapping resource="org/jbpm/identity/Membership.hbm.xml"/>
| -->
|
| <!-- ###################### -->
| <!-- # jbpm mapping files # -->
| <!-- ###################### -->
|
| <!-- hql queries and type defs -->
| <mapping resource="org/jbpm/db/hibernate.queries.hbm.xml" />
|
| <!-- graph.def mapping files -->
| <mapping
resource="org/jbpm/graph/def/ProcessDefinition.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Node.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Transition.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Event.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Action.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/SuperState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/ExceptionHandler.hbm.xml"/>
| <mapping resource="org/jbpm/instantiation/Delegation.hbm.xml"/>
|
| <!-- graph.node mapping files -->
| <mapping resource="org/jbpm/graph/node/StartState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/EndState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/ProcessState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/Decision.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/Fork.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/Join.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/State.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/TaskNode.hbm.xml"/>
|
| <!-- context.def mapping files -->
| <mapping
resource="org/jbpm/context/def/ContextDefinition.hbm.xml"/>
| <mapping resource="org/jbpm/context/def/VariableAccess.hbm.xml"/>
|
| <!-- taskmgmt.def mapping files -->
| <mapping
resource="org/jbpm/taskmgmt/def/TaskMgmtDefinition.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/def/Swimlane.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/def/Task.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/def/TaskController.hbm.xml"/>
|
| <!-- module.def mapping files -->
| <mapping
resource="org/jbpm/module/def/ModuleDefinition.hbm.xml"/>
|
| <!-- bytes mapping files -->
| <mapping resource="org/jbpm/bytes/ByteArray.hbm.xml"/>
|
| <!-- file.def mapping files -->
| <mapping resource="org/jbpm/file/def/FileDefinition.hbm.xml"/>
|
| <!-- scheduler.def mapping files -->
| <mapping
resource="org/jbpm/scheduler/def/CreateTimerAction.hbm.xml"/>
| <mapping
resource="org/jbpm/scheduler/def/CancelTimerAction.hbm.xml"/>
|
| <!-- graph.exe mapping files -->
| <mapping resource="org/jbpm/graph/exe/Comment.hbm.xml"/>
| <mapping resource="org/jbpm/graph/exe/ProcessInstance.hbm.xml"/>
| <mapping resource="org/jbpm/graph/exe/Token.hbm.xml"/>
| <mapping resource="org/jbpm/graph/exe/RuntimeAction.hbm.xml"/>
|
| <!-- module.exe mapping files -->
| <mapping resource="org/jbpm/module/exe/ModuleInstance.hbm.xml"/>
|
| <!-- context.exe mapping files -->
| <mapping
resource="org/jbpm/context/exe/ContextInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/TokenVariableMap.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/VariableInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/ByteArrayInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/DateInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/DoubleInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/HibernateLongInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/HibernateStringInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/LongInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/NullInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/StringInstance.hbm.xml"/>
|
| <!-- msg.db mapping files -->
| <mapping resource="org/jbpm/msg/Message.hbm.xml"/>
| <mapping resource="org/jbpm/msg/db/TextMessage.hbm.xml"/>
| <mapping
resource="org/jbpm/command/ExecuteActionCommand.hbm.xml"/>
| <mapping resource="org/jbpm/command/ExecuteNodeCommand.hbm.xml"/>
| <mapping resource="org/jbpm/command/SignalCommand.hbm.xml"/>
| <mapping
resource="org/jbpm/command/TaskInstanceEndCommand.hbm.xml"/>
|
| <!-- taskmgmt.exe mapping files -->
| <mapping
resource="org/jbpm/taskmgmt/exe/TaskMgmtInstance.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/exe/TaskInstance.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/exe/PooledActor.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/exe/SwimlaneInstance.hbm.xml"/>
|
| <!-- scheduler.exe mapping files -->
| <mapping resource="org/jbpm/scheduler/exe/Timer.hbm.xml"/>
|
| <!-- logging mapping files -->
| <mapping resource="org/jbpm/logging/log/ProcessLog.hbm.xml"/>
| <mapping resource="org/jbpm/logging/log/MessageLog.hbm.xml"/>
| <mapping resource="org/jbpm/logging/log/CompositeLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/ActionLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/NodeLog.hbm.xml"/>
| <mapping
resource="org/jbpm/graph/log/ProcessInstanceCreateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/graph/log/ProcessInstanceEndLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/SignalLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/TokenCreateLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/TokenEndLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/TransitionLog.hbm.xml"/>
| <mapping resource="org/jbpm/context/log/VariableLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/VariableCreateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/VariableDeleteLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/VariableUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/ByteArrayUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/DateUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/DoubleUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/HibernateLongUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/HibernateStringUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/LongUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/StringUpdateLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskCreateLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskAssignLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskEndLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/SwimlaneLog.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/log/SwimlaneCreateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/log/SwimlaneAssignLog.hbm.xml"/>
|
| </session-factory>
| </hibernate-configuration>
|
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4031293#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...