Servlet só pega valores via GET

5 respostas
J

Pessoal,

Já pesquisei muito e não achei a solução para o meu problema. Acredito que seja uma bobeira, mas ainda não consegui resolver.

Tenho o seguinte form:
<form method="post" action="UploadServlet" enctype="multipart/form-data">   
                              
                <fieldset>  
                    <legend>Arquivos de entrada</legend>
                    
                    <table cellpadding="5" cellspacing="5"> 
                        <tr>
                            <td>
                                <strong>Arquivo 1 - Disciplinas</strong>
                                <input type="file" name="disciplinas"/>                                  
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <strong>Arquivo 2 - Pré-requisitos</strong>
                                <input type="file" name="preRequisitos" />
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <strong>Arquivo 3 - Histórico Escolar</strong>
                                <input type="file" name="historico" />
                            </td>
                        </tr>  
                        <tr>
                            <td>
                                <input type="submit" name="enviar" value="Enviar"/>
                                <input type="reset" name="limpar" value="Cancelar"/>
                            </td>
                        </tr>
                    </table>                                                                                                                                                                                       
                </fieldset>  
            </form>
E a minha servlet está assim:
@WebServlet(name = "UploadServlet", urlPatterns = {"/UploadServlet"})
public class UploadServlet extends HttpServlet {

    /**
     * Processes requests for both HTTP
     * <code>GET</code> and
     * <code>POST</code> methods.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {    
                
        PrintWriter out = response.getWriter();
        
        out.println(request.getParameter("disciplinas"));
        
        out.close();        
    }

Não consigo recuperar os parâmetros da minha página JSP via POST, apenas via GET. Por que?

Obrigado.

5 Respostas

RodrigoKaos

Vc está utilizando:

[i]e por isso n consegue recuperar os parâmetros através de getParameter, não me lembro a abordagem correta, mas com uma simples pesquisa no google vc encontra.

Boa sorte :slight_smile: [/i]

J

Muito obrigado.

Não sabia que não podia utilizar esse enctype.

Vou pesquisar aqui como se faz.

E
int MB = 1024 * 1024;
		DiskFileItemFactory factory = new DiskFileItemFactory();

		factory.setSizeThreshold(MB);
		File file = new File("/temp");
		factory.setRepository(file);

		ServletFileUpload upload = new ServletFileUpload(factory);

		upload.setSizeMax(MB);

		List<DiskFileItem> items = upload.parseRequest(request);

no form

method="post" id="formulario" enctype="multipart/form-data"

P

Amigo Jefferson, edite seu primeiro post para colocar como RESOLVIDO e não o da solução ok?

abs

E

a solução eu coloquei ai, pode fazer com post q dá certo

Criado 19 de setembro de 2014
Ultima resposta 23 de set. de 2014
Respostas 5
Participantes 4