-
1. Re: deploy from code problem
kukeltje May 15, 2007 4:23 AM (in response to simonbaker)no, not yet
-
2. Re: deploy from code problem
estaub May 15, 2007 7:56 AM (in response to simonbaker)Simon,
Some things are done in the starter kit that aren't in the engine when it's used separately. As I recall, the starter kit builds the schema on the fly in the in-memory HQSL database. I don't know where that's done, but it's not in the engine per se.
The next thing you're likely to wonder is "Where's Cookie Monster?".
See http://wiki.jboss.org/wiki/Wiki.jsp?page=UseHibernateToCreateJbpmDB
-Ed Staub -
3. Re: deploy from code problem
simonbaker May 15, 2007 1:12 PM (in response to simonbaker)Thanks Ed for the reference, each little piece sheds some light (and more questions as well).
For the heck of it, I blindly threw in a "JbpmConfiguration.createSchema()" statement in my code because, hey, it sounds promising...
Guess what, my errors went away and my logging shows a lot of insert statements into what appear to be tables with names like JBPM_NODE, JBPM_EVENT, etc.
Did I do good?
Now, when I look at the (outdated?) jBPM 2.0 Deployment Doc, under Configuration it describes 4 configuration mechanisms and some properties. One of the properties is "jbpm.create.tables" and a possible value is "only-if-not-present". The description isIf applicable, jbpm will create the the JBPM_ tables at startup if they are not present. The generated ddl starts with dropping the tables and contraints, then creates the tables, then adds the constraints.
Q: If I had had this property in my "jbpm.cfg.xml" file, would the schema have been created automatically at first access?
To continue the discussion:
For my bare-bones test, my "jbpm.cfg.xml" file is empty, and the comment in it saysThe default configurations can be found in org/jbpm/default.jbpm.cfg.xml
Those configurations can be overwritten by putting this file called
jbpm.cfg.xml on the root of the classpath and put in the customized values.
Q: Does that mean that jBPM first reads the default file, then reads the "jbpm.cfg.xml" file and overrides any repeated settings, or does it mean that if the "jbpm.cfg.xml" file is present, the default file is ignored?
Also, when I look in that default file, there is a comment in it that saysThis configuration is used when there is no jbpm.cfg.xml file found in the root of the classpath. It is a very basic configuration without persistence and message services. Only the authorization service installed.
You can parse and create processes, but when you try to use one of the unavailable services, you'll get an exception.
Two issues: 1) The first sentence seems to imply that the default file is completely ignored when the "jbpm.cfg.xml" file is present -- implying you need to copy any settings from the default file to the "jbpm.cfg.xml" if you want to use them, and 2) the comment says "without persistence", but the file has entries for persistence service and hibernate (see below).
Q: Is the comment correct that there is no persistence set up?<jbpm-configuration> <!-- This configuration is used when there is no jbpm.cfg.xml file found in the root of the classpath. It is a very basic configuration without persistence and message services. Only the authorization service installed. You can parse and create processes, but when you try to use one of the unavailable services, you'll get an exception. --> <jbpm-context> <service name="persistence" factory="org.jbpm.persistence.db.DbPersistenceServiceFactory" /> <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> <!-- configuration resource files pointing to default configuration files in jbpm-{version}.jar --> <string name="resource.hibernate.cfg.xml" value="hibernate.cfg.xml" /> <string name="resource.business.calendar" value="org/jbpm/calendar/jbpm.business.calendar.properties" /> <string name="resource.default.modules" value="org/jbpm/graph/def/jbpm.default.modules.properties" /> <string name="resource.converter" value="org/jbpm/db/hibernate/jbpm.converter.properties" /> <string name="resource.action.types" value="org/jbpm/graph/action/action.types.xml" /> <string name="resource.node.types" value="org/jbpm/graph/node/node.types.xml" /> <string name="resource.parsers" value="org/jbpm/jpdl/par/jbpm.parsers.xml" /> <string name="resource.varmapping" value="org/jbpm/context/exe/jbpm.varmapping.xml" /> <long name="jbpm.msg.wait.timout" value="5000" singleton="true" /> <int name="jbpm.byte.block.size" value="1024" singleton="true" /> <string name="mail.smtp.host" value="localhost" /> <bean name="jbpm.task.instance.factory" class="org.jbpm.taskmgmt.impl.DefaultTaskInstanceFactoryImpl" singleton="true" /> <bean name="jbpm.variable.resolver" class="org.jbpm.jpdl.el.impl.JbpmVariableResolver" singleton="true" /> <bean name="jbpm.mail.address.resolver" class="org.jbpm.identity.mail.IdentityAddressResolver" singleton="true" /> </jbpm-configuration>
-
4. Re: deploy from code problem
estaub May 15, 2007 2:05 PM (in response to simonbaker)Simon,
Sorry, I'd have to research all of these to answer - no time.
-Ed Staub -
5. Re: deploy from code problem
simonbaker May 15, 2007 2:26 PM (in response to simonbaker)Thanks, I'll keep researching it.
-
6. Re: deploy from code problem
kukeltje May 15, 2007 5:32 PM (in response to simonbaker)FORGET THE JBPM 2.0 DEPLOYMENT DOC. IT IS THE "DEPLOYMENT DOC FOR JBPM 2.0", NOT THE "DEPLOYMENT DOC FOR JBPM 3.2" v2.0
SO YES IT IS OUTDATED.....