栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Avtiviti创建表时报错:Error getting a new connection. Cause: org.apache.commons.dbcp.SQLNestedException

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Avtiviti创建表时报错:Error getting a new connection. Cause: org.apache.commons.dbcp.SQLNestedException

问题描述

今天使用Acitivity创建ProcessEngineConfiguration对象时报错

错误如下

org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Could not create connection to database server.)
### Error getting a new connection.  Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Could not create connection to database server.)
### Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Could not create connection to database server.)
分析问题

1 有可能是mysql版本驱动的问题
2 有可能是配置错误问题
3 经我测试和查询网上的相关错误,大部分原因都是mysql版本问题或者配置错误,比如url确实参数,驱动8.0少加了cj,我是因为版本问题,我本地是8.0的数据库,但是jar是5.7的

解决问题

相关代码如下



    4.0.0

    com.wyh
    Activiti01
    1.0-SNAPSHOT

    
        org.springframework.boot
        spring-boot-starter-parent
        2.1.0.RELEASE
    
    
        UTF-8
        UTF-8
        1.8
        6.0.0
    
    
        
            org.springframework.boot
            spring-boot-starter-web
        
        
            org.springframework.boot
            spring-boot-starter-jdbc
        
        
            org.springframework.boot
            spring-boot-starter-test
        
        
            org.activiti
            activiti-spring-boot-starter-rest-api
            ${activiti.version}
        
        
            mysql
            mysql-connector-java
            8.0.18
        
        
            org.projectlombok
            lombok
        
    
    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    


配置





    
    
        
        
        
        
        
        
    

    
    
        
        
        
        
        
        
        
        
        
    

测试类

package com.wyh.test;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.RepositoryService;
import org.junit.Test;



public class TestCreateTable {
    
    @Test
    public void testCreateDbTable(){
        //  需要使用avtiviti提供的工具类 ProcessEngines ,使用方法getDefaultProcessEngine
        //  getDefaultProcessEngine会默认从resources下读取名字为actviti.cfg.xml的文件
        //  创建processEngine时,就会创建mysql的表
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
        System.out.println(processEngine);
    }

}

修改完之后再次启动测试

可以看到日志信息已经在创建表了

查看数据库 表已经正常创建

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/988064.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号