miércoles, 29 de octubre de 2014

Preparàndo el Buildout -- Python

Como no tengo easy_install procedo a instalarlo

  • Yum
    • yum install python-setuptools python-setuptools-devel

sábado, 4 de enero de 2014

miércoles, 9 de enero de 2013

Apletviewer width vrs. JApplet setSize



1) applet sin setSize:

        El contenido del applet se acopla a la ventana del appletviewer

2) applet setSize menor que el appletviewer width:
      
        La ventana del appletviewer se acopla a las dimensiones especificadas en el método setSize

3) applet setSize mayor que el appletviewer width:

        La ventana del appletviewer toma las medidas especificadas en el método setSize, pero únicamente muestra el contenido del applet hasta la longitud especificada en su parámetro width

Para hacer que el contenido del applet(según este sitio) coincida exactamente con la ventana del appletviewer es posible que el applet lea los valores width y height de la etiqueta applet usando la función getParamenter y luego pasar estos valores a la función setSize:
  
 int ancho = 0, alto = 0;
 try{
  ancho = Integer.parseInt(getParameter("width"));
  alto = Integer.parseInt(getParameter("height"));
 }
 catch(NumberFormatException e){
  showStatus("Error en los valores width & height");
 }        
 
 setSize(ancho, alto);  


Situación al usar appletviewer. Error NoClassDefFoundError

Al usar el appletviewer:

                appletviewer MaximoCD.html

me arrojaba este error:

  java.lang.NoClassDefFoundError: MaximoCD (wrong name: Ejercicios/ventiocho/MaximoCD)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:197)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:146)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    at sun.applet.AppletClassLoader.loadCode(AppletClassLoader.java:608)
    at sun.applet.AppletPanel.createApplet(AppletPanel.java:798)
    at sun.applet.AppletPanel.runLoader(AppletPanel.java:727)
    at sun.applet.AppletPanel.run(AppletPanel.java:380)
    at java.lang.Thread.run(Thread.java:636)


Bien, la causa de esto es que en la clase original(MaximoCD) había declarado un package

    package Ejercicios.ventiocho;

lo cual hacía que se buscara la clase en un paquete(o estructura de directorios) 
    
   Ejercicios/ventiocho

dentro del mismo directorio donde reside el archivo html, arrojándome el errror anteriorLa solución fue eliminar la declaración

   package Ejercicios.ventiocho;

de la clase original.

martes, 8 de enero de 2013

Mejor algoritmo para números primos en código java


public void determinarPrimo(int numero){

           int contador = 2;

           while(numero % contador != 0)
                    contador++;

            if(contador == numero)
                areaSalida.append(numero + " es primo");

}

lunes, 7 de enero de 2013

Manjear caracteres de escape junto con un método drawString de Graphics

Como el método drawString de Graphics no maneja caracteres de escape como "\n",  "\t", etc., a la hora de querer imprimir un string que contenga éstos caracteres de escape a través de un método drawString se debe de hacer como sigue a continuación, pero antes el planteamiento:

Problema: No se pueden imprimir el caracteres de escape de nueva línea (\n) de un string con el método drawString de Graphics.

Causa: El método drawString no maneja caracteres de escape.

Solución: Dividir el string en partes usando el caracter de escape  de nueva línea(\n) como separador.

Código en Java:

    for(String asteriscos : texto.split("\n") ){
            g.drawString(asteriscos, x, y);
            y+=25;
        }


Donde el texto original seria la variable texto, es decir, la que contiene el caracter de escape "\n".

lunes, 12 de noviembre de 2012

Inluyendo el comando ifconfig al PATH

Un dia de estos estaba curioseando la configuración de red local de mi máquina Debian a través del ícono de red de la barra de estado y la Configuración de Red. Estas herramientas dan cierta información útil que te puede servir en determinado momento. Sin embargo, como usar linux es querer ir más allá de las herramientas gráficas tenia la inquietud de usar el comando ifconfig el cual da información un poco más detallada. Así que abrí un ventana del shell y digité el comando pero me encontré que la consola me devolvía el mensaje

bash: ifconfig: no se encontró la orden

Bueno, ¿A que se debía esto?  Luego de averiguar un tanto supe que ciertos comandos no vienen incluídos en el PATH para el usuario por defecto (cualquiera que no es root). Entonces ¿Cómo se incluye en el PATh un comando? Son dos pasos principales:

  • Determinar donde reside el ejecutable(el comando)
  • Incluirlo en el PATH
Lo primero se resuelve con whereis:

whereis ifconfig

respuesta de la consola

ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz


 Son dos rutas, la primera es donde se encuentra en si el ejecutable. La segunda es donde reside la documentación del comando

Para incluir el directorio donde está ifconfig en la variable de entorno se digita en la consola:

export PATH=$PATH:/sbin

 
¿Qué estamos diciendo aqui?
 Por partes:
  • export PATH, indicamos que agregaremos una ruta al PATH
  • $PATH, es la variable de sistema PATH
  • :(dos puntos) empiezan las rutas a agregar
  • $PATH:/sbin, poniendo primer la variable $PATH y luego la ruta le indicamos que la ruta se adicione al final de la variable. $PATH tambien se puede colocar al final de esta manera:  export PATH=/sbin:$PATH con lo que la ruta se agrega al incio de la variable.

Esta forma de usar ifconfig o cualquier otro comando es solamente en esa sesión de la consola que se haya abierto. Una vez cerrada se tendrá que repetir el procedimiento.