Article View: es.comp.lenguajes.java
Article #1029Por favor...Ayuda...Error File.java(Compiled Code))
From: joeykami
Date: Wed, 27 Sep 2006 18:20
Date: Wed, 27 Sep 2006 18:20
228 lines
9121 bytes
9121 bytes
Tome un ejemplo de la red para subir archivos al servidor y por
consiguiente a la base de datos y en el ejmplo lo hace muy bien...y el
codigo q hace eso lo estoy acomodando en mi servlet donde tengo varios
datos y ya no toma el fichero a guardar =(... y marca un error de
tipo:
java.lang.NullPointerException
java.io.File.<init>(File.java(Compiled Code))
suministros.AltaArchivoSumLinServlet.saveFiles(AltaArchivoSumLinServlet.java:130)
suministros.AltaArchivoSumLinServlet.processRequest(AltaArchivoSumLinServlet.java:57)
suministros.AltaArchivoSumLinServlet.doPost(AltaArchivoSumLinServlet.java:146)
El codigo es el siguiente:
package suministros;
import java.io.*;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.File;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import persistencia.InformacionObras;
import persistencia.Licitaciones;
import persistencia.suministros;
import reglas.SuministrosReglas;
import org.apache.commons.fileupload.*;
import org.apache.commons.fileupload.FileUploadBase;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.fileupload.DefaultFileItemFactory;
import java.util.*;
import java.util.Iterator;
import java.util.List;
/**
* @version 1.0
* @author
*/
public class AltaArchivoSumLinServlet extends HttpServlet
{
protected void processRequest (HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
System.out.println ("Comenzamos procesamiento de ficheros");
try
{
//saveFiles(request,out,response);
saveFiles(request,out);
}
catch(Exception e)
{
e.printStackTrace();
}
out.close();
}
suministros objsuministros = new suministros ();
SuministrosReglas objregsum = new SuministrosReglas();
void depura(String cadena)
{
System.out.println("El errors es --> :"+cadena);
}
//private void saveFiles(HttpServletRequest request, PrintWriter out,
HttpServletResponse response) throws Exception {
private void saveFiles(HttpServletRequest request, PrintWriter out)
throws Exception {
//boolean ok1=false;
//boolean ok2=false;
//boolean ok3=false;
Licitaciones objlicitaciones= new Licitaciones();
InformacionObras objinfobras= new InformacionObras();
HttpSession session=request.getSession(true);
String licitacion = (String) session.getAttribute("licitacion");
session.setAttribute("licitacion",licitacion);
System.out.println ("1");
String linea = (String) session.getAttribute("linea");
session.setAttribute("linea",linea);
System.out.println ("2");
String usuario = (String) session.getAttribute("usuario");
session.setAttribute("usuario",usuario);
System.out.println ("3");
String tipo = (String) session.getAttribute("tipo");
session.setAttribute("tipo",tipo);
System.out.println ("4");
String familia = (String) session.getAttribute("familia");
session.setAttribute("familia",familia);
System.out.println ("5");
String idfamilia = (String) session.getAttribute("idfamilia");
session.setAttribute("idfamilia",idfamilia);
System.out.println ("6");
String idlicitacion=objlicitaciones.getidLic(licitacion);
String idLinea=objinfobras.getIdLT(linea);
String idusuario=usuario;
int idco=(objsuministros.getIdCoMaxLin(idLinea,idfamilia))+1;
System.out.println ("7");
DiskFileItemFactory factory = new DiskFileItemFactory();
System.out.println ("8");
factory.setSizeThreshold(5000000);
factory.setRepository(new File ("c:\\ArchivosSubidos"));
System.out.println ("9");
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(5000000);
List items = upload.parseRequest(request);
boolean ok = false;
if (items==null)
{
System.out.println("La lista es nula");
throw new FileUploadException("Sin archivos");
}
Iterator i = items.iterator();
FileItem actual=null;
while(i.hasNext())
{
actual=(FileItem)i.next();
String fileName = actual.getName();
System.out.println("Valor del filename --> :"+fileName);
String nombreFichero = (new File(fileName).getName());
System.out.println("Valor del nombreFichero --> :"+nombreFichero);
File fichero = new File ("c:\\ArchivosSubidos\\"+nombreFichero);
System.out.println("El nombre del fichero es -->
:"+fichero.getName());
fichero = new File ("c:\\ArchivosSubidos\\"+fichero.getName());
actual.write(fichero);
ok =
objsuministros.UpdateSumLinArchivo(idLinea,idfamilia,idco,fichero);
//ok=objsuministros.InsertaUploadM(fichero);
System.out.println("Paso el Insert --> "+ok);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException
{
System.out.println("Entro al segundo servlet");
processRequest(request,response);
}
private void printData(HttpServletRequest req, HttpServletResponse
resp) throws ServletException,IOException {
resp.setContentType("text/html");
PrintWriter out= new PrintWriter(resp.getOutputStream());
out.println("<html>");
out.println("<head></head>");
out.println("<body BGCOLOR=\"#abcdef\">");
out.println("<CENTER><H1><HR WIDTH='80%'><B><FONT
FACE=\"Arial,Helvetical\" COLOR=\"#3399FF\">" +
"Sus datos se han guardado Satisfactoriamente: </FONT> <HR
WIDTH='80%'></H1>");
out.println("<A
href=\"/prosilWeb/suministros/AltaSuministrosLin.jsp\"> Regresar a dar
de alta otro Suministro </A>");
out.println("</CENTER></body></html>");
out.close();
}
private void printDataError(HttpServletRequest req,
HttpServletResponse resp) throws ServletException,IOException {
resp.setContentType("text/html");
PrintWriter out= new PrintWriter(resp.getOutputStream());
out.println("<html>");
out.println("<head></head>");
out.println("<body BGCOLOR=\"#abcdef\">");
out.println("<CENTER><H1><HR WIDTH='80%'><B><FONT
FACE=\"Arial,Helvetical\" COLOR=\"#3399FF\">" +
"Los datos no pudieron ser guardados: </FONT> <HR
WIDTH='80%'></H1>");
out.println("<A href=\"javascript:history.back()\"> Intentar Otra Vez
</A>");
out.println("</CENTER></body></html>");
out.close();
}
public void printDataErrorLic(HttpServletRequest req,
HttpServletResponse resp)throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter out = new PrintWriter(resp.getOutputStream());
out.println("<html>");
out.println("<head></head>");
out.println("<body background=\"/prosilWeb/imagenes/fondo_1.jpg\">");
out.println("<CENTER><H3><HR WIDTH='45%'><B><FONT " +
"FACE=\"Arial,Helvetica\" COLOR=\"#3399FF\">" +
"No se pudo realizar la Transacción Correctamente: <BR><BR>Debido
a "+
"que la Licitación se encuentra en su Versión Final"+
"<BR><BR>y es de Solo lectura, solo son válidas las Consultas
<BR><BR>"+
"No intente realizar algun actividad diferente</FONT><HR
WIDTH='45%'></H1>");
out.println("<A
href=\"/prosilWeb/suministros/AltaRefaccionesLin.jsp\"> Intentar Otra
Vez </A>");
out.println("</CENTER></body></html>");
out.close();
}
}
Gracias...
Technical Details
Message-ID:
<1159381203.843450.169420@m73g2000cwd.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!m73g2000cwd.googlegroups.com!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Thread: 1116f3,75ee5e7cf2dc1298,start X-Google-Attributes: gid1116f3,public X-Google-Language: ENGLISH,ASCII Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!m73g2000cwd.googlegroups.com!not-for-mail From: "joeykami@gmail.com" <joeykami@gmail.com> Newsgroups: es.comp.lenguajes.java Subject: Por favor...Ayuda...Error File.java(Compiled Code)) Date: 27 Sep 2006 11:20:03 -0700 Organization: http://groups.google.com Lines: 229 Message-ID: <1159381203.843450.169420@m73g2000cwd.googlegroups.com> NNTP-Posting-Host: 200.4.3.159 Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1159381209 23817 127.0.0.1 (27 Sep 2006 18:20:09 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Wed, 27 Sep 2006 18:20:09 +0000 (UTC) User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0),gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: m73g2000cwd.googlegroups.com; posting-host=200.4.3.159; posting-account=zWv_cw0AAABpSzAt2DYAWR_n1mkUl4w9