🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #1029

Por favor...Ayuda...Error File.java(Compiled Code))

#1029
From: joeykami
Date: Wed, 27 Sep 2006 18:20
228 lines
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-mail

Show 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