gpt4 book ai didi

list - 如何在 DynamicJasper 中设置 list 的值

转载 作者:行者123 更新时间:2023-12-04 17:11:30 26 4
gpt4 key购买 nike

我需要在我的报告中生成动态列数。所以我为我的 JasperPrint 设置了大量的对象:

Object[] obj = new Object[selectedUsers.size()];
//fill the massive
JasperPrint jp = DynamicJasperHelper.generateJasperPrint(dr, new ClassicLayoutManager(), new JRBeanArrayDataSource(obj));

我的 obj 是一个类:
public class ResultsDTO {
private String login;
private Integer id;
private List<String> list;
private Object[] results;

public Object[] getResults() {
return results;
}

public void setResults(Object[] results) {
this.results = results;
}

public ResultsDTO(){

}

public ResultsDTO(Integer id,String login) {
super();
this.login = login;
this.id = id;
}

public ResultsDTO(String login, Integer id, List<String> list) {
super();
this.login = login;
this.id = id;
this.list = list;
}

public String getLogin() {
return login;
}

public void setLogin(String login) {
this.login = login;
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public List<String> getList() {
return list;
}

public void setList(List<String> list) {
this.list = list;
}

public void addToList(String day_result){
this.list.add(day_result);
}
}

然后我尝试创建列:
FastReportBuilder firstReport = new FastReportBuilder();
List<AbstractColumn> column_list = new ArrayList<AbstractColumn>();

AbstractColumn columnId = getColumn("id", Integer.class,"№", 30, headerStyle, detailStyle);
AbstractColumn columnLogin = getColumn("login", String.class,"ФИО", 150, headerStyle, detailStyle);

for (int i = 0; i < header.size(); i++){
AbstractColumn column = getColumn("results", Object.class, header.get(i), 80, headerStyle, detailStyle);
column_list.add(column);
}

最终我有一个异常(exception):

net.sf.jasperreports.engine.design.JRValidationException: Report design not valid : 1. Class "java.lang.Object" not supported for text field expression.



请帮忙!我不知道如何使用 jasper 和列表或数组

最佳答案

Jasper Reports 不允许 Object 作为其元素的有效类型。我必须是以下之一:

  • 字符串
  • 数字(或其任何子类)
  • 日期
  • bool 值

  • 您应该向表单中的每个元素询问其类并将适当的类传递给列构建器。

    关于list - 如何在 DynamicJasper 中设置 list<String> 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6070718/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com