PDA

View Full Version : [JSP] Problema pagina jsp in Tomcat


Unrue
13-01-2007, 16:59
Salve,
ho un problema di visualizzazione di una pagina jsp sotto Tomcat.. Allora, ho creato due jsp chiamati errore.jsp e main.jsp . Quest'ultimo si collega ad una servlet di nome Visualizza.

Questo č il main.jsp:



<html>
<%@ page errorPage="errore.jsp" %>
<%@ page language="java" import="javazoom.upload.*,java.util.*" %>

<jsp:useBean id="upBean" scope="page" class="javazoom.upload.UploadBean" >
<jsp:setProperty name="upBean" property="folderstore" value="/uploads" />
</jsp:useBean>


<head>
<title>Calcolo Trasposta in parallelo</title>
<style TYPE="text/css">
<!--
.style1 {
font-size: 12px;
font-family: Verdana;
}
-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">

<form method="post" action="main.jsp" name="upform" enctype="multipart/form-data">
<table width="60%" border="0" cellspacing="1" cellpadding="1" align="center" class="style1">
<tr>
<td align="left"><b>Selezionare un file da spedire:</b></td>
</tr>
<tr>
<td align="left">
<input type="file" name="uploadfile" size="50">
</td>
</tr>
<tr>
<td align="left">
Dimensione1: <input type="text" name="dim1" size="4">
Dimensione2: <input type="text" name="dim2" size="4">
Numero processori: <input type="text" name="nproc" size="4">
</td>
</tr>
<tr>
<td align="left">
<input type="hidden" name="todo" value="upload">
<input type="submit" name="Submit" value="Upload">
<input type="reset" name="Reset" value="Annulla">
</td>
</tr>
</table>
<br>


<%
if (MultipartFormDataRequest.isMultipartFormData(request))
{
// Uses MultipartFormDataRequest to parse the HTTP request.
MultipartFormDataRequest mrequest = new MultipartFormDataRequest(request);

String todo = null;
if (mrequest != null)
{
String d1=mrequest.getParameter("dim1");
String d2=mrequest.getParameter("dim2");
String d3=mrequest.getParameter("nproc");

if ((d1!=null && d1.length()>0) && (d2!=null && d2.length()>0) && (d3!=null && d3.length()>0)){
todo = mrequest.getParameter("todo");

if ( (todo != null) && (todo.equalsIgnoreCase("upload")) )
{
Hashtable files = mrequest.getFiles();
if ( (files != null) && (!files.isEmpty()) )
{
UploadFile file = (UploadFile) files.get("uploadfile");
if (file != null)
{
upBean.setOverwrite(true);
upBean.store(mrequest, "uploadfile");
String location="\"http://localhost:8080/ProgettoSDM/visualizza";
location=location+"?file_in="+file.getFileName()+"&dim_1="+d1+"&dim_2="+d2+"&nprocs="+d3+"\"";
out.println("<H1><div align=\"center\"><BR><B><a href="+location+" target=_blank>Visualizza risultato</a></B></div></H1>");
} //if(file!=null)
} //if (files!=null)
else
{out.println("<li>Nessun file spedito");} // else
} //if(todo!=null
} // if(d1!=null)
} //if mrequest!=null
else{out.println("<BR> Non sono stati immessi tutti i dati necessari");}
} // if MultipartFormDataRequest
%>

</form>
</body>
</html>

In pratica carica un file ed alcuni parameti ,poi li passa alla servlet. Purtroppo, quando deployo il file war sotto Tomcat e chiamandolo, mi viene:

org.apache.jasper.JasperException
org.apache.jasper.JasperException at

org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:359) at

org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:306)
at org.apache.jsp.main_jsp._jspService(main_jsp.java:57) at

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at

javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at

javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595)

Ho scoperto che la causa di questo č il bean che creo all'inizio. Infatti se lo tolgo insieme al codice Java nel mezzo, la pagina jsp bėviene visualizzata. Credo sia un problema di librerie, in quanto ad un mio amico funzionaperfettamente :(

Unrue
13-01-2007, 18:06
Ho risolto, era sbagliato value="/uploads" . Ho copiato UploadBean in una cartella uploads ec ho inserito : value="./uploads"