проблема с использованием displaytag + плитки для экспорта в excel

DisplayTag 1.2 Spring + MVC 2.5.6 Плитки 2.0.7

Я просмотрел некоторые другие элементы на этом сайте в той же предметной области, но ни один из них, похоже, не отвечает на вопрос о том, как экспортировать таблицу, сгенерированную тегом отображения, в Excel. Я могу экспортировать/сохранять xml и csv, но не превосходить. Другие банки, которые необходимы?

Базовая настройка:

веб.xml

  <!--  display tag -->
  <filter>
    <filter-name>ResponseOverrideFilter</filter-name>
    <filter-class>org.displaytag.filter.ResponseOverrideFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>ResponseOverrideFilter</filter-name>
    <url-pattern>*.jsp</url-pattern>
  </filter-mapping>

displaytag.properties

#export
export.types=csv excel xml rtf pdf

export.excel=true
export.xml=true
export.csv=true
export.rtf=false
export.pdf=false

export.excel.class=org.displaytag.export.excel.DefaultHssfExportView
export.pdf.class=org.displaytag.export.DefaultPdfExportView
export.rtf.class=org.displaytag.export.DefaultRtfExportView

export.excel.include_header=true
export.cvs.include_header=true

HTML

<display:table export="true" id="row" class="gridTable" name="shippingCommands" defaultsort="1" sort="list" requestURI="shipHome.html" defaultorder="ascending" pagesize="100">
  <display:column title="Customer Name" sortable="true" sortName="customerName">
    ${row.customerName }
    <c:if test="${null != row.customerContactName}">
      <br />
      <br />${row.customerContactName}
    </c:if>
  </display:column>
  <display:column property="storeNumber" title="Store #"  sortable="true" sortName="storeNumber" comparator="vsg.ecotrak.common.comparator.AlphanumComparator"/>
  <display:column property="storeAddress" title="Store Address"/>
  <display:column property="programName" title="Program" sortable="true" sortName="programName"/>
  <display:column property="boxType" title="Box Type" sortable="true" sortName="boxType"/>
  <display:column class="table-10" property="qtyToShip" title="# of Boxes" sortable="true" sortName="qtyToShip"/>
  <display:column property="orderType" title="Order Type" sortable="true" sortName="orderType"/>
  <display:column class="actions" media="html">
    <a class="action-fulfill" href="shipSummary.html?action=summary&orderId=${row.orderId}">Fulfill</a>
    <a class="action-delete" href="javascript:confirmDelete(${row.orderId})" title="Delete Order" >Delete Order</a>
  </display:column>
  <display:setProperty name="export.rtf.filename" value="boxestoship.rtf"/>
  <display:setProperty name="export.csv.filename" value="boxestoship.csv"/>
  <display:setProperty name="export.excel.filename" value="boxestoship.xls"/>
  <display:setProperty name="export.xml.filename" value="boxestoship.xml"/>
</display:table>

Оказывается, excel работает с poi-3.2-FINAL.jar, а не с poi-3.7. Не уверен, почему, но это то, что я сделал, чтобы заставить его работать.


person boyd4715    schedule 02.02.2011    source источник
comment
Я сталкиваюсь с похожей проблемой... Вы находите решение для этого????   -  person Pradip Bhatt    schedule 28.06.2013
comment
Я ответил на свой вопрос - нужно использовать правильную версию банка POI.   -  person boyd4715    schedule 03.07.2013


Ответы (1)


Убедитесь, что у вас есть poi-3.2-FINAL.jar в папке WEB-INF/lib.

У вас может быть более одной банки с пои в вашем проекте, но по крайней мере эта poi-3.2-FINAL.jar является обязательной и необходимой.

Если вы хотите экспортировать в другие форматы, например. Excel — формат .xlsx 2007 Как показано здесь, вам необходимо иметь

poi-3.2-FINAL.jar

пои-3.9.jar

poi-ooxml-3.9.jar

poi-ooxml-схемы-3.9.jar

xmlbeans-2.6.0.jar

stax-api-1.0.1.jar

и другие банки зависимостей.

person prem30488    schedule 08.05.2014