新手求助JPBM
刚接触这个东东,看了下API,好头疼啊!只有一些思路,我想问下这几个类的含义,尤其是这个类JpbmContext的作用还有GraphSession,我发现这两个类里有好多方法似乎是重复的,还有一个CotextSession里一个方法也没有不知道是用来干什么的。我理解的是GraphSession好像是存储流程用的 请达人帮帮我解释下这些类之间的关系和相应的作用!找了很多电子书都只有列子没有说明看的很困惑!
[解决办法]
JPDL/BPEL(XML file)定义了工作流流程,有哪些Node,哪些Task,哪些Script,及它们之间的交互。
JbpmConfiguration读取工作流定义,默认它回去classpath下面找jbpm.cfg.xml文件,用API的话就是说it has knowledge on the services which this business process can provide.
JbpmContext是相当于对一个process的操作,实际应用中,肯定都是有多个线程访问的,可以通过JbpmConfiguration.createJbpmContext()为每个线程分配一个JbpmContext。定义是死的,process是活的(类比程序和进程的关系),如果现在这个process处理了一半,我想把这个状态保存到数据库,怎么办呢?那就用jbpmContext.save(processInstance)方法。
GraphSession你可以理解为是JbpmContext的Decorator,他提供了更多对数据库的操作。比如findLatestProcessDefinition()获得最新版本的process定义。不理解装饰模式的话,看看Java的IO.
学新技术最好的方式就是写demo,这有两个不错的例子,你可以参考以下
http://www.mastertheboss.com/en/jbpm/51-jbpm-tutorial-part-1.html
http://www.mastertheboss.com/en/jbpm/186-jbpm-web-application.html