Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] /servlet/uploadFile no está disponible.

Estas en el tema de /servlet/uploadFile no está disponible. en el foro de Java en Foros del Web. DE VERDAD NO ENTIENDO ALGUIEN ME PODRA AYUDAR.... SOY TOTALMENTE NUEVA EN ESTO Y NO ENTIENDO A QUE SE REFIERE CON QUE El recurso requerido ...
  #1 (permalink)  
Antiguo 21/11/2011, 10:03
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Sonrisa /servlet/uploadFile no está disponible.

DE VERDAD NO ENTIENDO ALGUIEN ME PODRA AYUDAR.... SOY TOTALMENTE NUEVA EN ESTO Y NO ENTIENDO A QUE SE REFIERE CON QUE El recurso requerido (/servlet/uploadFile) no está disponible.

ESTE ES MI JSP
Código JSP:
Ver original
  1. <%@page contentType="text/html"%>
  2. <%@page pageEncoding="UTF-8"%>
  3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  4.    "http://www.w3.org/TR/html4/loose.dtd">
  5. <html>
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  8. <title>JSP Page</title>
  9. </head>
  10. <body>
  11. <p>Guardar Archivo</p>
  12. <form method="POST" enctype='multipart/form-data' action="/servlet/uploadFile">
  13. <input type="file" name="fichero">
  14. <input type="submit" value="Guardar" >
  15. </form>
  16. </body>
  17. </html>

MI .JAVA
Código JAVA:
Ver original
  1. package servlet;
  2.  
  3. import java.io.*;
  4. import java.net.*;
  5.  
  6. import javax.servlet.*;
  7. import javax.servlet.http.*;
  8.  
  9. import org.apache.commons.fileupload.*;
  10. import java.util.*;
  11.  
  12.  
  13. public class uploadFile extends HttpServlet {
  14.  
  15.     protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  16.     throws ServletException, IOException {
  17.         response.setContentType("text/html");
  18.         PrintWriter out = response.getWriter();
  19.         out.println("<html>");
  20.         out.println("<head>");
  21.         out.println("<title>Servlet</title>");
  22.         out.println("</head>");
  23.         out.println("<body>");
  24.    
  25.         System.out.println("Comenzamos procesamiento ficheros");
  26.  
  27.         procesaFicheros(request,out);
  28.  
  29.         out.println("</body>");
  30.         out.println("</html>");
  31.  
  32.         out.close();
  33.     }
  34.  
  35.  
  36.     void depura(String cadena)
  37.     {
  38.         System.out.println("El error es " + cadena);
  39.     }
  40.  
  41.     public boolean procesaFicheros(HttpServletRequest req, PrintWriter out ) {
  42.         try {
  43.  
  44.             out.print("<br>El numero de ficheros su </br>");
  45.  
  46.             DiskFileUpload fu = new DiskFileUpload();
  47.  
  48.             fu.setSizeMax(1024*512); // 512 K
  49.             out.print("<br>El numero de ficheros su2 </br>");
  50.  
  51.             depura("Ponemos el tamaño máximo");
  52.             fu.setSizeThreshold(4096);
  53.  
  54.             out.print("<br>El numero de ficheros su3 </br>");
  55.  
  56.             fu.setRepositoryPath("/tmp");
  57.             out.print("<br> El numero de ficheros su10  </br>");
  58.  
  59.             List fileItems = fu.parseRequest(req);
  60.  
  61.  
  62.             if(fileItems == null)
  63.             {
  64.                 out.print("<br>El numero de ficheros su4 </br>");
  65.  
  66.                 depura("La lista es nula");
  67.                 return false;
  68.             }
  69.  
  70.             out.print("<br>El número de ficheros subidos es: " +  fileItems.size());
  71.  
  72.            Iterator i = fileItems.iterator();
  73.             FileItem actual = null;
  74.             depura("estamos FileItem actual = null;en la iteración");
  75.             while (i.hasNext())
  76.             {
  77.                 actual = (FileItem)i.next();
  78.                 String fileName = actual.getName();
  79.                 out.println("<br> Nos han subido el fichero: " + fileName);
  80.  
  81.                 File fichero = new File(fileName);
  82.                 depura("El nombre del fichero es " + fichero.getName());
  83.  
  84.                fichero = new  File("C:\\ficherossubidos\\" + fichero.getName());
  85.  
  86.                actual.write(fichero);
  87.             }
  88.  
  89.         }
  90.         catch(Exception e) {
  91.             depura("Error de Aplicación " + e.getMessage());
  92.             return false;
  93.         }
  94.  
  95.         return true;
  96.     }
  97.  
  98.  
  99.     protected void doPost(HttpServletRequest request, HttpServletResponse response)
  100.     throws ServletException, IOException {
  101.         processRequest(request, response);
  102.     }
  103. }

MI PREGUNTA ES ME FALTA ALGO? QUE MAS TENGO QUE HACER YA TENGO UNA SEMANA ES ESTO Y NO SE COMO TERMINARLO
  #2 (permalink)  
Antiguo 21/11/2011, 14:46
Avatar de leidy_03  
Fecha de Ingreso: septiembre-2008
Mensajes: 83
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: /servlet/uploadFile no está disponible.

este tipo de mensajes salen es porque el jsp no encuentra el servlet. Revisa si la ruta en la que esta tu servlet, correspone a la que tienes en el action del formulario.
  #3 (permalink)  
Antiguo 21/11/2011, 14:55
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

el servlet es el paquete, no? yo mi . JAVA lo tengo un paquet que se llama ve.gob.prueba.model, tendria que cambiar el servel por esto ve.gob.prueba.model verdad?
  #4 (permalink)  
Antiguo 21/11/2011, 14:59
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

tambien cree un controlador

Código java:
Ver original
  1. import java.io.File;
  2.  
  3. import javax.servlet.http.HttpServletRequest;
  4. import javax.servlet.http.HttpServletResponse;
  5.  
  6. import org.springframework.validation.BindException;
  7. import org.springframework.web.servlet.ModelAndView;
  8. import org.springframework.web.servlet.mvc.SimpleFormController;
  9.  
  10.  
  11.  
  12.    
  13.  
  14.  
  15. @SuppressWarnings("deprecation")
  16. public class OfficeController extends SimpleFormController{
  17.    
  18.     private GeneralDaoImpl service=new GeneralDaoImpl();
  19.    
  20.      protected Object formBackingObject ( HttpServletRequest request)
  21.      throws Exception {
  22.         return service;
  23.     }
  24.      
  25.         protected ModelAndView onSubmit(HttpServletRequest request,
  26.     HttpServletResponse response, Object command, BindException errors)
  27.     throws  Exception {
  28.        
  29.         ModelAndView modelAndView;
  30.         File fileName;
  31.        
  32.         fileName= (File) request.getSession().getAttribute("archivo");
  33.        
  34.        
  35.        
  36.        
  37.        
  38.         modelAndView = new ModelAndView("office");
  39.         return modelAndView;
  40.     }
  41. }
  #5 (permalink)  
Antiguo 21/11/2011, 15:25
Avatar de leidy_03  
Fecha de Ingreso: septiembre-2008
Mensajes: 83
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: /servlet/uploadFile no está disponible.

Como tengo entendido, en mis proyectos nunca he puesto el paquete simplemente el nombre del servlet y ya, intenta poner solamente uploadFile en el action.
  #6 (permalink)  
Antiguo 22/11/2011, 07:50
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

en mi action lo coloque con la direccion exacta de mi servlet

Código java:
Ver original
  1. <form method="POST" enctype='multipart/form-data' action=""/ve.gob.prueba.model/uploadFile">

no me lanza ningun error

Gracias!!
  #7 (permalink)  
Antiguo 22/11/2011, 10:22
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

aff! sigo teniendo el mismo problema lo hice como tu dices colocando solo el nombre del servlet pero me sigue dando el mismo problema

El recurso requerido (/uploadFile) no está disponible.
  #8 (permalink)  
Antiguo 22/11/2011, 10:54
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 2 meses
Puntos: 78
Respuesta: /servlet/uploadFile no está disponible.

Hola,
en el action tienes que poner únicamente el nombre del servlet sin extensión ni nada, y sin el package.

Si no te lo coge, asegúrate que el Servlet es correcto y visible por el servidor. En el método doGet escribe algun System.out.println("...."); o algun texto que se vea vía web y ejecutas directamente el Servlet. Deberás de verlo.

Un saludo.
  #9 (permalink)  
Antiguo 22/11/2011, 12:10
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

TAMBIEN COLOQUE

<form method="POST" enctype='multipart/form-data' action="/uploadFile">

Y ME DICE LO MISMO QUE El recurso requerido (/uploadFile) no está disponible
  #10 (permalink)  
Antiguo 22/11/2011, 12:53
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 2 meses
Puntos: 78
Respuesta: /servlet/uploadFile no está disponible.

Probaste lo que te dije?
  #11 (permalink)  
Antiguo 22/11/2011, 12:55
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

si y no me imprime nada lo unico que dice es:
.
.
.
.
.

erBackgroundProcessor[StandardEngine[Catalina]]] INFO org.apache.tiles.context.AbstractTilesApplicationC ontextFactory - Initializing Tiles2 application context. . .
1844 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.apache.tiles.context.AbstractTilesApplicationC ontextFactory - Finished initializing Tiles2 application context.
1860 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.apache.tiles.access.TilesAccess - Publishing TilesContext for context: org.springframework.web.servlet.view.tiles2.Spring TilesApplicationContextFactory$SpringWildcardServl etTilesApplicationContext
1860 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.springframework.web.servlet.handler.BeanNameUr lHandlerMapping - Mapped URL path [/ejemplo.htm] onto handler '/ejemplo.htm'
1860 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.springframework.web.servlet.handler.BeanNameUr lHandlerMapping - Mapped URL path [/office.htm] onto handler '/office.htm'
1860 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.springframework.web.servlet.handler.BeanNameUr lHandlerMapping - Mapped URL path [/uploadFile.htm] onto handler '/uploadFile.htm'
1860 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.springframework.web.servlet.handler.BeanNameUr lHandlerMapping - Mapped URL path [/inicio.htm] onto handler '/inicio.htm'
1860 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.springframework.web.servlet.handler.BeanNameUr lHandlerMapping - Mapped URL path [/welcome.htm] onto handler '/welcome.htm'
1938 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO org.springframework.web.servlet.DispatcherServlet - FrameworkServlet 'dispatcher': initialization completed in 110 ms
92016 [http-8085-exec-10] INFO org.springframework.web.context.support.GenericWeb ApplicationContext - Refreshing org.springframework.web.context.support.GenericWeb ApplicationContext@1a3f178: startup date [Tue Nov 22 14:24:53 BOT 2011]; parent: WebApplicationContext for namespace 'dispatcher-servlet'
92032 [http-8085-exec-10] INFO org.springframework.beans.factory.support.DefaultL istableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultL istableBeanFactory@1843ca4: defining beans [ejemplo,office,inicio,welcome]; parent: org.springframework.beans.factory.support.DefaultL istableBeanFactory@2445d7
  #12 (permalink)  
Antiguo 22/11/2011, 12:56
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

de verdad que ya no se que hacer estoy desde la semana pasada en esto y no se que hacer a parte de que no conosco el lenguaje Java
  #13 (permalink)  
Antiguo 22/11/2011, 13:26
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

Cita:
Iniciado por ElAthlit Ver Mensaje
Hola,
en el action tienes que poner únicamente el nombre del servlet sin extensión ni nada, y sin el package.

Si no te lo coge, asegúrate que el Servlet es correcto y visible por el servidor. En el método doGet escribe algun System.out.println("...."); o algun texto que se vea vía web y ejecutas directamente el Servlet. Deberás de verlo.

Un saludo.
no puedo utilizar el metodo doGet porque estoy trabajando con spring y hibernate
  #14 (permalink)  
Antiguo 02/12/2011, 10:57
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 2 meses
Puntos: 78
Respuesta: /servlet/uploadFile no está disponible.

Pero sí puedes levantar la aplicación, y escribir la dirección del servlet en el navegador directamente para ejecutarlo.

Un saludo.
  #15 (permalink)  
Antiguo 02/12/2011, 15:30
 
Fecha de Ingreso: mayo-2010
Mensajes: 99
Antigüedad: 14 años
Puntos: 5
Respuesta: /servlet/uploadFile no está disponible.

Wenas, porque no lo haces en struts ?.
Saludos.
  #16 (permalink)  
Antiguo 06/12/2011, 08:38
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: /servlet/uploadFile no está disponible.

Cita:
Iniciado por abulon81 Ver Mensaje
Wenas, porque no lo haces en struts ?.
Saludos.
para trabajar con struts tendria que recrear la arquitectura ya que tengo todo listo y en funcionamiento solo que por requerimiento de usuario se necesita adjuntar archivo.

Etiquetas: jsp, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:46.