Cita:
Iniciado por wifer Kangulo
este es el error que me genera cuando corro un reporte desde jsp.
si me puedes ayudar de agradezco.
descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.
excepción
javax.servlet.ServletException: C:\Tomcat 5.5\webapps\empleo\empleo\reportes\oto.jasper
org.apache.jasper.runtime.PageContextImpl.doHandle PageException(PageContextImpl.java:846)
org.apache.jasper.runtime.PageContextImpl.handlePa geException(PageContextImpl.java:779)
org.apache.jsp.jsp.runreport_jsp._jspService(org.a pache.jsp.jsp.runreport_jsp:82)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:99)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:325)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
causa raíz
net.sf.jasperreports.engine.JRException: C:\Tomcat 5.5\webapps\empleo\empleo\reportes\oto.jasper
net.sf.jasperreports.engine.util.JRLoader.loadObje ct(JRLoader.java:74)
net.sf.jasperreports.engine.JasperFillManager.fill Report(JasperFillManager.java:162)
net.sf.jasperreports.engine.JasperRunManager.runRe portToPdf(JasperRunManager.java:125)
org.apache.jsp.jsp.runreport_jsp._jspService(org.a pache.jsp.jsp.runreport_jsp:65)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:99)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:325)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
nota La traza completa de la causa de este error se encuentra en los archivos de diario de Apache Tomcat/5.5.8.
Primero que nada, el foro es bastante bueno, por lo que espero puedan ayudarme, por lo que he leído (ya leí el foro completo las 18 pag.) primero defino mi ambiente de trabajo:
iReports 0.5.1;Tomcat 5.5,Dreamweaver MX 2004 (solo como diseñador),jdk1.5.0_03, es todo, creo. Despues, y antes de que me regañeñ, como lo mencione lei el foro completo (este es el motivo de porque hice referencia al mensaje) y efectivamente alguien (Wifer, pregunta en pag. 6) se encontró con mi problema y alguien más(en este caso Kangulo,responde en pag. 7), pero en la respuesta pide verifique los
*.jar (commons-beanutils-1.5.jar; commons-collections-2.1.jar; commons-digester-1.7.jar;commons-logging-1.0.2.jar;itext-1.3.1.jar;poi-2.0-final-20040126.jar;iReport.jar;jasperreports-1.0.1.jar) que sean los mismos en el servidor Tomcat(/common/lib) que los que tiene el iReports, en mi caso ya verifique e incluso los archivos los coloque en el WEB-INF/lib de mi sitio web, los coloque en mi jdk(/jre/lib/ext) todas las versiones son las mismas, de hecho utilizo las que vienen con iReportes (de hecho es lo unico que tengo), ya reinicie mi servidor y nada de nada. Alguien podría decirme alguna otra probable solución. Anexo mi código JSP:
/*******************CÓDIGO JSP**********/
//OBTENEMOS LOS CAMPOS DEL FORMULARIO
String ficha = request.getParameter("ficha").trim();
String tramite = request.getParameter("tramite").trim();
String nombre = request.getParameter("nombre").trim();
String cargo = request.getParameter("cargo").trim();
String nivel = request.getParameter("nivel").trim();
String dependencia = request.getParameter("dependencia").trim();
String organismo = request.getParameter("organismo").trim();
String centro = request.getParameter("centro").trim();
String depto = request.getParameter("depto").trim();
String ubicacion = request.getParameter("ubicacion").trim();
String tel_dom = request.getParameter("tel_dom").trim();
String tel_ofi = request.getParameter("tel_ofi").trim();
String extension = request.getParameter("extension").trim();
String autoriza = request.getParameter("autoriza").trim();
String email = new String("
[email protected]");
String clave = new String();
//VERIFICAMOS EL TIPO DE TRAMITE PARA EL ASUNTO DEL MENSAJE
if(tramite.equals("SSR"))
clave = "ASIGNACIÓN DEL SERVICIO DE RADIOLOCALIZACIÓN";
if(tramite.equals("SSRC"))
clave = "ASIGNACIÓN DEL SERVICIO DE RADIOCOMUNICACIÓN";
if(tramite.equals("SSTC"))
clave = "ASIGNACIÓN DEL SERVICIO DE TELEFONÍA CELULAR";
if(tramite.equals("SSTC-M"))
clave = "ASIGNACIÓN DEL SERVICIO DE TELEFONÍA CELULAR PARA ENVIO RECEPCIÓN DE MENSAJES";
//REALIZAMOS LA CONEXION A LA BDD
//CLASE CREADA POR MI, DE HECHO NO LA NECESITO, PERO COMO PIDE LA CONEXION PUES LA ANEXO.
ConexionBD consultar = new ConexionBD();
consultar.Conectar();
//Este es la direccion del sitio donde tengos los .xml y hago referencia al archivo
File reportFile = new File(application.getRealPath("/solicitud2.jasper"));
Map parameters = new HashMap();
parameters.put("Nombre",nombre);
parameters.put("Ficha",ficha);
parameters.put("Cargo",cargo);
parameters.put("Nivel",nivel);
parameters.put("Dependencia",dependencia);
parameters.put("Organismo",organismo);
byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (),parameters,consultar.Conexion);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream OuputStream = response.getOutputStream();
OuputStream.write(bytes,0, bytes.length);
OuputStream.flush();
OuputStream.close();
//********************FIN DE CÓDIGO****************/
De hecho no necesito conexion a BDD ya que solo necesito los parametros, pero como no encontré en el foro como NO indicar conexion pues lo deje así.
De antemano muchas gracias
y espero alguien puede auxiliarme.