2012-10-07 18 views
7

Duplicar posibles:
How to use Servlets and Ajax?Ajax de llamadas en la aplicación cliente Java

estoy usando el siguiente código en javascript hace una llamada Ajax:

function getPersonDataFromServer() { 
     $.ajax({ 
      type: "POST", 
      timeout: 30000, 
      url: "SearchPerson.aspx/PersonSearch", 
      data: "{ 'fNamn' : '" + stringData + "'}", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (msg) { 
       ... 
      } 
     }); 
    } 

lo haría me gusta hacer esto en Java también. Básicamente, me gustaría escribir una aplicación cliente Java que envíe estos datos a través de llamadas Ajax al servidor.

¿Cómo hago Ajax en Java?

+0

Lo que se busca es solicitud asincrónica en Java? – Prasanth

+0

Bueno, mi problema es la implementación real de esta solicitud de HTTP en java. –

Respuesta

8

AJAX no es diferente de cualquier otra llamada HTTP. Es, básicamente, Publicación de la misma URL de Java y no debe importar en lo que se refiere al servidor de destino:

final URL url = new URL("http://localhost:8080/SearchPerson.aspx/PersonSearch"); 
final URLConnection urlConnection = url.openConnection(); 
urlConnection.setDoOutput(true); 
urlConnection.setRequestProperty("Content-Type", "application/json; charset=utf-8"); 
urlConnection.connect(); 
final OutputStream outputStream = urlConnection.getOutputStream(); 
outputStream.write(("{\"fNamn\": \"" + stringData + "\"}").getBytes("UTF-8")); 
outputStream.flush(); 
final InputStream inputStream = urlConnection.getInputStream(); 

El código anterior es más o menos equivalente a la llamada jQuery AJAX. Por supuesto, debe reemplazar localhost:8080 con el nombre real del servidor.

Si necesita una solución más completa, considere la biblioteca y para la clasificación JSON.

Ver también

+0

Gracias Tomasz por su respuesta. Pero aún así, tengo una pregunta! Deseo enviar la solicitud al sitio web http://www.ratsit.se/BC/SearchPerson.aspx. He leído el código de parte de su cliente y entiendo que lo están enviando de la siguiente manera: http://codepaste.net/u7qc1o Ahora me gustaría escribir esta solicitud de ajax en Java Hice las cosas que mencionaste en la respuesta : http://codepaste.net/1rbgpx pero todavía nada ,,, ¿me pueden ayudar y por favor háganme saber lo que está mal? –

Cuestiones relacionadas