Foros del Web » Programación para mayores de 30 ;) » Java »

ips en campos de texto

Estas en el tema de ips en campos de texto en el foro de Java en Foros del Web. Resulta que tengo un problema, resulta que tengo un programa con 2 campos de texto y un jlist con un modelo definido, bueno pues quiero ...
  #1 (permalink)  
Antiguo 30/05/2009, 07:04
 
Fecha de Ingreso: abril-2007
Mensajes: 166
Antigüedad: 17 años, 1 mes
Puntos: 2
ips en campos de texto

Resulta que tengo un problema, resulta que tengo un programa con 2 campos de texto y un jlist con un modelo definido, bueno pues quiero que me meta en los 2 campo de texto la primera direccion ip del jlist y la ultima.

Pero me da este error "AWT-EventQueue-0" java.util.NoSuchElementException", dice que no hay elementos, pero si los tiene.

Lo que he hecho a sido esto

desde.setText((String)modelo.lastElement().toStrin g());
hasta.setText(modelo.firstElement().toString());;

Aqui os pongo la clase servidor

Código:
public class Servidor implements Runnable{

    
   int puertoServidor=1998;
   int tamanoBuffer=4;
   DatagramSocket ds;
   byte buffer[] = new byte[tamanoBuffer];
   int tamarrayips=10;
   short [] compruebaips=new short[tamarrayips];
   String [] arrayips = new String[tamarrayips];
   int i=0;
   public int cadencia;
   JList jlogger = new JList();
   DefaultListModel modelo;
   DefaultListModel modelo2;
   
public Servidor(DefaultListModel mod,DefaultListModel mod2) throws IOException{
    modelo=mod;
    modelo2=mod2;
       
    try{  
              //----------------CODIFICACION ARCHIVOS CONFIGURACION----------                 
                    File archivo = null;
                    FileReader fr = null;
                   
                    archivo = new File ("config_server.conf");
                    fr = new FileReader (archivo);
                    BufferedReader br = new BufferedReader(fr);
                    String linea;
                    ArrayList cadenas = new ArrayList();

                    while((linea=br.readLine())!=null)
                    {  
                        System.out.println(linea);
                        cadenas.add(linea);
                        
                        
                    }
                     puertoServidor= Integer.parseInt((String) cadenas.get(0));
                     cadencia= Integer.parseInt((String) cadenas.get(1));
                   if( fr != null)
                   fr.close();
          }
        catch(FileNotFoundException ex6)
                
        {
                try
                {
                    FileWriter fichero = new FileWriter("config_server.conf");
                    PrintWriter pw = new PrintWriter(fichero);
                        
                    pw.println("El fichero no existía");
                    pw.close();
                }
                catch (Exception c)
                {
                    c.printStackTrace();
                }
             
                       
        }
}
    

    public void run() {
        try {      
           ds = new DatagramSocket(puertoServidor);
           
               DatagramPacket p = new DatagramPacket(buffer, buffer.length);             
           
               while(true)
                   {         
                             ds.receive(p);//recibe el paquete
                             
                              int existe=0;
                              for(int i=0;i<modelo.getSize();i++){
                                  if(modelo.elementAt(i).equals(p.getAddress().toString())){
                                    existe=1; 
                                    setComprueba(i,(short)0);
                                   
                                  }
                              }
                              if(existe==0){
                                  anadirPC(p.getAddress().toString());
                                  //setComprueba(i,(short)0);
                                 
                              }
                              
                               log(p,buffer);
                                                     
               }
        }
  
        catch(SocketException e)
        {
            System.out.println("Se ha producido error en el socket");            
        }
        catch (UnknownHostException e)
        {
            System.out.println("Error host desconocido");
        }
        catch(IOException e){
            System.out.println("Error en la I/O");
        }
    }
   
    public void log(DatagramPacket paquete,byte buf[])
    {
    
         modelo2.addElement("--------SIRVIENDO PETICION--------");
         modelo2.addElement("CLIENTE: "+paquete.getAddress().toString());
         modelo2.addElement("PUERTO: "+paquete.getPort());
         modelo2.addElement("SERVIDOR: "+paquete.getSocketAddress().toString());
         modelo2.addElement("---------CONTENIDO DEL PAQUETE---------");
         for(int ac=0;ac<buf.length;ac++)
            {
                                    
               modelo2.addElement(buf[ac]);
            }
    
    }
      
    
    public void anadirPC(String ip){
            modelo.addElement(ip);    
            arrayips[i]=ip; 
            setComprueba(i,(short)0);
            
            i++; 
            if(i >= tamarrayips){ //doblar el tamaño de los arrays
                 tamarrayips*=2;
                 String aux[]=new String[tamarrayips];
                 short aux2[]=new short[tamarrayips];
                 for(int i=0;i<arrayips.length;i++){
                     aux[i]=arrayips[i];
                     aux2[i]=compruebaips[i];
                 }
                 arrayips=aux;
                 compruebaips=aux2;
            }
    
    }
    
    public synchronized void setComprueba(int elem,short valor){
        compruebaips[elem]=valor;
    }
    public short getComprueba(int elem){
        return compruebaips[elem];
    }
    public int sizeComprueba(){
        return i;
    }
    
}
Haber que me decis
  #2 (permalink)  
Antiguo 30/05/2009, 19:53
Avatar de drac94  
Fecha de Ingreso: mayo-2008
Ubicación: México
Mensajes: 383
Antigüedad: 16 años
Puntos: 5
Respuesta: ips en campos de texto

y donde llenas el jList?
  #3 (permalink)  
Antiguo 02/06/2009, 14:15
 
Fecha de Ingreso: abril-2007
Mensajes: 166
Antigüedad: 17 años, 1 mes
Puntos: 2
Respuesta: ips en campos de texto

solucionado una variable mal
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:55.