{"id":29,"date":"2019-12-13T16:28:35","date_gmt":"2019-12-13T15:28:35","guid":{"rendered":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/?p=29"},"modified":"2022-11-30T16:29:06","modified_gmt":"2022-11-30T15:29:06","slug":"fehler-beim-testen-path-resource-activiti-cfg-xml-cannot-be-opened","status":"publish","type":"post","link":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/?p=29","title":{"rendered":"Fehler beim Testen: path resource [activiti.cfg.xml] cannot be opened"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Umgebung<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Wildfly<\/li>\n\n\n\n<li>Camunda<\/li>\n\n\n\n<li>JUnit<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Situation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Innerhalb einer JEE Anwendung verwenden wir Camunda. Beim erstellen von Tests werden mit<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>    @Rule\n    public ProcessEngineRule processEngineRule = new ProcessEngineRule();<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">die ProcessEngine und die Dienste zur Verf\u00fcgung gestellt. Wir starten einen Test mit<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>    @Test\n    @Deployment(resources = {MyConstants.PROCESS_NAME)\n    public void executeProcessStraighForward() throws Exception {\n    ....<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">und erhalten den Fehler<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML \ndocument from class path resource &#91;activiti.cfg.xml]; \nnested exception is java.io.FileNotFoundException: class path resource &#91;activiti.cfg.xml] \ncannot be opened because it does not exist<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">obwohl wir definitiv kein Spring verwenden (und auch nicht verwenden wollen \ud83d\ude42 ).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ursache<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die JUnit Rule findet keine camunda.cfg.xml und nutzt den Fallback activiti.cfg.xml. Dies geschieht aus Kompatibilit\u00e4tsgr\u00fcnden und wurde beim Fork von Activiti integriert. Es muss also in den Ressourcen der Tests eine camunda.cfg.xml angelegt oder diese programmatisch erstellt werden<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> @Rule\npublic ProcessEngineRule rule = new ProcessEngineRule(this.createProcessEngineProgramatically());\n...\nprotected ProcessEngine createProcessEngineProgramatically() {\n    StandaloneInMemProcessEngineConfiguration processEngineConfiguration = new \n        StandaloneInMemProcessEngineConfiguration();\n    processEngineConfiguration.setCustomPostBPMNParseListeners(Arrays.asList(new BpmnParseListener&#91;]{new FoxFailedJobParseListener()}));\n    return processEngineConfiguration.buildProcessEngine();\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Fragen und Anmerkungen<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr Fragen und Anmerkungen sendet mir gerne eine <a href=\"mailto:schoenberg@schoenberg-solutions.de\">eMail<\/a>. Wegen der DSGVO habe ich derzeit die Kommentarfunktionen abgestellt.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Umgebung Situation Innerhalb einer JEE Anwendung verwenden wir Camunda. Beim erstellen von Tests werden mit die ProcessEngine und die Dienste zur Verf\u00fcgung gestellt. Wir starten einen Test mit und erhalten den Fehler obwohl wir definitiv kein Spring verwenden (und auch nicht verwenden wollen \ud83d\ude42 ). Ursache Die JUnit Rule findet keine camunda.cfg.xml und nutzt den [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-29","post","type-post","status-publish","format-standard","hentry","category-cmaunda-bpmn"],"_links":{"self":[{"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=\/wp\/v2\/posts\/29","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=29"}],"version-history":[{"count":1,"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=\/wp\/v2\/posts\/29\/revisions"}],"predecessor-version":[{"id":30,"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=\/wp\/v2\/posts\/29\/revisions\/30"}],"wp:attachment":[{"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=29"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=29"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.schoenberg-solutions.de\/arndtblog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}