Jasperreports服务器输入控制错误

时间:2018-09-12 15:12:42

标签: jasper-reports jasperserver

问题:

使用单查询创建输入控件时,如果我们在值或可见字段中包含任何RAW ID(如GUID),则服务器会抛出运行时异常:

2018-09-11 14:25:50,813 ERROR GenericExceptionMapper,http-nio-8080-exec-1:51 - Unexpected error occurs
java.lang.IllegalStateException: Processor of type com.jaspersoft.jasperserver.war.cascade.handlers.converters.DataConverter for class [B not configured

详细信息

Jasperreports服务器版本:6.6.0

如何复制:    上载任何样本报告并编辑此报告。通过选择单选查询选项将输入控件添加到此报告中。填写必填字段,然后在定义查询页面添加以下查询

select sys_guid() as ID from dual

然后在“设置参数值”页面中,输入ID作为“值列”,输入ID作为“可见列”。提交并保存输入控件和报告。当您执行此报告时,Jasperreports Server会抛出上述错误。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

该错误是由于以下事实引起的:RAW值通过JDBC映射到byte [],而JasperReports Server输入控制代码无法处理字节数组。

解决方案是更改查询以通过RAWTOHEX将RAW值转换为VARCHAR / String值

select RAWTOHEX(sys_guid()) as ID from dual