if (workItemId != null) {
WFWorkItem workItem = workFlowBizC.getWorkItemInfo(workItemId);
workItem.getBusinessID();
BigDecimal taskId = BigDecimal.valueOf(Long
.parseLong((String) workFlowBizC.queryRelativeData(workItem
.getProcessInstID(), "TASK_ID")));

tdt = samplingBizC.queryDetectTaskByTaskId(taskId);
detectMode = tdt.getDetectMode();
if("01".equals(detectMode)||"02".equals(detectMode)||"05".equals(detectMode)){
request.setAttribute("sendStatus",tdt.getSendStatus());
}
request.setAttribute("detectConcU",String.valueOf(tdt.getDetectConcU()));
String conc = samplingBizC.getBatchConc(tdt.getRelaId().toString());
request.setAttribute("conc",conc);
queryParameBo.setParameTaskId(taskId);
queryParameBo.setDetectType(tdt.getDetectType());
request.getSession().setAttribute("vtcVtcworkItemId_jeonkeen",
workItemId);
request.getSession().setAttribute("vtcVtcTaskId_jeonkeen", taskId);
log.info("抽样检定检检定检测校准中接收工作流workItem=" + workItem + "TASK_ID="
+ taskId);
}
红色位置报错,不是我这里的数据,没法调试,请问这个句子 在什么情况下会报这个类型转换错误java.math.BigDecimal cannot be cast to java.lang.String.

解决方案 »

  1.   

    java.math.BigDecimal cannot be cast to java.lang.String...
    使用toString转不要强转String
      

  2.   

    楼上说的对  你可以使用toString进行转换,但是前提是你 workFlowBizC.queryRelativeData(workItem
    .getProcessInstID(),的值不为null,还有一个就是你可以分多行代码来写啊,没有必要全部写在一行,,,,,,,,,,不推荐使用强制类型转换
      

  3.   

    楼上正解。建议用toString,或者用new String()也不会报错