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ú

Temas - algorf

#1
Como va la gente del foro, Desde ya un saludo para todos.
Vengo de beraza a manguearles una manito. Estoy programando un chat, como se puede leer, y estoy medio trabado, en un par de cuestiones. que creo que son de concepto, o inexperiencia.

Bueno les comento, hasta ahora hice el servidor y el cliente, a lo que quiero llegar es a conectar varios clientes al servidor y que se comuniquen entre ellos por medio del servidor algo muy complicado para mi al menos, hay algunos conceptos que no los tengo bien en claro por eso venia a pedirles una mano, no que me lo programen y me lo manden sino que me explique algunas dudas. Ya que copiarlo no me sirve.

todavia me faltan programar partes. la de  cerrar conexciones. y la de envios de datos del servidor a todos los usuarios conectados. no comprendo como hacer eso.. creo que tengo que usar hilos y cada hilo generado en el servidor.. para cada socket conectado..  y cada hilo guardarlo en una matriz.. para saber a donde enviarlo..  creo que tengo que ir por ese paso..

CLIENTE
Código: java
import java.io.*;
import java.net.*;
import java.util.Scanner;

public class meloCliente {

    String ip = "127.0.0.1",usuario, mensajeDis, mensajeDos;
    int port = 6666;
    Socket tcp;
    Scanner sc;
    boolean flag =true;

   
    public void llamEsqueletor() {
       
    }
   
    public void closePort() {
       
    }
    public void getDatain() throws IOException{
            DataInputStream dis = new DataInputStream(tcp.getInputStream());
            mensajeDis = dis.readUTF();
            System.out.println("Msj << "+ mensajeDis);
           
    }
    public void setDataOutPack() throws IOException {
        DataOutputStream dos = new DataOutputStream(tcp.getOutputStream());
        System.out.print(" >> ");
        mensajeDos = this.crateMsj();
        String packet = this.usuario + "-" + mensajeDos;
        dos.writeUTF(packet);
        // falta enviarlo...
       
    }
    public String crateMsj(){
        sc = new Scanner(System.in);
        String teclado = sc.nextLine();     
        return teclado;
    }

    public void openConex() throws SocketException, IOException{
        tcp = new Socket(ip, port);
        if(tcp.isConnected()){System.out.println("Cliente <<"+ usuario +">> conectado al Servidor.");}
    }
    public static void main(String[] args) throws IOException, SocketException{
        meloCliente mC = new meloCliente();
       
        mC.LeyendaUsr();
        mC.openConex();
       
        while(mC.flag){
            mC.setDataOutPack();
        }
       
    }
    public void LeyendaUsr() {
        sc = new Scanner(System.in);

        System.out.println("        ·~ Cliente Mensajeria. v0.1 "+ "\n");
        System.out.println("# Apodo de red: \n");
        usuario = sc.nextLine();
    }
}


SERVIDOR

Código: java
import java.net.*;
import java.io.*;
import javax.swing.JOptionPane;
import java.util.Scanner;

public class Serv{
   
    ServerSocket ss;
    Socket s ;
    JOptionPane panelDat;
    boolean flag = true;
    Scanner sc;
    int cont =0;
           
    public void openPort() throws IOException{
        System.out.println("# Abriendo puertos.");
        ss = new ServerSocket(6666);
    }
    public void aceptCli() throws IOException{
            System.out.println("# Esperando solicitud de cliente...");
            s = ss.accept();
            cont++;
            System.out.println("# Cliente conectado. Datos." + s.getInetAddress()+"-"+ s.getPort()+ " Cliente Nro:" + cont);
    }
    public void sendPack() throws IOException{
        DataOutputStream dos = new DataOutputStream(s.getOutputStream());
    }   
   
    public void getDatain() throws IOException{
        DataInputStream dis = new DataInputStream(s.getInputStream());
        String mensajeDis = dis.readUTF();
        System.out.println(mensajeDis);
       
    }
    public void closePort() {
       
    }
    public static void main(String[] args)throws IOException {
        Serv sev = new Serv();
        sev.leyenda();
        sev.openPort();
       
        sev.aceptCli();
        while(sev.flag){
        sev.getDatain();
        }
       
        System.out.println("·~ Servidor");
    }
        public void leyenda() {
        System.out.println("      ·~ Servidor Mensajeria v0.1." + "\n");

    }
}


Espero puedan ayudarme.
Desde ya un saludo grande. y seguiré investigando.
#2
Hacking ShowOff / {XSS} http://canasemillas.com
Octubre 01, 2013, 05:12:00 PM
Viendo un par de semas encontre esto .. XD



No reportado.

PD: Saludos gente.
#3
Ante todo Muy buen dia a toda la comunidad, bueno hoy posteo por un problema con mi ide NEtbeans, la cuestion es que al querer crear un proyecto nuevo, no me aparecen el tipo de clase o proyecto a crear, directamente no me aparece nada, provisionalmente estoy instalando eclipse, para no quedarme con la manija, pero bueno espero poder usar Netbeans me gusta mas y tengo mas experiencia con el.

llego a abrir proyecto nuevo, y me muestra .. pleas wait...  no se q pasa... y cada vez que trato de hacer una interfaz grafica no me muestra los componentes solo el form cargando.. (en loading)..

En esta foto  se puede ver como no carga los proyectos de aplicaciones de escritorio.



y aca, como cada vez que queres crear nuevos proyectos no me aparece nada lo deje 2 hr y no paso nada.



Saludos gente espero una mano. con esto.
#4
Bueno buscando algo de empleos me puse a testea la bolsa de la amia.. y bueno se ve que no es muy seguro.. tiene unas xss y html inyection... no tengo muchos conocimientos acerca de defacment pero estoy leyendo muchos manuales de la red.. asique si esto no va aca bue sepan disculparme. y uno mas de worktec de yapa..

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta



No tienes permitido ver los links. Registrarse o Entrar a mi cuenta



un saludo grande. espero no haya republicado los bugs..
no reporte ninguno.

PD: DISCULPEN LA IMPRENTA.
#5
Hola a todo UnderC0de, espero anden bien, paso a comentarles la situación.
Estoy comenzando a volver a programar un poco y bueno estaba haciendo un poco de ejercicios con la main y los dedos.

mas o menos vine así el proyecto .. es un cliente con interfaz grafica, por ahora va asi

Código: java

package client;

import java.awt.Color;
import java.io.*;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
*
* @author
*/
public class clie extends javax.swing.JFrame {
    String conIP;
    int port;
    static byte activ=0;
    static String oracion;
    /** Creates new form clie */
    public clie() {
        initComponents(); //Inicializa los componetes.
    }

     static Socket clients;

    @SuppressWarnings("unchecked")

    private void btnConectActionPerformed(java.awt.event.ActionEvent evt) {                                         
        conIP = txtipconec.getText();
        port = Integer.parseInt(txtportconect.getText());
        activ++;
        try {
            clients = new Socket(conIP, port);
        } catch (UnknownHostException ex) {
            Logger.getLogger(clie.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(clie.class.getName()).log(Level.SEVERE, null, ex);
        }
    }                                         

    private void txtenviarActionPerformed(java.awt.event.ActionEvent evt) {                                         
        OutputStream msjenv = null;
        try {
            msjenv = clients.getOutputStream();
            DataOutputStream mnsj = new DataOutputStream(msjenv);
            mnsj.writeUTF(jTextArea1.getText());
        } catch (IOException ex) {
            Logger.getLogger(clie.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            try {
                msjenv.close();
            } catch (IOException ex) {
                Logger.getLogger(clie.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }                                         

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) throws IOException {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run(){
                new clie().setVisible(true);
            }
        });
               InputStream mnsjre = clients.getInputStream();
               DataInputStream mnsjr = new DataInputStream(mnsjre);
               oracion = (String) mnsjr.readUTF();
    }

    // Variables declaration - do not modify
    private javax.swing.JButton btnConect;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextArea jTextArea1;
    private javax.swing.JButton txtenviar;
    private javax.swing.JTextField txtipconec;
    private javax.swing.JTextField txtmnsj;
    private javax.swing.JTextField txtportconect;


las dudas son básicas, como por ejemplo como hacer para que la variable del Output se imprima en el jLabel2
y la entrada también me esta volviendo loco, me confunde cuando uso interfaz grafica.

estoy leyendo bastantes manuales. pero de java en general y no de la GUI. alguien podria darme una mano ? algunos consejos, o papers.. para que me guie un poco.

Espero que puedan darme una mano desde ya un gracias.
Saludos.