jbpm工程结构等 诸多问题

jiafeijiafeijiafeijf 2009-06-25 04:55:50
小弟最近刚刚开始研究JBPM,准备建立第一个自己的基于JBPM功能的项目,
目前遇到以下问题,劳烦高手帮忙指点。
问题1、我的myeclipse安装了JBPM插件以后,创建一个jbom工程出现下图情况:

其中的src/main/config文件夹下没有自动生成的配置文件,据我了解网上说这里会自动生成4个配置文件,说其中包括一个hibernate的配置文件,这个我不太理解,但是我个人认为最少应该生成一个jbpm.cfg.xml的配置文件吧。很难明白。还有大家看看我的工程结构是否正确。如果不正确请提醒。非常的感谢
问题2、本人在网上down了一个别人的基于ssh框架整合的JBPM工程,他的工程结构与我的工程结构不同,是我们正常的myeclipse工程的结构,这里如何引入的jbpm的却是很让人费解。如下图:

问题3、JBPM工程的配置文件是如何加载的?非常的不明白,我看的DEMO里面,他的数据库表结构是在项目加载时自动在指定的数据库里面创建的,小弟找了很久很久都没有找到生成表结构的sql文,目前理解为在hibernate中有反向导出功能,在配置好
< mapping resource="**/**/***.hbm.xml" />
后会自动反向在指定的数据库创建对应的表。不知道小弟在这里理解是否正确。
问题4、创建的process definition配置好流程后,如何在项目中加载它,并在WEB程序中通过STRUTS调用配置好的“流程”,完全的看不明白。
最后希望各位能够帮助我了解下JBPM在工程中加载和调用的规则,网上的例子看了不少。但是恕小弟愚钝,没完全看明白,只明白怎么在官方的DEMO内创建一个自己的流程,由于时间紧迫希望各位大侠伸出侠义之手。
...全文
197 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
16楼说的有道理,最近忘记关注这个帖子了,要先在配置环境时指定到JBPM安装环境,这样才能成功创建出配置文件。
jiaofei3385140 2009-07-13
  • 打赏
  • 举报
回复
jbpm刚开始学真的感觉很让人迷茫阿,很是不懂里面的深层意义。现在还是不太明白,即便有工程可以参考,但效果甚微阿!!希望共同研究,才能进步更快吗!加我QQ532033124
APOLLO_TS 2009-07-13
  • 打赏
  • 举报
回复
没有配置运行时定位。
  • 打赏
  • 举报
回复
多谢各位关注,一同进步
sunshine_99 2009-07-10
  • 打赏
  • 举报
回复
楼主能加我qq么,798577966,请注明sddn-jbpm,我最近也在学,希望共同研究
  • 打赏
  • 举报
回复
有高手能告诉我,怎么设置才能让hibernate不自动创建表结构嘛,我把<property name="hibernate.hbm2ddl.auto">update</property>,hibernate还是自动创建表结构,数据老丢失,太郁闷了。
  • 打赏
  • 举报
回复
‘小鸟’,你知道在创建jbpm project时,下面有个location .也就是我前面说的
1、window-->preferences-->Jboss jBPM -->runtime locations-->add-->选择jbpm安装文件下的jbpm.3

有什么意义嘛?为什么不配这个就不能完全生成完整的工程呢?
  • 打赏
  • 举报
回复
哦,有点印象了,我好像在网上什么地方看到过,说什么配置文件被换成了jbpm.mail.templates.xml,这个文件。
zoutuo 2009-06-26
  • 打赏
  • 举报
回复
是不是版本的关系?我用的是3.2版,没有你说的ehcache.xml,取而代之的是jbpm.mail.templates.xml
  • 打赏
  • 举报
回复
恩,这个版块确实很冷清,第一个问题我找到答案了
我的插件安装是没有问题的,主要问题是在这里
1、window-->preferences-->Jboss jBPM -->runtime locations-->add-->选择jbpm安装文件下的jbpm.3(原文件为jbpm,修改为jbpm.3,以便进行其他配置)文件夹。确定完成,这时创建工程就会有配置文件出现:
hibernate.cfg.xml
jbpm.cfg.xml jbpm
log4j.properties
但是缺少一个文件,缺少文件为:
ehcache.xml
原因目前不明
zoutuo 2009-06-26
  • 打赏
  • 举报
回复
第一点我安装插件的方法是这样的:进入MyEclipse——Help——Software Updates——Find and Install——Search for new features to install——Next——New Local Site——选择jbpm的eclipse目录——ok。然后还有一系列操作。重启Myeclipse,安装成功。
至于第三点,启动tomcat的时候,我也不清楚为什么要创建表。也很费解。。。
补充的那点:加载xml文件时,因为helloworld.xml是在根目录下的,所以无需指明路径。
我也初学,差的还很多。这个版块太冷清了。没人来。
  • 打赏
  • 举报
回复
2009-6-26 14:41:11 org.jbpm.JbpmConfiguration getInstance
信息: using jbpm configuration resource 'jbpm.cfg.xml'
2009-6-26 14:41:11 org.jbpm.jpdl.xml.JpdlXmlReader addWarning
警告: process xml warning: warning: no swimlane or assignment specified for task '<task name="填写表格"/>'
谢谢‘小鸟’,我将我的第一个xml文加载成功了,上面是报的信息。
ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("HelloWorld/processdefinition.xml"); 这里是需要加上路径了。
  • 打赏
  • 举报
回复
补充问下,加载JBPM的XML对象时,不需要知道路径吗?程序自动定位?
  • 打赏
  • 举报
回复
首先感谢‘小鸟’,解释的非常的详细
1、我创建的是project工程,这个可以肯定。我现在用的是jbpm-starters-kit-3.1.4这个版本的,我插件安装是这样子的,首先在‘C:\Program Files\MyEclipse 6.5’下面创建了以个JBPM文件夹,之后将插件中的‘features’,‘plugins’这两个文件夹copy到‘C:\Program Files\MyEclipse 6.5\jbpm’下面;然后再‘C:\Program Files\MyEclipse 6.5\eclipse\links’文件夹下创建了一个jbpm-designer.link文件,内容如下:
path=C:\\Program Files\\MyEclipse 6.5\\jbpm
之后我的myeclipse就能够创建一个jbpm project工程了,但是缺少自动生成的配置文件。
2、你说的比较有道理,估计也是如此
3、关于数据库直接加载,我在我的电脑上的‘D:\jbpm-starters-kit-3.1.4\jbpm-db\build\mysql\scripts’这个目录下面看到了mysql数据库表创建的sql文,但是这个是个绝对路径啊,工程不可能直接找到他的,我也没在DEMO里面看到他把这个文件COPY到工程中,也没有看到spring初始化的时候进行加载,但是在我哦tomcat启动的时候DEMO工程确实吧所有的表重新创建了一遍。很费解啊。
4、非常感谢‘小鸟’,让我对jbpm的XML对象有进一步的了解。
非常的感谢
zoutuo 2009-06-26
  • 打赏
  • 举报
回复
1、你创建的是否为 Process project?如果是,那就应该是你插件安装的问题。试问一下 你用的是哪个版本?
2、jbpm工程可以移植到标准的web工程上面。你看的那个demo有可能是移植后的工程例子。在移植前都是用Process project创建的工程。都是之后复制粘贴过去的。
3、这个问题不好说,建议你去下载网上的pdf文档看看helloworld的例子。推荐大小为2004kb的pdf文档。
4、
public class HelloWorldTest extends TestCase {
public void testHelloWorldProcess() {
/*
这个段测试方法演示了一个流程的在代码中以字符串形式定义和这个流程定义的具体执行。
这个流程定义包含三个节点:一个未命名的开始状态(start-state),
一个名字为's'的状态(state)和一个名字为'end'的结束状态(end-state)。
下一行的功能是把一段xml文本解析为一个ProcessDefinition,
一个ProcessDefinition是一个java对象的形式对流程的正式的描述。
*/
ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("helloWorld.xml");
/*
下边的一行根据流程定义构造了的一个具体的执行实例。 构造以后,执行的流程就有了一个被定位在开始状态(start-state)上的主要的执行路径
*/
ProcessInstance processInstance = new ProcessInstance(processDefinition);
/*
构造以后,执行的流程就有了一个主要的执行路径(root token)
*/
Token token = processInstance.getRootToken();
/*
当然,构造以后,流程定义的主要的执行路径被定位在开始状态(start-state)
*/
assertSame(processDefinition.getStartState(), token.getNode());
/*
开始流程执行,通过默认的转换(transition)离开开始状态(start-state)
*/
token.signal();
/*
直到运行的流程进入一个等待状态,signal方法将一直被阻塞,运行的流程将要进入第一个等待状态:状态‘s’.因此现在主要的执行路径,定位到了状态‘s’上。
*/
assertSame(processDefinition.getNode("s"), token.getNode());
/*
执行signal,流程将继续执行,将通过默认的转换(transition)离开状态‘s’
*/
token.signal();
/*
流程实例已经到达了结束状态。
*/
assertSame(processDefinition.getNode("end"), token.getNode());
}

5、图片一个都看不到,别说小了……
  • 打赏
  • 举报
回复
顶下,这里图片不是很清楚,只能这么大了,想仔细看看的就另存为吧。。。
  • 打赏
  • 举报
回复
晕倒,图片被修改的看不见了

6,787

社区成员

发帖
与我相关
我的任务
社区描述
JBoss技术交流
社区管理员
  • JBoss技术交流社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧