Desktop acessando WEB

Ola companheiros…

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:

  1. Qual a melhor tecnologia para usar no sistema desktop para envia a String para o servidor??
  2. Como o desktop saberá o endereço do servidor??
  3. 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…

Abraços.

jopss :stuck_out_tongue:

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ê.

[]´s

vlw cara…

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…

o servidor nao eh local, está na internet…

jopss [:p]

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.

[]´s

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…

vlw

abraços

jopss [:p]

Procure a API Commons HttpUtils que facilita bastante o tratamento com o protocolo HTTP.