Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - miltonprogramador

#1
Excelente Ange.. ya me has salvado la vida varias veces el java y ahora en php jeje..para ti todos mis créditos.... Mil Gracias
#2
Hola chicos... estoy desarrollando una aplicación web con php y me encuentro en el momento de cerrar la aplicación por inactividad... estoy llevando programación orientada a objeto y el patrón MVC... el detalle es que me consigo con una diferencia extraña.. explico un poco:

Tengo un formulario que loguea y otro que registra al visitante... el detalle es que al loguear el genera la variable de sesión que almacena la fecha y hora de inicio de sesión para compararla con la de ultimo acceso que esta en el controlador global pero al compararlas me da una diferencia de 16200... esto significa que es mucho tiempo y la aplicación la toma como sesión vencida y la cierra...

Lo que me esta rompiendo la cabeza es el porque esa diferencia si la función utilizada es la misma para ambas variables. la funcion es: date("Y-n-j H:i:s")

Tengo entendido que ese extraño número exactamente los 16200 tiene que ver con la zona horaria o algo así... pero no logro resolverlo...

AUXILIO...
#3
Hola debes utilizar hilos (Threads) esto te permite hacer aplicaciones multitareas, es decir, que tu aplicación mantenga el hilo de procesos que lleva mientras pide que realice otra cosa en paralelo...
#4
Hola amigos, estoy haciendo una aplicación cliente servidor y enviando un mensaje con DataOutputStream del servidor al cliente:

Código (java) [Seleccionar]

this.mensaje = "logueado";
this.mensajeEnviado = new DataOutputStream(socket.getOutputStream());
this.mensajeEnviado.writeUTF(this.mensaje);


Esto al parecer funciona sin problemas... el error ocurre de lado del cliente al intentar leer el mensaje

Código (java) [Seleccionar]

this.mensajeRecibido = new DataInputStream(sk.getInputStream());
this.mensaje = this.mensajeRecibido.readUTF(); //--> esta es la línea que me genera el error


La excepción EOFException, no me es desconocida, entiendo que al intentar leer el final de un fichero pero en este caso no se resolverlo...

Es importante decirles que anterior a la transmisión de ese mensaje, se han hecho varios en la aplicación y todos han resultado satisfactorias. Pero con este no he podido..

Podrían darme una orientación por favor?... espero me ayuden pues mis últimos post me han dejado sin respuestas.
Gracias de antemano
#5
Gracias por responder, es verdad es my obvio... lo resolví el mismo día que me hiciste la sugerencia... opté por un Thread.... Muchas gracias...
#6
Hola chicos.. como bien me han ayudado en anteriores casos recientemente, hoy traigo una duda más... He realizado una aplicación cliente servidor (el cliente es una clase para pruebas del servidor, es decir, no es la aplicación final) mediante socket, pero toda va bien, excepto cuando pido al cliente conectarse con un bucle con multiples conexiones. esto lo hago para probar la funcionalidad del servidor... Al hacer esto comienza hacer el trabajo pero, si pido hacer 100 conexiones solo se conectan 80 y algo, es decir, la cantidad que se conecta no es constante pero esta en el orden de los 80  a 85 cuando intento conectar 100

El resultado a las fallidas es: "connect refused" en consola (porque alli pido mostrar la excepción)

Entonces no se si es la velocidad de mi procesador que no le es suficiente para sostener el servidor o es el problema de la cantidad alta simultánea de envios desde el cliente...

En fín, les dejo el código del cliente para que tengan un panorama más claro...
Código (java) [Seleccionar]


class Persona extends Thread {
    protected Socket sk;
    protected DataOutputStream dos;
    protected DataInputStream dis;
    private int id;
    public Persona(int id) {
        this.id = id;
    }
    @Override
    public void run() {
        //System.out.println("voy aqui: " + this.id);
        try {
                sk = new Socket("localhost", 10579);
                System.out.println(id + " envía saludox");
               // sk.close();
           
        } catch (Exception ex) {
            //Logger.getLogger(Persona.class.getName()).log(Level.SEVERE, null, ex);
            //System.out.println(id + "->Ha ocurrido algo inesperado... " + ex.getMessage());
            //ex.printStackTrace();
        }
    }
}
public class Cliente {
    public static void main(String[] args) {
       
        int hosts = 100;
        for (int i = 0; i < hosts; i++) {
           
            Thread clt = new Thread(new Persona(i));
            clt.start();
            try {
                clt.join();
            } catch (InterruptedException ex) {
                Logger.getLogger(Cliente.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
}



NOTA: En el join le he variado el tiempo, lo he colocado en 100, 400, 600, 800, 1000... ya mil me parece un tiempo laaargo, ahora el detalle es que ha mayor tiempo para la sincrnización es menor el margen de error.... MENOR pero el comportamiento sigue...

AUXILIOOO!
#7
Java / Re: Como listar un arraylist ?
27 Diciembre 2016, 16:42 PM
Hola con este ejemplo seguro lo logras
Código (java) [Seleccionar]


ArrayList<String> nombreArrayList = new ArrayList<String>();

//para añadir elementos dinamicamente puedes hacerlo asi
for (int i=1; i<=10; i++){   nombreArrayList.add("Elemento "+i);  }

// Para agregar algún elemento en la posición que desees. ejemplo la posición dos nombreArrayList.add(2, "Elemento 3");

// Declaramos el Iterador e imprimimos los Elementos del ArrayList Iterator<String> counter = nombreArrayList.iterator();
while(counter.hasNext())
{  
     String element = counter.next();  
     System.out.print(element+" \n ");
}



Esto te dara como resultado
elemento_1
elemento_2
.
.
.
elemento_n

espero te sirva
#8
Hola... un cliente me propone realizar una aplicación con las funcionalidades similares a open english... habitualmente, programo con php cuando voy orientado a la web, por eso coloco el post aquí...

La inquietud en particular es que nunca he visto funcionando la plataforma de open english por lo que me generan estas didas:

1.- Son clases realmente en vivo (entonces hablamos de streaming) o son clases gravadas como todo el mundo asegura.
2.- Si hablamos de streaming recomiéndenme por donde empezar puesto que nunca he realizado una alicación para esa tecnología,,,
3.- Si son clases gravadas, eso me parece genial. pero, como harían para proteger los videos que suben al servidor porque de poderse descargar ya los viera en las tienda de pirateria en venta... y eso aún no lo he visto....


Importante es destacar que no pido que me hagan el trabajo jeje, solo quiero una ayuda  para sabre por que senderos buscar porque me siento como un indio en new york en ese tema...

ESPERO su respuesta amigos...
#9
Hola amigos... hoy traigo una falla con el manejo de socket... tengo un método para iniciar la conectividad del socket en una aplicación cliente servidor pero cuando llega a ss.accept(); la aplicación simplemente se cuelga... se nota colgada porque no responde a ninguno de los controles en la vista e incluso el botón que tengo creado para iniciar la conectividad se queda presionado... entonces si esta colgada...

el método que uso para la conectividad es el siguiente:

Código (java) [Seleccionar]

private boolean iniciarConectividad(){
        ServerSocket ss;
        //Iniciando servidor...
        try {
            ss = new ServerSocket(10579);
            System.out.println("Iniciando servidor");
            //Servidor iniciado exitosamente...
            //Esto lo mantiene en eterna escucha...
            while (true) {
                Socket socket = null;
                try {
                    socket = ss.accept(); //--> JUSTO AQUI    "S E  C U E L G A"
                    System.out.println("Nueva conexión entrante: " + socket);
                    ((Hilos) new Hilos(socket, Sesion.idSesionServidor)).start();
                    Sesion.idSesionServidor++;
                    System.out.println("Esperando una nueva solicitud de conexión...");
                    return true;
                } catch (IOException e) {
                    e.printStackTrace();
                    return false;
                }
            }
        } catch (IOException ex) { Logger.getLogger(Servidor.class.getName()).log(Level.SEVERE, null, ex);
            //Se produjo un error al intentar iniciar el servidor...
            System.out.println("Se produjo un error al intentar iniciar el servidor...");
            return false;
        }
    }


Agradezco su ayuda... tengo todo el día tratando de darle la vuelta pero no encuentro el detalle...
#10
Hola creo que deberias hacer mas comletas las clases para que recibas la orietación mas adecuada...