2016-11-08 85 views
0

我在使用Jmeter创建xlsx文件时出现错误。实际上,我已经尝试使用HSSF(对于.xls),它工作正常。但是,当我尝试使用xlsx更改它时,出现错误。我已经将jar文件复制到poipoi-ooxml on jmeter lib file。这里是我的简单脚本:错误尝试在Jmeter上使用XSSF时

import org.apache.poi.ss.usermodel.Cell; 
import org.apache.poi.ss.usermodel.Row; 
import org.apache.poi.xssf.usermodel.XSSFSheet; 
import org.apache.poi.xssf.usermodel.XSSFWorkbook; 
import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.util.*; 
import java.lang.String; 
import java.lang.Object; 

XSSFWorkbook workbook = new XSSFWorkbook(); 
XSSFSheet sheet = workbook.createSheet("Sample sheet"); 
Row row = sheet.createRow(0); 
Cell cell = row.createCell(0); 
cell.setCellValue("HENCIN"); 

try { 
    FileOutputStream out = new FileOutputStream(new File("D:\\Jmeter\\testhencin.xlsx")); 
    workbook.write(out); 
    out.close(); 
    System.out.println("Excel written successfully.."); 
} catch (FileNotFoundException e) { 
    e.printStackTrace(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

其实当我试图找到错误,问题是从该行获得:

XSSFWorkbook workbook = new XSSFWorkbook(); 
XSSFSheet sheet = workbook.createSheet("Sample sheet"); 

请人帮我弄明白。它适用于HSSF但在XSSF它不起作用。我得到的错误:响应代码:500

Response message: org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval org/apache/xmlbeans/XmlObject 
+1

你是否[在所有Apache POI依赖关系中复制并在该网站的此页面上轻松列出](http://poi.apache.org/overview.html#components)?如果没有,当你阅读文档并且这样做会发生什么? – Gagravarr

+0

是啊...我仍然缺少一些依赖。现在它就像一个魅力。我使用这个:poi-3.11.jar,poi-excelant-3.11.jar,poi-ooxml-3.11.jar,poi-ooxml-schemas-3.11,jar,poi-scratchpad-3.11.jar,xmlbeans-2.6.0。罐 – Hendrione

回答

1

我建议:

  1. 捕获所有可能出现的异常并打印堆栈跟踪到jmeter.log以及
  2. 重新投掷文件例外,以确保您不会得到假阳性取样结果,如下所示:

    } catch (Throwable e) { 
        e.printStackTrace(); 
        log.info("Error in Beanshell", e); 
        throw e; 
    } 
    

关于你的问题,很有可能是因为在JMeter classpath中丢失了XMLBeans罐子。我建议如下:

  • 获得“干净”安装最新的JMeter版本
  • 下载的tika-app.jar最新版本,并将其拖放到JMeter的“LIB”文件夹
  • 重启JMeter的挑罐子起来

使用Tika,您将获得捆绑的所有必需的库,此外,JMeter将在View Results Tree侦听器中显示二进制文件的内容。有关更多详细信息,请参阅How to Extract Data From Files With JMeter文章。

相关问题