Mail : Could not parse BPMN process

Thanks a lot. Is OpenJDK a potential problem ? Otherwise, I don’t see something out of standard. Could you tell me the JDK type and Eclipse versions you use ?

By the way I had the same problem on Windows 10.

Can you perhaps upload your project to github, i’ll try to built it locally and let you know how i get on.

Hi @GeekBot

(hopefully it’s a real person reading this, …)

The connector has to be configured in your engine: https://docs.camunda.org/manual/7.11/user-guide/process-engine/connectors/#configure-the-process-engine-plugin

This is done in the downloaded Camunda Server, but perhaps not in the engine used for the tests? Please double check your camunda.cfg.xml in the src/test/resources folder.

Hope this helps, Ingo

5 Likes

Thank you, Niall. I have found the cause of the problem. I explain below where is the issue and how to fix it.

Thank you very much @Ingo_Richtsmeier , your remark is totally true and lead to the solution. The problem comes form the camunda.cfg.xml in the Eclipse environment. It lacks this line :
<bean class="org.camunda.connect.plugin.impl.ConnectProcessEnginePlugin" />
I attach the file with this modification. I also put the pom file after to show the necessary dependencies. Now tests are running without exception. Thanks again.
GeekBotcamunda.cfg.xml (901 Bytes)

4 Likes

Super - thanks for posting up your solution

The pom.xml file

pom.xml (8.3 KB)

So now, it compiles and passes the tests in Eclipse. The war deploys correctly in the server but when I start the process I still get the error (see screen capture attached). So, the situation is better but it still doesn’t work :roll_eyes:
Any idea is welcome.


GB

@GeekBot Camunda gives 2 types of Connector - http-connector and soap-connector. If you are trying to execute an HTTP endpoint in your connector, then set the connector id to http-connector as shown in the image.

Thanks,
Armaan

@GeekBot Please ensure the following files location :-

  1. camunda-bpm-mail-core-x.x.x.jar and all its dependencies under apache server > lib
  2. mail-config.properties under apache server > lib

If the connector and mail plugin have been loaded correctly, then you should see this during startup:

2019-10-23 16:47:05.804  INFO 40540 --- [  restartedMain] org.camunda.bpm.connect                  : CNCT-01004 Discovered provider for connector id 'mail-send' and class 'org.camunda.bpm.extension.mail.send.SendMailConnector': 'org.camunda.bpm.extension.mail.send.SendMailProvider'
2019-10-23 16:47:05.805  INFO 40540 --- [  restartedMain] org.camunda.bpm.connect                  : CNCT-01004 Discovered provider for connector id 'mail-poll' and class 'org.camunda.bpm.extension.mail.poll.PollMailConnector': 'org.camunda.bpm.extension.mail.poll.PollMailProvider'
2019-10-23 16:47:05.806  INFO 40540 --- [  restartedMain] org.camunda.bpm.connect                  : CNCT-01004 Discovered provider for connector id 'mail-delete' and class 'org.camunda.bpm.extension.mail.delete.DeleteMailConnector': 'org.camunda.bpm.extension.mail.delete.DeleteMailProvider'

The deployment error indicates that this may not yet be the case.
Are these dependencies included in your deployment?

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.camunda.bpm</groupId>
            <artifactId>camunda-bom</artifactId>
            <version>${camunda.version}</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>
    </dependencies>
</dependencyManagement>
<dependency>
    <groupId>org.camunda.bpm</groupId>
    <artifactId>camunda-engine-plugin-connect</artifactId>
</dependency>
<dependency>
    <groupId>org.camunda.connect</groupId>
    <artifactId>camunda-connect-core</artifactId>
</dependency>
<dependency>
    <groupId>org.camunda.bpm.extension</groupId>
    <artifactId>camunda-bpm-mail-core</artifactId>
    <version>1.2.0</version>
</dependency>

Does your process.xml contain the plugin entry (not required when using Camunda Spring Boot Starter) ?

<process-application xmlns="http://www.camunda.org/schema/1.0/ProcessApplication">
    <process-engine name="default"> <configuration>org.camunda.bpm.engine.impl.cfg.StandaloneInMemProcessEngineConfiguration</configuration>
        <plugins>
            <plugin>
                <class>org.camunda.connect.plugin.impl.ConnectProcessEnginePlugin</class>
            </plugin>
        </plugins>
    </process-engine>
</process-application>

Thanks for posting. It helped!

Just had the same issue and found the solution for those, who use spring-boot starter and initiate camunda spring beans manually:

POM

   ...
    <dependency>
        <groupId>org.camunda.bpm</groupId>
        <artifactId>camunda-engine-plugin-connect</artifactId>
    </dependency>
    <dependency>
        <groupId>org.camunda.connect</groupId>
        <artifactId>camunda-connect-core</artifactId>
    </dependency>
    <dependency>
        <groupId>org.camunda.bpm.extension</groupId>
        <artifactId>camunda-bpm-mail-core</artifactId>
        <version>1.3.0</version>
    </dependency>
   ...

Bean configuration:

@Bean
fun engineConfiguration(
    @Value("classpath:/processes/*.bpmn") deploymentResources: Array<Resource>
): SpringProcessEngineConfiguration {
     val configuration = SpringProcessEngineConfiguration()
     configuration.processEngineName = "engine"
     configuration.databaseSchemaUpdate = "true"
     configuration.isJobExecutorActivate = false
     configuration.dataSource = dataSource
     configuration.transactionManager = DataSourceTransactionManager(dataSource)
     configuration.deploymentResources = deploymentResources
     configuration.processEnginePlugins.add(ConnectProcessEnginePlugin()) // this one is important
     return configuration
}
1 Like

Thank you for posting this solution @vicmosin! I opened an issue in the repository referencing it if you would be interested in opening a pull request detailing the above POM and bean configuration. :slight_smile:

This was very helpful of you and much appreciated for others facing this issue, I’m sure!

1 Like

Thank You! It helped. :smiley:

Hey vicmosin,

where do I have to insert the bean configuration? (which file)

I guess the one where all of your beans defined :slight_smile:
Usually it’s the class which is annotated with @Condiguration

Hm, so I went through again and Ctrl + Shift + F also did not find it in the project :sweat_smile:
But maybe it’s also because of the time, I’ll check again on Monday.

By the way, I use IntelliJ an I’m a newbie when it comes to (Camunda &) Spring Boot. Maybe I have just forgotten to implement something :smiley:

Thanks but already once :slight_smile: