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

[SOLUCIONADO] Java web

Estas en el tema de Java web en el foro de Java en Foros del Web. Hola amigos, tengo un problema con una aplicacion web en la que tengo un formulario y en algunos casos llevara una imagen subida por el ...
  #1 (permalink)  
Antiguo 07/01/2015, 14:18
 
Fecha de Ingreso: agosto-2013
Mensajes: 9
Antigüedad: 11 años, 3 meses
Puntos: 0
Exclamación Java web

Hola amigos, tengo un problema con una aplicacion web en la que tengo un formulario y en algunos casos llevara una imagen subida por el usuario el problema que tengo es que se me agotaron las ideas para recuperar los datos los guardarlo en una DB, estaba probando con la libreria de Oreilly pero cuando utilizo la clase de MultipartRequest me guarda como deseo todo y recupero los datos facilmente el problema que tengo es que a la imagen que guarde no la puedo mandar a llamar ya que me sale como que no es un directorio valido

este es el formulario:
Código HTML:
Ver original
  1.             <form method="POST" enctype="multipart/form-data" action="/AdminPortal/ConsultasMovil">
  2.                 <table>
  3.                     <tr>
  4.                         <td> Seleccione o ingrese la opción donde ingresara el proceso: </td>
  5.                         <td>
  6.                             <input type="radio" value="select" name="habilitaOpcion" id="habilitaOpcion"
  7.                                   onchange="habilitarOpcion(this.value);" onclick="text.disabled=true" checked/>
  8.                             <select name="opcion" id="opcion">
  9.                                 <option value=null></option>
  10.                                 <%ResultSet rs = Selects.ProcesosConsulta();
  11.                                  while(rs.next())
  12.                                  {
  13.                                      if(rs.getString("opcion") != null || rs.getString("opcion") != "")
  14.                                      {
  15.                                          out.println("<option value=\""+rs.getString("opcion")+"\""+
  16.                                                      ">"+rs.getString("opcion")+"</option>");
  17.                                       }
  18.                                   }
  19.                                 %>
  20.                             </select>
  21.                         </td>
  22.                         <td>
  23.                             <input type="radio" value="text" name="habilitaOpcion" id="habilitaOpcion"
  24.                                   onchange="habilitarOpcion(this.value);" onclick="text.disabled=false"/>
  25.                             <input type="text" name="text" placeholder="Ejem()" size="30" disabled/>
  26.                         </td>
  27.                     </tr>
  28.                     <tr>
  29.                         <td> Seleccione o ingrese el nombre del proceso: </td>
  30.                         <td>
  31.                             <input type="radio" value="selectp" name="selectp" id="selectp" onclick="textp.disabled=true"
  32.                                   onchange="habilitarProceso(this.value);" checked>
  33.                             <select name="pselect" id="pselect">
  34.                                 <option value=null></option>
  35.                             </select>
  36.                         </td>
  37.                         <td>
  38.                             <input type="radio" value="textp" name="selectp" id="selectp" onclick="textp.disabled=false"
  39.                                   onchange="habilitarProceso(this.value);">
  40.                             <input type="text" name="textp" id="textp" placeholder="Ingrese el nombre del proceso"
  41.                                   size="30" disabled>
  42.                         </td>
  43.                     </tr>
  44.                     <tr>
  45.                         <td valign="top"> Ingrese el paso correspondiente del proceso: </td>
  46.                         <td valign="top">
  47.                             <select name="paso" id="paso">
  48.                                 <%String pasos = Selects.pasos();%>
  49.                                 <%out.println(pasos);%>
  50.                             </select>
  51.                         </td>
  52.                         <td>
  53.                             <textarea name="descpaso" placeholder="Ingrese el paso correspondiente del proceso"
  54.                                      maxlength="1500"></textarea>
  55.                         </td>
  56.                     </tr>
  57.                     <tr>
  58.                         <td> Seleccione imagen para adjuntar en paso: </td>
  59.                         <td colspan="2">
  60.                             <input type="checkbox" id="checkimg" onchange="checkImagen(this.checked);">
  61.                             <input type="file" name="imgpaso" id="imgpaso" disabled="disabled">
  62.                         </td>
  63.                     </tr>
  64.                     <tr>
  65.                         <td>
  66.                             Agregar <input type="radio" value="agregar" name="AgregarModificar">
  67.                             &nbsp; &nbsp; &nbsp; &nbsp;
  68.                             Modificar <input type="radio" value="modificar" name="AgregarModificar">
  69.                         </td>
  70.                         <td></td>
  71.                     </tr>
  72.                     <tr>
  73.                         <td></td>
  74.                     </tr>
  75.                     <tr>
  76.                         <td></td>
  77.                     </tr>
  78.                     <tr>
  79.                         <td> <input type="submit" name="enviar" value="Aceptar"> </td>
  80.                     </tr>
  81.                     <tr>
  82.                         <td> <a href="/AdminPortal/CargaMovil/ConsultaMovil.jsp"> refrescar </a> </td>
  83.                     </tr>
  84.                 </table>
  85.             </form>
  86.         </div>
  87.     </body>
  88. </html>

esto lo recojo en un servlet estaba realizando pruebas con el MultipartParser:
Código Java:
Ver original
  1. try
  2.         {
  3.             String menu = Menu.MenuPrincipal();
  4.            
  5.             MultipartParser mp = new MultipartParser(request, 5*1024*1024);
  6.             Part part;
  7.             String item = "MOVIL";
  8.             String menu2 = "CONSULTAS";
  9.             String NombreProceso, paso, DescripcionPaso, imagen, destino, llamado, name, directorio, NombreImagen,
  10.                    RadioOpcion, RadioProceso, opcion=null;
  11.            
  12.             while((part = mp.readNextPart()) != null)
  13.             {
  14.                 if(part.isParam())
  15.                 {
  16.                     name = part.getName();
  17.                     if(name.equals("AgregarModificar"))
  18.                     {
  19.                         ParamPart pp = (ParamPart) part;
  20.                         String AgregarModificar = pp.getStringValue();
  21.                         //opcion
  22.                         if(name.equals("habilitaOpcion"))
  23.                         {
  24.                             RadioOpcion = pp.getStringValue();
  25.                             if (RadioOpcion.equals("opcion"))
  26.                             {
  27.                                 if(name.equals("opcion"))
  28.                                 {
  29.                                     opcion = pp.getStringValue();
  30.                                 }
  31.                             }
  32.                             else
  33.                             {
  34.                                 if(name.equals("text"))
  35.                                 {
  36.                                     opcion = pp.getStringValue();
  37.                                 }
  38.                             }
  39.                         }
  40.                         //nombre del proceso
  41.                         if(name.equals("selectp"))
  42.                         {
  43.                             RadioProceso = pp.getStringValue();
  44.                             if(RadioProceso.equals("selectp"))
  45.                             {
  46.                                 if(name.equals("pselect"))
  47.                                 {
  48.                                     NombreProceso = pp.getStringValue();
  49.                                 }
  50.                             }
  51.                             else
  52.                             {
  53.                                 if(name.equals("textp"))
  54.                                 {
  55.                                     NombreProceso = pp.getStringValue();
  56.                                 }
  57.                             }
  58.                         }
  59.                         //numero de paso
  60.                         if(name.equals("paso"))
  61.                         {
  62.                             paso = pp.getStringValue();
  63.                         }
  64.                         //descripcion de paso
  65.                         if(name.equals("descpaso"))
  66.                         {
  67.                             DescripcionPaso = pp.getStringValue();
  68.                         }
  69.                     }
  70.                 }
  71.                 else
  72.                 {
  73.                     if(part.isFile())
  74.                     {
  75.                         FilePart fp = (FilePart) part;
  76.                         NombreImagen = fp.getFileName();
  77.                        
  78.                         if(NombreImagen != null)
  79.                         {
  80.                             imagen = "S";
  81.                             directorio = "C:/Program Files/apache-tomcat-7.0.54/webapps/ROOT/PortalSAC/"+item+"/"+
  82.                                          menu2+"/"+opcion;
  83.                             destino = directorio+"/"+NombreImagen;
  84.                             llamado = "../PortalSAC/"+item+"/"+menu2+"/"+opcion+"/"+NombreImagen;
  85.                             File dir = new File(directorio);
  86.                             fp.writeTo(dir);
  87.                         }
  88.                         else
  89.                         {
  90.                             NombreImagen = "N/A";
  91.                             imagen = "N";
  92.                             destino = "N/A";
  93.                             llamado = "N/A";
  94.                         }
  95.                     }
  96.                 }
  97.             }
  98.         }

soy muy nuevo con estos temas asi que les pido piedad, esto lo trabajo con java y tomcat por cierto.

saludos y gracias
  #2 (permalink)  
Antiguo 08/01/2015, 02:05
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Java web

Hola:

"la imagen que guarde no la puedo mandar a llamar ya que me sale como que no es un directorio valido". ¿Dónde está el código que hace eso? ¿Qué directorio intentas usar? ¿En qué parte exactamente del código da ese error?

Se bueno.
__________________
Apuntes Java
Wiki de Programación

Etiquetas: servlet, upload
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 22:21.