JHipster:打开用户文件

时间:2019-02-25 07:53:05

标签: java spring apache-poi jhipster

在我的jhipster项目中,我需要基于模板创建一个新的xlsx文件。我将模板file1.xlsx放到target / classes / clientdoc。

当我第一次生成一个新的xlsx文件时,就可以了。但是第二次我在调用“ sheet.getRow(rowForTotalInfoNumber).getCell(n)”时得到了NPE。然后,我只是在LibreCalc(在Linux上)中打开target / classes / clientdoc / file1.xlsx并关闭而不进行任何操作。之后,我的项目在控制台中重新启动。 我通过调用./mvnw执行了我的项目。之后,我可以再次创建一个新文件。

这是我的代码:

@Configuration
public class ClientDocConfiguration {
    private final Logger log = 

   @Bean
   public FilelGenerator getFileGenerator() {
   return new FileGenerator();
}

   @Bean
   public XSSFWorkbook workbook() throws IOException {
       Resource xlsRes = new ClassPathResource("clientdocs/file.xlsx");
       InputStream xlsStream = xlsRes.getInputStream();
       XSSFWorkbook workbook = new XSSFWorkbook(xlsStream);
       return workbook;
  }

FileGenerator.java

@Component
public class FileGenerator { 
    private XSSFWorkbook workbook;

    @Autowired
    public void setWorkbook(XSSFWorkbook workbook) {
        this.workbook = workbook;
    }


    public byte[] generateDocument() throws IOException {
        XSSFSheet sheet = workbook.getSheetAt(0);
        sheet.getRow(rowForTotalInfoNumber).getCell(n).setCellValue("X");
    }

0 个答案:

没有答案