【问题标题】:Camunda doesnt use MySql as DatabaseCamunda 不使用 MySql 作为数据库
【发布时间】:2019-01-09 13:25:07
【问题描述】:

我正在使用 Camunda BPM 7.9.0 设置 Wildfly 11 应用服务器。 部署工作正常。我还部署了 MySql Connector for Java 并为我的数据库创建了一个数据源。但是 Camunda 不会使用该数据源。我已经查阅了很多教程,但我已经根据这些正确设置了。

我曾尝试手动添加 mysql 连接器,现在我使用了运行良好的部署方法。我还尝试了包括操作系统在内的所有内容的全新安装。我在 Ubuntu Server 18.04 LTS 上(如果这是一个问题,我认为不是,请告诉我)。我还删除了默认数据源,结果 Camunda 无法再部署,但 Wildfly 服务器在线。这表明它仍然连接到 H2 数据库。

   <datasource jta="true" jndi-name="java:/camunda" pool-name="MySqlDS" enabled="true" use-ccm="false" statistics-enabled="true">
                <connection-url>jdbc:mysql://localhost:3306/camunda</connection-url>
                <driver-class>com.mysql.jdbc.Driver</driver-class>
                <driver>mysql</driver>
                <security>
                    <user-name>MyUser</user-name>
                    <password>MyPass</password>
                </security>
                <validation>
                    <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
                    <background-validation>true</background-validation>
                    <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
                </validation>
            </datasource>
            <drivers>
                <driver name="h2" module="com.h2database.h2">
                    <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                </driver>
                <driver name="mysql" module="com.mysql.driver">
                    <driver-class>com.mysql.jdbc.Driver</driver-class>
                </driver>
            </drivers>

使用此配置,我希望它连接到 MySQL 数据库,但它仍然使用 H2 数据库。这是我唯一需要做的事情还是我需要在 .war 文件中编辑某些内容?

最好的问候

【问题讨论】:

    标签: mysql wildfly camunda


    【解决方案1】:

    我只能猜测,但是您是否还配置了 camunda 以选择 mysql DB? 您复制的部分只是数据源的设置(它存在),但您需要转到告诉 camunda 使用哪个数据库的部分。

    查看:https://docs.camunda.org/manual/7.4/user-guide/runtime-container-integration/jboss/ 示例。

    <subsystem xmlns="urn:org.camunda.bpm.jboss:1.1">
        <process-engines>
          <process-engine name="default" default="true">
            <datasource>java:jboss/datasources/ProcessEngine</datasource> <--- HERE!
            <history-level>full</history-level>
            ....
    

    【讨论】:

      【解决方案2】:

      感谢您的回答! 我发现您需要在 camunda.war 文件的 ApplicationContext.xml 中更改它。 需要更改的值为:

      <property name="driverClassName" value="java.sql.Driver" />
      
      
      <bean id="dataSource" class="org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy">
      <property name="targetDataSource">
       <bean class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName" value="java.sql.Driver" />
        <property name="url" value="jdbc:mysql://localhost:3306/dbname" />
        <property name="username" value="user" />
        <property name="password" value="pass" />
      </bean>
      </property>
      

      我希望这对其他人有帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-08-20
        • 2013-04-22
        • 1970-01-01
        • 1970-01-01
        • 2014-07-06
        • 2013-01-29
        • 1970-01-01
        • 2011-09-26
        相关资源
        最近更新 更多