【发布时间】:2014-10-12 08:40:18
【问题描述】:
我正在尝试从 jsf 启动 activiti 引擎
@ManagedBean(name = "activitiProcess")
@ViewScoped
public class ActivitiProcess implements Serializable {
private String filename = "D:/WORKSPACE/activiti1/src/main/resources/diagrams/MyProcess.bpmn";
public ActivitiProcess() {
}
public void startProcess() {
System.out.println("hello world");
try {
ProcessEngine engine = ProcessEngines.getDefaultProcessEngine(); //returns null
RepositoryService repositoryService = engine.getRepositoryService();
repositoryService.createDeployment().addInputStream("myProcess.bpmn20.xml", new FileInputStream(filename)).deploy();
RuntimeService runtimeService = engine.getRuntimeService();
ProcessDefinition definition = engine.getRepositoryService().createProcessDefinitionQuery().processDefinitionKey("myProcess").singleResult();
FormService formService = engine.getFormService();
// List<FormProperty> formList = formService.getStartFormData(definition.getId()).getFormProperties();
Map<String, String> formProperties = new HashMap<String, String>();
/* use the jsf variable instead */
formProperties.put("filePath", "D://somePath");
formService.submitStartFormData(definition.getId(), formProperties);
} catch (Exception e) {
e.printStackTrace();
}
}
}
引擎总是返回 null ,我读到 activiti.cfg.xml 文件应该在类路径中,我已经把文件放在 web-inf/classes 下,但是引擎返回 null 这意味着 activiti 可以' t 初始化引擎,有什么想法吗?
【问题讨论】:
-
是否需要任何 db 属性文件?
-
不是必须的,但即使在独立的 activiti 应用程序中使用相同的配置并且工作正常,您可以查看forums.activiti.org/content/using-activiti-without-spring