elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Temas
Páginas: 1 2 3 [4] 5
31  Programación / Java / Adjuntar librería y usar sus métodos sin poner la ruta.¿es posible? en: 27 Febrero 2012, 16:24 pm
Pues esa es mi pregunta.

Básicamente, si tengo un proyecto al que le adjunto una librería, ¿no hay forma de llamar a los métodos de la librería directamente por su nombre, en lugar de paquete.clase.nombre?

Me parece una forma un poco incómoda de trabajar la verdad...

Gracias, saludos!
32  Programación / Desarrollo Web / EasyPHP 5.3.9 no me deja acceder a PHP MyAdmin en: 23 Febrero 2012, 15:50 pm
Pues básicamente eso, que he instalado esta mañana este programita y cuando voy a Configuración/PHP MyAdmin me sale la siguiente página:
Citar
Acceso prohibido!

Usted no tiene permiso para acceder al directorio solicitado. No existe un documento índice, o el directorio está protegido contra lectura.

Por favor contacte con el webmaster en caso de que usted crea que existe un error en el servidor.

Error 403

127.0.0.1
02/23/12 15:49:17
Apache/2.2.21 (Win32) PHP/5.3.9

Supongo que habrá que tocar algún archivo de configuración o algo, pero no sé dónde más mirar...

Ayuda por favor!
33  Foros Generales / Noticias / Anonymous desmiente que tenga intención de producir un "apagón mundial" de I en: 22 Febrero 2012, 20:54 pm
Cita de: 20 minutos

Anonymous desmiente que tenga intención de producir un "apagón mundial" de Internet


  • El grupo hacktivista lo ha desmentido a través de su cuenta de Twitter oficial.
  • Anonymous respondió así a las preguntas de los internautas sobre un rumor que hablaba de un ataque a los principales servidores de Internet el 31 de marzo.
  • Los ciberactivistas también aprovecharon para aclarar unas acusaciones del director de la Agencia Nacional de Seguridad de Estados Unidos.

El grupo hacktivista Anonymous ha negado que estén preparando un ataque que trate de causar un apagón en Internet, en una operación que estaba siendo conocida como Global BlackOut. Anonymous rechazó un posible ataque mundial en la Red. Según publicaron en su cuenta de Twitter oficial, AnonOps, el grupo de ciberactivistas señaló que esta operación, que estaba siendo difundida a través de Pastebin, era falsa.

Ante el constante flujo de preguntas de la gente por este supuesto apagón de Internet mundial, el grupo Anonymous decidió desmentirlo oficialmente, "GlobalBlackOut es otra falsa operación. No hay intención de Anonymous de 'cortar' Internet, por favor dejen de preguntar".

GlobalBlackOut es otra falsa operación. No hay intención de Anonymous de 'cortar' Internet

El falso rumor partió de la página web Pastebin, se trata de un sitio web que había sido utilizado por este colectivo de hackers para lanzar amenazas o reconocer ataques. El supuesto apagón, según publicaron algunos medios de comunicación, se iba a realizar atacando a 13 servidores clave, duraría unas horas o unos días el próximo 31 de marzo.

Los ciberactivistas también aprovecharon para aclarar unas acusaciones del director de la Agencia Nacional de Seguridad de EE UU, Keith Alexander, quien expresó su preocupación por los ciberataques de Anonymous, de acuerdo con The Wall Street Journal.

Según declaró Alexander, este grupo de hackers pueden provocar apagones masivos por medio de ataques y dañar o deshabilitar la red, en reuniones privadas en la Casa Blanca. Estas declaraciones fueron totalmente negadas por Anonymous que declararon a través de un tuit que esto era "Ridículo! ¿por qué Anonymous cortaría el suministro eléctrico? no tiene sentido...".

Sin embargo, Anonymous utiliza su cuenta oficial de Twitter para informar de sus últimos ataques en la red. En España, el ataque realizado durante la gala de los Premios Goya fue oficialmente reconocida por los enmascarados.

No es la primera vez que a este grupo se le atribuyen ataques que ellos mismos no reconocen oficialmente y tienen que desmentirlo publicamente. El año pasado se le atribuyó un ataque contra la red social Facebook, sin embargo Anonymous rechazó este ataque alegando que sería muy tonto por su parte realizar tal cosa teniendo en cuenta que utilizan esta red social para difundir sus actividades.

FUENTE: http://www.20minutos.es/noticia/1316413/0/anonymous/desmiente/apagon/
34  Programación / Java / [RESUELTO]No encuentro error, intentando borrar de un resultset en: 21 Febrero 2012, 16:02 pm
Hola a todos, ¿qué tal?

Bueno, llevo un par de días como un loco y no doy con el fallo en mi programa... os cuento un poco de qué va la historia. Tengo una BBDD de empleados y departamentos con una relación 1:N donde cada empleado tiene un solo departamento y los departamentos de 0 a N empleados... Pues bien, estoy programando en Java un aplicación sencilla que permita añadir, eliminar y modificar datos de cualquier empleado/departamento.

Lo tengo todo acabado, excepto un JFrame en el que arriba tengo un JTextField con el nombre de un departamento y debajo de éste un JTable en el que se muestran los datos de todos los empleados de ese departamento. Hay también botones para pasar al siguiente, anterior, primer y último departamento, con sus eventos correspondientes que vacían y rellenan de nuevo la tabla con los empleados correspondientes al departamento activo.

Y por último tengo un botón que me permitiría borrar de la BBDD el empleado que esté seleccionado. Este es el código:

Código
  1. private void jtblEmpleMouseClicked(java.awt.event.MouseEvent evt) {
  2.        System.out.println("Entro en evento");
  3.        int fila=jtblEmple.getSelectedRow();
  4.        System.out.println("Fila seleccionada: "+fila);
  5.        if(fila >= 0){
  6.            System.out.println("entro en if");
  7.            try{
  8.                System.out.println("entro en el try");
  9.                for(int i=0; i<fila+1; i++){
  10.                    System.out.println("Empleado: '"+rsE.getString("APELLIDO")+"'. Vuelta número: "+i);
  11.                    rsE.next();                    
  12.                }
  13.                System.out.println("Voy a borrar");
  14.                //rsE.deleteRow(); línea comentada para no borrar registros en pruebas y quedarme con 0 empleados... xD
  15.                //(aún así, esta línea me da unas veces la excepción de 'No data found' y otras la de 'estado del cursor no válido').
  16.                System.out.println("He borrado.");
  17.            }catch(Exception e){JOptionPane.showConfirmDialog(null, e, "Error de borrado", JOptionPane.PLAIN_MESSAGE);}
  18.            finally{
  19.                System.out.println("llego al finally");
  20.                limpiaTabla();
  21.                rellenaTabla();
  22.                System.out.println("salgo del finally");
  23.            }
  24.        }
  25.        else
  26.            JOptionPane.showConfirmDialog(null, "Seleccione un departamento para eliminarlo.", "Error de borrado", JOptionPane.PLAIN_MESSAGE);
  27.    }
  28.  

Donde rsE es un ResultSet con todos los empleados del departamento activo y rsD es otro ResultSet con todos los departamentos. Todos esos println sobran, los he usado para ver qué hace la aplicación y esta me devuelve lo siguiente:

Cita de: NetBeans
run:
Entro en evento
Fila seleccionada: 1
entro en if
entro en el try
// aquí me salta la Excepción e
llego al finally
salgo del finally
BUILD SUCCESSFUL (total time: 10 seconds)

Este código funcionaba perfectamente para borrar departamentos... Y así llevo un par de días. Hoy he pedido ayuda al profesor y ha estado una hora  mirando y tocando sin sacar absolutamente nada, lo cual me hace pensar que seguramente será algún fallo bastante estúpido...

Gracias a todos.
35  Programación / Java / [RESUELTO] No consigo limpiar un JTable... [RESUELTO] en: 19 Febrero 2012, 18:31 pm
Hola a todos de nuevo.
Bueno, el título lo dice todo: no soy capaz de limpiar los datos que he cargado en un JTable a través de una consulta a BBDD. Este es mi método para vaciar la dichosa tablita:
Código
  1. //parte de variables
  2.    static ResultSet rs;
  3.    static Statement st;
  4.    static Connection conn;
  5.    DefaultTableModel temp;
Código
  1. //parte de métodos
  2. void limpiaTabla(){
  3.        try{
  4.            temp = (DefaultTableModel) jtablaDepart.getModel();
  5.            int a =temp.getRowCount()-1;
  6.            for(int i=0; i<a; i++)
  7.                temp.removeRow(i);
  8.        }catch(Exception e){
  9.            System.out.println(e);
  10.        }
  11.    }

Java me devuelve la siguiente excepción: java.lang.ArrayIndexOutOfBoundsException: 2 >= 2

La tabla tiene 3 columnas, y (en este momento) 4 filas. Cuando llamo a limpiaTabla, me borra el primer y tercer elemento de la tabla y salta esa excepción ...
36  Programación / Java / ¿Cómo creo un .exe con NetBeans? en: 16 Febrero 2012, 15:53 pm
Hola a todos.

Bueno la cosa es que tengo una aplicación con acceso a un archivo de base de datos de access e interfaz gráfica y me gustaría saber cómo puedo generar un archivo ejecutable .exe (y recalco el exe) de tal forma que con ese único archivo mi aplicación sea ejecutable en cualquier máquina y pueda trabajar sobre esa base de datos (evidentemente, con los datos que tenga cuando compile).

No me vale la opción build ni la clean & build de NB ya que lo que me genera es un .jar y hay equipos que no son capaces de interpretarlos.

Gracias a todos, Saludos grandes y cordiales  ;D
37  Programación / Java / ¿No se encuentra origen de datos? en: 14 Febrero 2012, 18:17 pm
Hola, buenas... veamos estoy intentando actualizar una base de datos de Access desde Java con el siguiente código:

Código
  1. String nom=jtxtNombre.getText(), ape1=jtxtApellido1.getText(), ape2=jtxtApellido2.getText(), id=jtxtNum.getText();
  2.        String DRIVER = "sun.jdbc.odbc.JdbcOdbcDriver";
  3.        String miDB = "jdbc:odbc:propietarios";
  4.        try {
  5.            Class.forName(DRIVER);
  6.            Connection conexion =  DriverManager.getConnection(miDB);
  7.            PreparedStatement select = conexion.prepareStatement("SELECT * FROM Propietario where dni='"+id+"';");
  8.            ResultSet rs = select.executeQuery();
  9.            select=conexion.prepareStatement("update propietario set nombre='"+nom+"', apellido1='"+ape1+"', apellido2='"+ape2+"' where dni='"+id+"';");
  10.            select.executeUpdate();
  11.            rs.close();
  12.            select.close();
  13.            conexion.close();
  14.        }
  15.        catch (Exception e) {
  16.            System.out.println("Error: " + e);
  17.        }
  18.  

Y me da el siguiente error (excepción, en realidad):
Cita de: java
Error: java.sql.SQLException: [Microsoft][Administrador de controladores ODBC] No se encuentra el nombre del origen de datos y no se especific? ning?n controlador predeterminado

No entiendo qué le pasa. He definido mi archivo de base de datos desde Herramientas administrativas/Orígenes de datos ODBC. Adjunto captura de la configuración...

Saludos, y gracias!
38  Programación / Java / {RESUELTO} ¿Cómo redimensiono un jPanel? {RESUELTO} en: 10 Febrero 2012, 19:42 pm
Pues eso... tengo q redimensionar un jPanel... y no soy capaz.

Esto es lo que me hace:

Y esto es lo que debería hacer (para esta imagen he redimensionado 'a mano', una vez la calculadora estaba en ejecución...):

y he aquí la función que he usado (cada línea es un intento fallido)... (mainPanel es de tipo jPanel...):

Código
  1. void redimensionar(int x, int y){
  2.        mainPanel.setBounds(mainPanel.getX(), mainPanel.getY(), x, y);
  3.        mainPanel.getParent().repaint(mainPanel.getX(), mainPanel.getY(), x, y);
  4.        mainPanel.getParent().setSize(x, y);
  5.    }
  6.  
39  Programación / Java / Error NetBeans con clase ObjetOutputStream... en: 7 Febrero 2012, 19:39 pm
Pues eso... que cuando intento usar esa clase me da un error, y como una imagen vale más que mil palabras...

No entiendo qué es lo que puede pasar... a ver si alguno me echa un cable, a poder ser no al cuello ;P

Os dejo todo el código por si queréis echar un vistazo:

Código
  1. /*
  2.  * Haz un programa que guarde en un archivo de texto de acceso aleatorio
  3.  * una biblioteca de canciones. Los datos de cada elemento serán:
  4.  * Título de la canción, autor, año, álbum.
  5.  */
  6. package ejercicio060;
  7.  
  8. import java.io.*;
  9. import java.util.*;
  10. class noRango extends Exception{}
  11. public class Ejercicio060 {
  12.  
  13.    public static void main(String[] args) throws FileNotFoundException, IOException {
  14.        String titulo="", autor="", album="", año="";
  15.        Scanner s=new Scanner(System.in);
  16.        ObjetOutputStream oos = new ObjetOutputStream(new FileOutputStream("biblioteca.txt"));
  17.        RandomAccessFile archivo = new RandomAccessFile("biblioteca.txt", "rw");
  18.        int inserciones=0;
  19.        boolean correcto=false;
  20.  
  21.        archivo.seek(archivo.length());
  22.  
  23.        while(inserciones<1){
  24.            System.out.print("¿Cuántas canciones vas a guardar? ");
  25.            try {
  26.                inserciones=s.nextInt();
  27.                if(inserciones<1)
  28.                    System.out.println("Escribe un valor mayor de 0.");
  29.            }
  30.            catch (InputMismatchException e){
  31.                System.out.println("Escribe un valor numérico válido.");
  32.                s.nextLine();
  33.            }
  34.        }
  35.  
  36.        for(int i=0; i<inserciones; i++){
  37.            while(!correcto){
  38.                try{
  39.                    System.out.print("Introduce el título de la canción: ");
  40.                    titulo=s.nextLine();
  41.                    if(titulo.length()!=0)
  42.                        correcto=true;
  43.                }
  44.                catch(Exception e){
  45.                    System.out.println("Introduce un título válido.");
  46.                }
  47.            }
  48.            correcto=false;
  49.            while(!correcto){
  50.                try{
  51.                    System.out.print("Introduce el autor de la canción: ");
  52.                    autor=s.nextLine();
  53.                    if(autor.length()!=0)
  54.                        correcto=true;
  55.                }
  56.                catch(Exception e){
  57.                    System.out.println("Introduce un autor válido.");
  58.                }
  59.            }
  60.            correcto=false;
  61.            while(!correcto){
  62.                try{
  63.                    System.out.print("Introduce el álbum de la canción: ");
  64.                    album=s.nextLine();
  65.                    if(album.length()!=0)
  66.                        correcto=true;
  67.                }
  68.                catch(Exception e){
  69.                    System.out.println("Introduce un álbum válido.");
  70.                }
  71.            }
  72.            correcto=false;
  73.            while(!correcto){
  74.                try{
  75.                    System.out.print("Introduce el año de la canción: ");
  76.                    año=s.nextLine();
  77.                    if(Integer.parseInt(año)>2012)
  78.                        throw new noRango();
  79.                    correcto=true;
  80.                }
  81.                catch(noRango nR){
  82.                    System.out.println("¿Canción del futuro? Escribe un año válido...");
  83.                }
  84.                catch(Exception e){
  85.                    System.out.println("Introduce un año válido.");
  86.                }
  87.            }
  88.            correcto=false;
  89.  
  90.            Cancion canc=new Cancion(titulo, autor, album, Integer.parseInt(año));
  91.            //pd, aqui faltan bastantes cosas... y la clase Cancion está en otro archivo.
  92.        }
  93.        archivo.close();
  94.    }
  95. }
40  Programación / Java / Problema con excepciones. en: 5 Febrero 2012, 19:29 pm
Hola, muy buenas a todos.
Tengo un problema... no sé porqué no me funciona este ejercicio... al compilar, llego hasta meter el número de elementos del array y ahí ya se queda sin hacer nada, ni da errores, ni sigue pidiendo datos (como debería) ni nada...

Os dejo el código a ver si veis algo. Estoy usando NetBeans 7.0.1
Código
  1. /*
  2.  * Haz un programa que sume los elementos double de un array dinámico que le
  3.  * vamos pasando. Saltarán las excepciones oportunas cuando le pasemos números
  4.  * en formato inadecuado.
  5.  */
  6. package ejercicio050;
  7. import java.util.Scanner;
  8.  
  9. public class Ejercicio050 {
  10.  
  11.    public static void main(String[] args) {
  12.        String longitud;
  13.        double suma=0;
  14.        Scanner s=new Scanner(System.in);
  15.        System.out.print("¿Cuántos elementos quieres? ");
  16.        try{
  17.            longitud=s.nextLine();
  18.        }
  19.        catch(Exception e){
  20.            do{
  21.                System.out.println("Longitud no válida. Introduzca otra.");
  22.                longitud=s.nextLine();
  23.            }while(!isNumeric(longitud));
  24.        }
  25.        String array[]=new String[Integer.parseInt(longitud)];
  26.  
  27.        for(int i=0; i<Integer.parseInt(longitud); i++){
  28.            System.out.print("Introduce el valor de la posición "+(i+1)+": ");
  29.            array[i]=s.nextLine();
  30.        }
  31.  
  32.        for(int i=0; i<Integer.parseInt(longitud); i++){
  33.            try{
  34.                suma+=Double.parseDouble(array[i]);
  35.            }
  36.            catch(Exception e){
  37.                System.out.println("El elemento "+(i+1)+" no es numérico.");
  38.            }
  39.        }
  40.        System.out.println("La suma de los elementos es: "+suma);
  41.    }
  42.  
  43.    private static boolean isNumeric(String cadena){
  44. try {
  45. Double.parseDouble(cadena);
  46. return true;
  47. } catch (NumberFormatException nfe){
  48. return false;
  49. }
  50. }
  51. }

Gracias a todos.

EDITO: He quitado el s.next(); de las líneas 17,22 y 29 y parece que va bien. lo puse porque a veces da problemas el retorno de carro al leer varias cadenas, voy a hacer unas pruebas a ver que pasa.

EDITO 2: perfecto. Un ejemplo de la ejecución...
run:
¿Cuántos elementos quieres? 5
Introduce el valor de la posición 1: 5
Introduce el valor de la posición 2: 6
Introduce el valor de la posición 3: p
Introduce el valor de la posición 4: 7
Introduce el valor de la posición 5: l
El elemento 3 no es numérico (p).
El elemento 5 no es numérico (l).
La suma de los elementos es: 18.0
BUILD SUCCESSFUL (total time: 23 seconds)
Páginas: 1 2 3 [4] 5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines