Java 图像未在DynamicReports中渲染

Java 图像未在DynamicReports中渲染,java,dynamic-reports,Java,Dynamic Reports,我正在尝试在DynamicReport中渲染列中的图像,但它没有渲染 我试过这样做。 首先我建了一个专栏 @Override public ComponentColumnBuilder designImageColumn(ReportVO input, String columnName) throws ReportEngineException { DynamicReportVO dynamicReport = input.getDynamicReport

我正在尝试在DynamicReport中渲染列中的图像,但它没有渲染 我试过这样做。 首先我建了一个专栏

  @Override
    public ComponentColumnBuilder designImageColumn(ReportVO input, String columnName) throws ReportEngineException {

            DynamicReportVO dynamicReport = input.getDynamicReport();
            Map<String, DynamicColumnVO> columns = dynamicReport.getColumnsMap();

            DynamicColumnVO column = columns.get(columnName);

            BODataTypeBuilder boDataTypeBuilder = new BODataTypeBuilder();
            ImageBuilder image = null;

            if(column.getName().equals("Image ")){
                image = cmp.image(new ImageExpression()).setFixedDimension(150, 150);
                LOGGER.info("ImageBuilder created " + image);
            }

            ComponentColumnBuilder componentColumnBuilder = null; 

            ColumnBuilders col = new ColumnBuilders();
            componentColumnBuilder=col.componentColumn(column.getTitle(), image); 


            LOGGER.info("componentColumnBuilder created and returning.. " + componentColumnBuilder);

            return componentColumnBuilder;
        }
@覆盖
公共组件ColumnBuilder designImageColumn(ReportVO输入,字符串columnName)引发ReportEngineeException{
DynamicReportVO dynamicReport=input.getDynamicReport();
Map columns=dynamicReport.getColumnsMap();
DynamicColumnVO column=columns.get(columnName);
BODataTypeBuilder BODataTypeBuilder=新的BODataTypeBuilder();
ImageBuilder image=null;
if(column.getName().equals(“Image”)){
image=cmp.image(newImageExpression()).setFixedDimension(150150);
LOGGER.info(“ImageBuilder已创建”+图像);
}
ComponentColumnBuilder ComponentColumnBuilder=null;
ColumnBuilders col=新的ColumnBuilders();
componentColumnBuilder=col.componentColumn(column.getTitle(),image);
LOGGER.info(“componentColumnBuilder创建并返回..”+componentColumnBuilder);
返回组件ColumnBuilder;
}

然后我构建了一个图像表达式类来计算列
公共类ImageExpression扩展了AbstractSimpleExpression{
私有静态最终长serialVersionUID=1L;
@凌驾
公共输入流评估(ReportParameters ReportParameters){
返回新的ByteArrayInputStream((字节[])reportParameters.getValue(“图像”);
}
}
但是我没有得到imageExpression中ReportParameters中Image的值。由于这是抛出源评估错误。任何线索都会有帮助。提前谢谢

public class ImageExpression extends AbstractSimpleExpression<InputStream>{
    private static final long serialVersionUID = 1L;

    @Override
    public InputStream evaluate(ReportParameters reportParameters) {

  return new ByteArrayInputStream((byte[]) reportParameters.getValue("Image"));
    }
}