activiti工作流解决历史批注中文乱码

获取批注的时候在本机没有问题,在windows service服务器出现问题。解决方法有两种:
1.原本获取的是getFullMessage,将其修改为getMessage
Comment类不提供getMessage()的方法,只有getFulMessage()方法,但是Comment是个接口类,具体实现是CommentEntity类,CommentEntity类提供了getMessage()方法,将类进行转换后就可以正常获取到了

// 不清楚该方法的Activi版本
List<Comment> list = findCommentByProcessInstanceId(processInstanceId);
for (Comment commentEntity : list) {
 CommentEntityImpl comment = null;
 if(commentEntity instanceof CommentEntityImpl){
	 comment = (CommentEntityImpl)commentEntity;
 }
String message = comment.getMessage();

// 5.22版本
 List<Comment> comment = taskService.getTaskComments(task.getId(), "comment");

 if (!CollectionUtils.isEmpty(comment)) {
     CommentEntity comment1 = null;
     if (comment.get(0) instanceof CommentEntity) {
          comment1 = (CommentEntity) comment.get(0);
          variables.put("comments", comment1.getMessage());
     } 
}

2.去解决获取mysql longblob类型的问题,getFullMessage会跟随部署的系统编码,保存到数据库中的bolb字段可能会出现乱码,但是message字段不是乱码,如果审批备注只是文字的话,可以直接取message字段的值。

01-课程计划02-Activiti工作流概念(使用程序演示工作流执行)03-Activiti介绍04-准备Activiti开发环境05-准备开发环境(配置文件)和核心API的介绍06-Activiti入门程序HelloWorld演示流程的执行07-流程定义的CRUD(上)08-流程定义的CRUD(下)09-流程实例,任务,执行对象控制流程的执行(上)10-流程实例,任务,执行对象控制流程的执行(下)11-流程变量(上)12-流程变量(下)13-流程历史数据查询14-第一天知识点回顾15-连线16-排他网关17-并行网关18-流程实例开始结束19-接收任务活动(receiveTask)20-个人任务分配(三种方式)21-组任务分配(三种方式)22-工作流提供的用户角色组(IdentityService)23-项目框架搭建(Struts)24-请假流程管理系统框架搭建(Spring+Struts)25-请假流程图26-知识点回顾27-系统登录(Session)28-自定义拦截器实现Session验证29-部署流程定义(zip文件部署)30-流程定义和部署对象查询31-查看流程图和删除流程定义32-请假单业务的查询列表和新增保存33-请假单业务的编辑保存和删除34-申请请假(启动流程实例)35-查找正在执行的个人任务列表36-使用类动态指定下一个任务的办理人37-办理任务(获取任务节点form key中的值)38-办理任务(使用任务ID,查询请假单)39-办理任务(使用任务ID,查询任务完成后的连线名称集合)40-完成任务41-查询办理任务时操作的历史批注信息(上)42-查询办理任务时操作的历史批注信息(下)43-在请假单中查询历史批注信息(使用请假单ID查询)44-查看当前流程图和课程总结
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值