获取批注的时候在本机没有问题,在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字段的值。