使用中文字符定义的流程,执行时会碰到找不到活动或者转移路径的问题。
1 分析
因为这些中文命名的活动或者转移路径参数,传递到 jBPM 包中会变为 ???
。所以自然就找不到这些活动或者转移路径啦。
2 解决
2.1 统一代码的编码方式
有的 IDE,默认会以 GBK 作为项目的编码方式,而这在 jBPM 库中无法正确解析。
方法是把整个项目改为 UTF-8 的编码方式。
在 IDEA 中改变项目的编码方式:
2.2 数据库的查询编码方式
在 jbpm.hibernate.cfg.xml 中可以配置数据库的连接信息,在其中的 hibernate.connection.url 中要加上数据库的查询编码方式,否则数据库查出来的中文字符会是乱码哦O(∩_∩)O~
形如:
jdbc:mysql://localhost:3306/jbpmdb?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull