![]() |
Servlet Java Hola, He empezado a hacer un Servlet y he probado a enviar desde el cliente una palabra. Codigo cliente: . . //envia la palabra OutputStream os = c.openOutputStream(); os.write(("Prueba="+Envio).getBytes()); os.flush(); os.close(); . . Codigo Servlet: . . String recibido = request.getParameter("Prueba"); . . El problema que tengo es que lo que me llega al servlet es null. En cambio si quito el os.flush() si que llega al servlet correctamente la palabra. Veo que en la mayoria de webs donde se puede encontrar material de servlets hacen primero un flush y luego cierran el stream y me gustaria saber porque a mi no me funciona. Gracias |
Re: Servlet Java ¿Y como te conectas al Servlet? ¿Directamente con sockets o usando HttpUrlConnection? |
Re: Servlet Java uso HttpUrlConnection |
Re: Servlet Java el flush()te sirve para vaciar el buffer cuando se encuentra lleno es muy recomndable cuando lo iutilizas en transmisiones por medio de sockets |
Re: Servlet Java El error es bastante extraño puesto que, supuestamente, un close hace tambien un flush, asi que no tendría que haber diferencia. Como mucho que en el segundo caso haces dos veces flush. De todas formas, en el trozo de codigo que muestras no se ve como tratas el objeto HttpUrlConnection y quizá está por ahí la cosa. ¿Sigues lo que recomiendan los tutoriales? http://java.sun.com/docs/books/tutor...ngWriting.html Suerte. |
Re: Servlet Java Realmente me daba un poco d verguenza explicarlo todo porque no se mucho del tema y no queria meter la pata... pero es una aplicacion J2ME para moviles. Hago un HttpConnection (que creia que funcionaba igual que HttpURLConnection). public void run(){ try{ c = (HttpConnection)Connector.open(URL); c.setRequestMethod(HttpConnection.POST); c.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); c.setRequestProperty("Connection", "close"); OutputStream os = c.openOutputStream(); //envia la palabra os.write(("Prueba="+Envio).getBytes()); os.flush(); os.close(); }catch(IOException e){} } |
Re: Servlet Java Jejeje, no te ha de dar verguenza, pero en este caso es importante puesto que las librerias que hay por debajo en el Java normal y en J2ME no son las mismas. Puede ser que tengan un bug, y no permitan hacer un flush(), pero si haciendo un close() te funciona, al menos ya sabes que de alguna forma funciona. No he trabajado con J2ME, así que mucho más no te puedo decir. Suerte |
Respuesta: Servlet Java Cita:
Saludos! |
| La zona horaria es GMT -6. Ahora son las 08:01. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.