3

我最近开始使用 JBoss 的 Wildfly 8.1 和 activiti 框架。

我创建了两个项目,一个包含我的 bpmn.xml 文件和服务任务的类:

Process:
 -src/main/
  -impl.java
 -src/resources/
  -diagrams
   -myprocess.bpmn.xml
  -config
   -activiti-context.xml

另一个持有 servlet

WebTest:
 -src/main
  -testServlet.java
 -lib
  -process.jar

在我的 servlet 中,我实现了 init 方法来获取 Activiti processEngine:

 @Override
    public void init() throws ServletException{
        super.init();
         engine = ProcessEngines.getDefaultProcessEngine();
    }

我构建了 Webtest.war 文件并将其部署到

D:/path/to/workingdir/wildfly-8.1.0.Final/**standalone/deployments**/Webtest.war

然后我使用提供的standalone.bat启动Widlfly,它正确启动并部署到上下文/Webtest,到目前为止一切顺利。

如果我现在访问 localhos:8080/Webtest/servlet 我得到异常:

org.activiti.engine.ActivitiException: 无法从spring配置资源vfs:/D:/path/to/workingdir/wildfly-8.1.0.Final/bin/content/TEST-1.war/WEB-初始化流程引擎INF/ lib/process.jar/activiti-context.xml:空

最后带有 :null 的错误意味着无法访问该文件。当然不能,没有 bin/content!

我现在的问题是:Widfly 从哪里得到查看 bin/content 的想法?它显然能够自己找到配置文件,我从来没有告诉 spring 或 activiti 去查看 process.jar,所以应用程序在类路径中找到了配置,好吧......然后它继续从一个完全不同的文件中读取文件不存在的位置?

我不知道这是否有兴趣,但这是我的 activiti-context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" 
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="
    http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">

      <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration"/>
</beans>

感谢您的帮助或提示!

4

0 回答 0