Problema com socket!

1 resposta
M

Estou com um problema , tenho uma conexao socket entre um aplicativo android , e um servidor em java , o servidor esta recebendo a mensagem certinho, porém eu nao consigo enviar mais de uma mensagem na mesma conexão ,eu acho que ele até envia , porem nao aparece na tela aqui minha classe servidor:

package com.sevidor;

import java.awt.Color;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.io.DataInputStream;
import java.io.Flushable;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
/**
 * 

 *
 */
public class Servidor extends JFrame {

	private static boolean executando = true;
	private static String mensagem;
	private static final int PORTA = 234;
        public static String ip ;
        public static int porta;
        private static JTextArea status = new JTextArea();  



        
        public Servidor () {  
            // Define o título da janela  
            super ("Servidor - BETA");  
            this.montaJanela ();  

            this.setDefaultCloseOperation(EXIT_ON_CLOSE);   //fecha aplicação quando clica no botao fechar do JFrame  
            this.setLocationRelativeTo(null);//centraliza o form   
            this.setBackground(Color.GRAY);
            
         }
        
        private void montaJanela () 
        {
        	
        	this.getContentPane ().add (status);  
        	
         }  
	public static void main(String[] args) {
		Servidor janela = new Servidor();
		janela.setVisible (true);  
		janela.setSize (500, 180); 
		try {
			
			ServerSocket server = new ServerSocket(234);
			InetAddress addr = InetAddress.getLocalHost();
			System.out.println("----------- SERVIDOR CONECTADO "
					+ addr.getHostAddress() + " PORTA " + PORTA
					+ " -----------");
			displayMessage("----------- SERVIDOR CONECTADO "
					+ addr.getHostAddress() + " PORTA " + PORTA
					+ " -----------");
                        //JOptionPane.showMessageDialog(null, "Servidor conectado IP :"+addr.getHostAddress()+" Porta :"+PORTA);
                        
			System.out.println("Esperando Conexoes.");
			displayMessage("\nEsperando Conexoes.");
			Socket socket = server.accept();
			
			System.out.println("Sevidor-> Conectou Ip "
					+ socket.getInetAddress().getHostAddress());
			displayMessage("\nSevidor-> Conectou Ip "
					+ socket.getInetAddress().getHostAddress());
			DataInputStream in = new DataInputStream(socket.getInputStream());

			try {
				
					mensagem = in.readUTF();
		        		String login[] = new String[2];
		        	login = mensagem.split("#");
					System.out.println("Servidor-> Recebeu Nome : "
							+login[0] );
					displayMessage("\nServidor -> Recebeu Nome : "+login[0]);
					
					System.out.println("Servidor-> Recebeu Mesa : "
							+ login[1] );
					displayMessage("\nServidor -> Recebeu Mesa : "+login[1]);
					System.out.println("Servidor -> Recebeu Pedido :"
							+ login[2]);
					displayMessage("\nServidor -> Recebeu Pedido : "+login[2]);	
					
				
					
				//in.close();
				
				//socket.close(); 
				executando = true;
				
			} catch (Exception e) {
				System.err.println("Servidor-> Erro: " + e.getMessage());
				executando = true;
			}

		}
		catch (Exception e) {
			e.printStackTrace();
		}
		
		
                

	}
	
	private static void displayMessage(final String texto) {
		SwingUtilities.invokeLater(
				new Runnable(){
					public void run(){
						status.append(texto);
					}
				}
		);
	}
}

1 Resposta

ViniGodoy

Leia: http://www.guj.com.br/java/136538-duvida-simples#735860

Em especial quando falo de tamanho da mensagem.

Criado 30 de maio de 2012
Ultima resposta 30 de mai. de 2012
Respostas 1
Participantes 2