【问题标题】:jBPM 5 Human TaskjBPM 5 人工任务
【发布时间】:2012-02-28 10:40:45
【问题描述】:

我创建了一个 jBPM 项目,选择添加一个包含人工任务管理的默认示例。我通过这些说明更改了方法JBPMHelper.startTaskService()

EntityManagerFactory emf = Persistence.createEntityManagerFactory("org.jbpm.task");

TaskService taskService = new TaskService(emf,SystemEventListenerFactory.getSystemEventListener());

MinaTaskServer server = new MinaTaskServer( taskService );

Thread thread = new Thread( server );

thread.start();

但是当我尝试执行这个简单的例子时,我得到了这个错误

Exception in thread "main" javax.persistence.PersistenceException: [PersistenceUnit: org.jbpm.task] Unable to build EntityManagerFactory
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:677)
    at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:126)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
    at com.sample.ProcessMain.main(ProcessMain.java:24)
Caused by: org.hibernate.HibernateException: 'hibernate.dialect' must be set when no Connection avalable
    at org.hibernate.dialect.resolver.DialectFactory.buildDialect(DialectFactory.java:107)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:134)
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339)
    at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:669)

知道当我输入ant start.demo 时,我得到了所有工具(jboss 7、eclipse、h2),但人工任务没有开始。控制台中的消息是未完成

start.human.task:
[javac] C:\jbpm-5.2.0.Final-installer-full\jbpm-installer\build.xml:647: 
warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; 
set to false for repeatable builds
 [java] Task service registered usergroup callback ...
 [java] Task service started correctly!
 [java] Task service running ...

【问题讨论】:

    标签: jbpm


    【解决方案1】:

    使用安装程序启动任务服务似乎可以正常工作(当您似乎“任务服务正在运行...”时它正确启动)。请注意,这是一个在命令中运行的普通 Java 进程,因此它不会返回,它将保持活动状态并在该控制台中显示日志信息。关闭命令提示符(或按 Ctrl-C)将终止任务服务。从 jBPM 5.2 开始,您还可以使用可以部署到应用程序服务器的 war 来将任务服务作为应用程序服务器上的服务运行。

    关于您遇到的其他错误,您的持久性配置文件中似乎缺少“hibernate.dialect”属性。您只是尝试执行生成的示例,还是修改了它(如果是,为什么/如何)?

    克里斯

    【讨论】:

    • 我同意你的看法,我的安装程序有问题,因为我无法打开 jbpm-console。
    • 服务器日志中是否有任何内容可能表明出了什么问题?请参阅 jbpm-installer/jboss-as-7.0.2.Final/standalone/log/server.log 您可能想尝试先执行 ant clean.demo 然后重新安装并启动演示 ant install.demo ant run.demo
    【解决方案2】:

    有时当我使用 ant start.demo 命令启动服务器时,部署会失败。您可以检查 war 文件是否在目录中正确部署:jboss-as-7.0.2.Final\standalone\deployments。例如,如果部署了 jbpm 控制台,您应该拥有如下部署文件:jbpm-gwt-console.war.deployed。有时服务器无法部署其中之一。在这种情况下,只需删除失败的部署文件并重新开始。在大多数情况下,问题都为我解决了。

    荣誉

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-20
      • 1970-01-01
      相关资源
      最近更新 更多