Jah lí e entendi como que fuciona os Servlets e o Java Web Start, mas em todos os tutoriais nao tinha nada com oq eu queria fazer…
Preciso que minha aplicacao desktop (restrita ao desktop) envie informacoes a um servidor web java, que por sua vez armazanará oq foi enviado. para uma possivel exibicao em um browser… A aplicacao desktop nao será acessada pela internet, somente enviará os dados…
Digamos o seguinte: a aplicacao desktop necessita enviar uma String qualquer, como “PORCO DA INDIA”, para o servidor web mostrar em um browser…
segue o esquema:
A dúvida eh o seguinte:
Qual a melhor tecnologia para usar no sistema desktop para envia a String para o servidor??
Como o desktop saberá o endereço do servidor??
Qual tecnologia para o servidor receber a String, visto que nao foi passado por nenhum container da tela, soh pela rede…
O resto no servidor e na pagina eu faço de boa… minha duvida eh com o desktop…
URLConnection resolve todos os seus porblemas, ex:
public static void main( String [] args ) {
try {
URL url = new URL("http://localhost:9080/TesteWEB/TesteServlet");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
BufferedWriter out =
new BufferedWriter( new OutputStreamWriter( conn.getOutputStream() ) );
out.write("param=rafael");
out.flush();
out.close();
BufferedReader in =
new BufferedReader( new InputStreamReader( conn.getInputStream() ) );
String response;
while ( (response = in.readLine()) != null ) {
System.out.println( response );
}
in.close();
}
catch ( MalformedURLException ex ) {
// a real program would need to handle this exception
}
catch ( IOException ex ) {
// a real program would need to handle this exception
}
}
Ele manda o parâmetro “param” com valor “rafael” e logo depois pega a resposta e lê.
e a recepcao no servidor, como q ira proceder??? Tipo, mando pra porta do servidor… a aplicacao nao ira ficar ouvindo ela… e nao tem como fazer um getParameter pois nao eh nada que venha da tela e sim da rede…
Não entendi muito bem a dúvida, mas se for pra saber como o seu servlet vai pegar o parâmetro, vai ser como pegaria qualquer um.
O parâmetro “param” que passei por exemplo vai ser pego no doGet/doPost(obviamente, dependendo do http méthod que vc utilizar) do seu servlet, entendeu ?
Resumindo: Mesmo sendo enviado de uma main, para o seu servlet isso é transparente.
Bem, minha duvida eh sobre onde vae parar dentro de servlet…
Mas entendi que eh transparente… entao, mesmo que nao tem nada a ser pego em tela alguma, pois eh nada pela rede e soh, cai dentro do post ou get… nao sabia disso…