- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Jersey 生成 XSSFWorkbook。
我已经尝试了以下 header ,但似乎没有任何效果:
@Produces("应用程序/xml")
@Produces("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
@Produces("application/vnd.openxml"
全部返回如下错误:
Caused by: com.sun.jersey.api.MessageException: A message body writer for Java class org.apache.poi.xssf.usermodel.XSSFWorkbook, and Java type class org.apache.poi.xssf.usermodel.XSSFWorkbook, and MIME media type application/xml was not found ... 37 more
本质上,我有一个创建 XSSFWorkbook 的函数,我想将它写出来供用户下载。我能够做到这一点:
/*
HttpServletResponse response;
XssfWorkbook excel.write(response.getOutputStream());
*/
@GET
@Path("/excel/")
@Produces("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
public XSSFWorkbook exportReadingsAsExcel(@Context HttpServletResponse webResponse)
{
XSSFWorkbook excel = createExcel();
setHeader(webResponse, "export.xlsx");
try {
excel.write(webResponse.getOutputStream());
} catch (IOException e) {
e.printStackTrace();
}
return excel; //ERROR IS HERE
}
但由于其他原因,我还需要返回 XSSFWorkbook 的函数。我希望我可以让 Jersey 将其写出来,而不是使用网络响应。
感谢您的帮助。
(我对 Jersey 和 XSSF 有点陌生,所以如果我对术语或理解有误,请多多包涵)
最佳答案
您需要为 XSSFWorkbook 编写自定义编写器(或找到一个)并将其插入 Jersey,如:
@Provider
@Produces("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
public class CustomXSSFWorkbookWriter implements MessageBodyWriter {
//This methode is the most important for you
@Override
public void writeTo(Object target, Class type, Type genericType,
Annotation[] annotations, MediaType mediaType,
MultivaluedMap httpHeaders, OutputStream outputStream)
throws IOException {
然后你必须像这样将这个类的包添加到你的 web.xml
中:
<servlet>
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.packages.to.your.views;com.packages.to.your.providers</param-value>
</init-param>
Jersey 将由您自己的作家来制作这种特定格式。抱歉,我对 XSSFWorkbook 一无所知。
希望能解决您的问题。
关于java - Jersey @Produces Apache XSSFWorkbook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11525510/
我使用此代码将 Excel 中的字体更改为我定义的颜色 Color sColor = new Color (value,0,0); XSSFColor userColo
我创建 CSV 到 XLSX 应用程序 - My first question Exception in thread "main" java.lang.NoClassDefFoundError: o
我正在尝试制作这样的 XSSFWorkbook File file = new File(fileName); Workbook workbook = new XSSFWorkbook(file);
我创建 CSV 到 XLSX 应用程序 - My first question Exception in thread "main" java.lang.NoClassDefFoundError: o
我正在使用以下代码: File file = new File("abc.xlsx"); InputStream st = new FileInputStream(file); XSSFWorkboo
我正在尝试以 excel 格式保存用户定义对象的列表,即来自 REST API 的 .xlsx 格式。这会创建一个 XSSF 工作簿 并将数据存储在工作簿中。返回 字节数组输入流 .在我的实体类中,我
我目前有一个 XSSFWorkbook,并且想将其转换或以某种方式将其更改为 Java 代码中的 File。有什么办法可以做到吗? 最佳答案 使用XSSFWorkbook.write(java.io.
我正在开发一个程序,该程序从 Excel 电子表格中读取每一行和单元格,然后从特定行的每个单元格中获取数据,并使用该数据进行 Web 服务调用。一旦我收到 Web 服务 XML 响应的返回,我就会解析
我编写了一些 Java 代码,它从三个电子表格中获取信息,并在具有 4GB 内存的机器上生成一个大型电子表格(10 列,26,950 行)。它在生成电子表格时崩溃了(内存不足),但是通过重写代码以一次
我在创建新的 xlsx 文件时遇到 XSSFWorkbook api 问题。 场景:我的 gui 菜单中有一个菜单项“新建文件”,它从流创建新的 xlsx 文件。第一次当我单击菜单项“新建文件”时,会
使用 POI 时,Excel 文档中的单元格和字体包含颜色信息,这些信息并不总是返回 rgb 值,而且通常只提供索引值。必须根据某些内容查找索引值以获得颜色。在 HSSFWorkbook (xls)
如果我通过构造函数 XSSFWorkbook() 创建 XSSFWorkbook,是否可以创建空主题?我可以创建新主题,但不能完全创建。我可以在文件 content_types.xml 和/xl/_r
我正在使用 Spring 3 AbstractExcelView使用导出到 Excel 功能将文件下载到 .xls格式,但当我的行大于 65536 时,它会引发异常: Invalid row numb
我需要密码保护 XSSFWorkBook。对于 HSSF,我可以轻松完成,但相同的实现不适用于 XSSFWorkBook。 我正在使用 Apache POI 3.6 和 3.9。我的意思是我尝试使用
我在共享访问由 JAVA 程序追加的 EXCEL 文件时遇到问题。一切正常,直到文件未被其他人访问且仍处于打开状态,同时程序再次运行 - 至少每 10 分钟一次。 API 告诉我类似文件正在使用且无法
我正在尝试使用 Jersey 生成 XSSFWorkbook。 我已经尝试了以下 header ,但似乎没有任何效果: @Produces("应用程序/xml") @Produces("applica
我有这个网页单击按钮时,它会读取数据并将文件保存到位置 xyz。 我不想要这样。我想通过 chrome 浏览器下载它。 如何发送下面的回复? 给出错误的行是response.getOutputStre
package apsel5; import java.io.FileInputStream; import java.util.Iterator; import org.apache.poi.sl.
据我了解,AbstractExcelView 类函数 buildExcelDocument 不支持 XSSFWorkbook ( https://jira.spring.io/browse/SPR-6
我们有一个预先创建的 excel 文件,其中包含交叉引用工作表的精美图表和公式。它还包含宏。源数据应该复制粘贴到一张纸上,工作簿的其余部分从预先存在的布线中填充。 注意:我真的不关心阅读/修改这个工作
我是一名优秀的程序员,十分优秀!