Witam.

Z poziomu applet-u, usiłuję wysłać i obsłużyć jednocześnie dane przesłane metodami GET oraz POST.

Kod applet-u odpowiedzialny za wysyłanie danych:

 
            StringBuilder sb=  new StringBuilder();
            sb.append("Some text ...........");

            URL url = new URL("http://localhost:8084/NazwaServletu/NazwaServletu?hashType=MD5");
            HttpURLConnection connection = (HttpURLConnection)url.openConnection();                
            connection.setDoOutput(true);
            // connection.setRequestMethod("POST");
            connection.setRequestProperty("Content-Length", "" + sb.length());

            OutputStreamWriter outputWriter = new OutputStreamWriter(connection.getOutputStream());
            outputWriter.write(sb.toString());
            outputWriter.flush();
            outputWriter.close();
            
            BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            System.out.println(in.readLine());

Metody doPost oraz doGet z servlet-u:

 
@Override
    public void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        
        resp.setContentType("text/plain; charset=ISO-8859-2");
        PrintWriter out = resp.getWriter();
        
        if(req.getParameter("hashType").equals("MD5"))
        {            
            BufferedReader reader = req.getReader();
            StringBuilder sb = new StringBuilder();
            String line = reader.readLine();
            while (line != null) {
                sb.append(line + "\n");
                line = reader.readLine();
            }
            reader.close();
            String data = sb.toString();

            data = data.toUpperCase();

            out.println(data);
        }
    }
 
public void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        
        doPost(req, resp);
    }

Problem w tym, że po wykonaniu metody:

 
if(req.getParameter("hashType").equals("MD5"))

, ciało bloku if ( odczyt tekstu przesłanego metodą POST ), nie przesyła do appletu danych.

Jeżeli pozbędę się pobrania wartości parametru przesłanego metodą GET wszystko działa w porządku.

To co chciałbym uzyskać, to wykonanie odpowiednich działań na danych przesłanych metodą POST w zależności od podanego parametru GET.

Będę wdzięczny za wszelkie uwagi.

Pozdrawiam