Skip to content

[Bug] 1.3.0版本自定义的Converter找不到,1.2.0正常 #663

@haoyang7

Description

@haoyang7

Search before asking

  • I searched in the issues and found nothing similar.

Fesod version

1.3.0

JDK version

17

Operating system

Centos7

Steps To Reproduce

!!!可能需要使用一个普通用户来启动jar包,使用root是正常的
try (ExcelWriter excelWriter = FastExcel.write(tempFile).excelType(ExcelTypeEnum.XLSX).build()) {
for (int i = 0; i < sheetNum; i++) {

                WriteSheet writeSheet = FastExcel.writerSheet(i, tableVo.getTableName() + "_" + (i + 1)).head(headList).build();
                for (int j = 0; j < idx; j++) {
                    List<List<Object>> dataList = new ArrayList<>();  
                    List<Map<String, Object>> data = demo();
                    if (CollectionUtil.isNotEmpty(data)) {
                        data.forEach(map -> {
                            List<Object> cellData = new ArrayList<>();
                            map.forEach((key, value) -> {
                                cellData.add(value);
                            });
                            dataList.add(cellData);
                        });

                        //写数据
                        excelWriter.write(dataList, writeSheet);
                        
                    }
                }
            }
        }

Current Behavior

org.apache.poi.xssf.streaming.SXSSFWorkbook - Failed to dispose sheet
java.io.IOException: Stream closed
at java.base/java.io.BufferedWriter.ensureOpen(BufferedWriter.java:107)
at java.base/java.io.BufferedWriter.write(BufferedWriter.java:224)
at java.base/java.io.Writer.write(Writer.java:249)
at org.apache.poi.xssf.streaming.SheetDataWriter.beginRow(SheetDataWriter.java:222)
at org.apache.poi.xssf.streaming.SheetDataWriter.writeRow(SheetDataWriter.java:212)
at org.apache.poi.xssf.streaming.SXSSFSheet.flushOneRow(SXSSFSheet.java:1963)
at org.apache.poi.xssf.streaming.SXSSFSheet.flushRows(SXSSFSheet.java:1928)
at org.apache.poi.xssf.streaming.SXSSFSheet.flushRows(SXSSFSheet.java:1941)
at org.apache.poi.xssf.streaming.SXSSFSheet.dispose(SXSSFSheet.java:1988)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.dispose(SXSSFWorkbook.java:1025)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.close(SXSSFWorkbook.java:934)
at cn.idev.excel.context.WriteContextImpl.finish(WriteContextImpl.java:481)
at cn.idev.excel.write.ExcelBuilderImpl.finish(ExcelBuilderImpl.java:97)
at cn.idev.excel.write.ExcelBuilderImpl.finishOnException(ExcelBuilderImpl.java:91)
at cn.idev.excel.write.ExcelBuilderImpl.addContent(ExcelBuilderImpl.java:59)
at cn.idev.excel.ExcelWriter.write(ExcelWriter.java:70)
at cn.idev.excel.ExcelWriter.write(ExcelWriter.java:47)

Expected Behavior

正常写入excel

Anything else?

No response

Are you willing to submit a PR?

  • I'm willing to submit a PR!

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions