2016-05-20 2 views
0

Я использую display tag в jsp и не работает. Я использую Spring MVC для бэкэнд. Возможно, jsp не может идентифицировать тег отображения. Я включил все необходимые баночки для весны и тега для показа.экспорт в pdf, excel, xml с помощью displayTag с пружиной не работает

мой JSP код:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> 
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> 
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> 
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 

<head> 

</head> 

<body> 

    <div> 
     <c:if test="${not empty recordList}"> 
     <display:table id="txt" pagesize="10" requestURI="" name="recordList"> 
      <display:column property="trafficType"></display:column> 
      <display:column property="publisherId"></display:column> 
      <display:column property="publisherName"></display:column> 
      <display:column property="publisherGroupDevice"></display:column> 
      <display:column property="clicks"></display:column> 
      <display:column property="cost"></display:column> 
      <display:column property="merchantSales"></display:column> 
     </display:table> 
     </c:if> 
    </div> 

</body> 

</html> 

и мой контроллер включить эту строку

model.addAttribute("recordList", recordList); 

я получаю эту ошибку на консоли

INFO aytag.export.ExportViewFactory - Initializing ExportViewFactory with type={csv,excel,xml,pdf} 
2016-05-19 22:35:55,660 [http-bio-8080-exec-2] INFO tag.properties.TableProperties - No LocaleResolver configured. 
2016-05-19 22:35:55,698 [http-bio-8080-exec-2] INFO tag.properties.TableProperties - I18nResourceProvider initialized to org.displaytag.localization.I18nJstlAdapter. 
2016-05-19 22:35:55,891 [http-bio-8080-exec-2] ERROR     nextagBase.jsp - forwarding to URL (iDChnl == null): /serv/main/serv/main/internal/v1/generateReport failed. 
java.lang.IllegalStateException: Cannot forward after response has been committed 
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:348) 
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338) 
    at nextag.api.Jsp.forward(Jsp.java:4472) 

ответ

0

Я сожалею, что я отвечал на этот вопрос; но после много отладки я обнаружил, что моя ошибка заключается в том, что отображаемый тег не получает правильную структуру данных списка от контроллера для работы, поэтому я исправил его и код работал отлично.

1

Это, как описано здесь java.lang.IllegalStateException: Cannot forward/sendRedirect after response has been committed Может быть вызванное вызовом forward(); после sendRedirect(); в мае этого года было сделано непреднамеренно, если у вас есть:

protected void doPost() { 
    if (someCondition) { 
     sendRedirect(); 
    } 
    forward(); // This is STILL invoked when someCondition is true! 
} 

чем метод forward будет называться после sendRedirect даже если условие истинно

 Смежные вопросы

  • Нет связанных вопросов^_^