Ola pessoal! Estou com um problema aqui. Não estou conseguindo exportar as linhas do meu displaytag! Só exporta as colunas e mais nada! Olha meus codigos.
Essa é a pagina que exibe os titulos. Ok até ai.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Títulos</title>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
<script language="Javascript">
<!--
function CheckAll() {
for (var i = 0; i < document.Clientes.elements.length; i++) {
var x = document.Clientes.elements[i];
if (x.name == 'CheckTitulo') {
x.checked = document.Clientes.selall.checked;
}
}
}
//-->
</script>
<link rel="stylesheet" href="${pageContext.request.contextPath}/displaytag.css" type="text/css"/>
</head>
<body>
<center>
<font size="+3">Tabela Títulos</font>
</center>
<form action="TitulosChecked" method="post" name="Clientes" id="Clientes">
<p>
<input type="checkbox" name="selall" value="selall" onclick="CheckAll()">
Selecionar Todos</p>
<display:table name="titulos" class="displaytag.css" decorator="Decorator.Wrapper" defaultsort="2">
<display:column property="checktitulo" title="" style="width:1%" media="html"/>
<display:column property="nome"/>
<display:column property="email"/>
<display:column property="endereco"/>
<display:column property="bairro"/>
<display:column property="cidade"/>
<display:column property="cep"/>
<display:column property="estado"/>
<display:column property="cpf_cnpj"/>
<display:column property="fone"/>
<display:column property="login"/>
<display:column property="venc"/>
<display:column property="celular"/>
<display:column property="conta"/>
<display:column property="plano"/>
<display:column property="numero"/>
<display:column property="desconto"/>
<display:column property="acrescimo"/>
<display:column property="calculado"/>
<display:column property="valor"/>
<display:column property="valorpag"/>
<display:column property="valorger"/>
<display:column property="titulo"/>
<display:column property="datavenc"/>
<display:column property="nossonum"/>
<display:column property="datapag"/>
<display:column property="recibo"/>
<display:column property="tipo"/>
<display:column property="processamento"/>
<display:column property="usergerou"/>
<display:column property="coletor"/>
</display:table>
<p>
<input type="submit" name="Submit" value="Avançar">
</p>
</form>
</body>
</html>
Essa é o meu servlet para verificar as linhas checadas:
package Servlets;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
import Classes.DAO;
import Classes.Titulos;
/**
* Servlet implementation class TitulosChecked
*/
public class TitulosChecked extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
String selecionados[] = request.getParameterValues("CheckTitulo");
Collection<Titulos> titulos = new HashSet<Titulos>();
DAO dao = new DAO();
dao.Conectar();
for (int i = 0; i < selecionados.length; i++) {
titulos.add(dao.PesqTitulo(selecionados[i]));
}
request.setAttribute("titulosExport", titulos);
dao.FechaConexao();
RequestDispatcher rd = request.getRequestDispatcher("/ExportTitulos.jsp");
rd.forward(request, response);
} catch (NullPointerException e) {
RequestDispatcher rd = request.getRequestDispatcher("/SemRegistros.html");
rd.forward(request, response);
}
}
}
E essa é a pagina com problema que exibe as linhas checadas e tem uma opcao para exportar em baixo para excel
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page import="java.util.*" %>
<%@ page import="Classes.Titulos" %>
<%@ page import="Classes.DAO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Títulos para Exportar</title>
<link rel="stylesheet" href="${pageContext.request.contextPath}/displaytag.css" type="text/css"/>
</head>
<body>
<c:set scope="request" var="titulosExport" value="${titulosExport}"/>
<display:table name="titulosExport" class="displaytag.css" defaultsort="1" export="true">
<display:column property="nome"/>
<display:column property="email"/>
<display:column property="endereco"/>
<display:column property="bairro"/>
<display:column property="cidade"/>
<display:column property="cep"/>
<display:column property="estado"/>
<display:column property="cpf_cnpj"/>
<display:column property="fone"/>
<display:column property="login"/>
<display:column property="venc"/>
<display:column property="celular"/>
<display:column property="conta"/>
<display:column property="plano"/>
<display:column property="numero"/>
<display:column property="desconto"/>
<display:column property="acrescimo"/>
<display:column property="calculado"/>
<display:column property="valor"/>
<display:column property="valorpag"/>
<display:column property="valorger"/>
<display:column property="titulo"/>
<display:column property="datavenc"/>
<display:column property="nossonum"/>
<display:column property="datapag"/>
<display:column property="recibo"/>
<display:column property="tipo"/>
<display:column property="processamento"/>
<display:column property="usergerou"/>
<display:column property="coletor"/>
<display:setProperty
name="export.excel.label"
value="Exportar para o Excel"
/>
<display:setProperty
name="export.csv"
value="false"/>
<display:setProperty
name="export.xml"
value="false"/>
<display:setProperty
name="export.excel.filename"
value="Titulos.xls"/>
<display:setProperty
name="export.banner"
value="<div class='exportlinks'> {0} </div>"/>
</display:table>
</body>
</html>
O unico problema é esse de não exibir as linhas apenas as colunas no excel.
Obrigado.