time wget SSL23_GET_SERVER_HELLO:sslv3 alert illegal parameter

Error:
   OpenSSL: error:14077417:SSL routines:SSL23_GET_SERVER_HELLO:sslv3   alert illegal parameter
Unable to establish SSL connection.

Descripción:
   Intentaba verificar la latencia de un sitio de la siguiente forma:

     ~]$ time wget https://misitio.com/index.html -O /dev/null

y obtenía el error mostrado.

Solución:
    agregué la opción --secure-protocol y dado que el error indicaba la versión usé sslv3.

~]$ time wget --secure-protocol=sslv3 https://misitio.com/index.html -O /dev/null

Leer más...

cannot find symbol symbol : method fail(java.lang.String) JUnit

Error:
    cannot find symbol symbol  : method fail(java.lang.String)

Descripción
    Al intentar usar el método fail() envía el error mostrado.

Solución:
   import static org.junit.Assert.fail;
Leer más...

undefined reference to `krb5_string_to_deltat'


Descripción:
   Al usar la función krb5_string_to_deltat(str, &delta) de krb5 para convertir una cadena al compilar con: 
   
      gcc test_krb5.c -o tkrb5
Error:
    /tmp/ccMrM4vc.o: In function `main':
test_krb5.c:(.text+0x17): undefined reference to `krb5_string_to_deltat'
collect2: error: ld returned 1 exit status

Solución:
    utilizar el flag -lkrb5
    gcc test_krb5.c -o tkrb5 -lkrb5
Leer más...

undefined reference to `__res_search'

Descripción:
  Intentaba utilizar la el función res_search(...) de utilizando:
     gcc busquedas.c -o buscar
Error:
   $ gcc busquedas.c -o buscar
    /tmp/ccW46Tzb.o: In function `main':
     busquedas.c:(.text+0x11c): undefined reference to `__res_search'
     collect2: error: ld returned 1 exit status


Solución :
  Requiere hacer el enlace con la opción -lresolv

    gcc busquedas.c -o buscar -lresolv
Leer más...

ORA-01034: ORACLE not available

Al intentar usar sqlplus sale lo siguiente:

Error:
      ORA-01034: ORACLE not available

Causa:
      Al intentar crear las variables ORACLE_HOME y ORACLE_SID no me percaté que había escrito mal ORACLE_HOME y tenía el nombre distinto, es decir no existía ORACLE_HOME.

Solución:
     Corregir el nombre con su respectivo export en profile.

Leer más...

ssh X11 Protocol major versions differ: 1 vs. 2

Error:
     Protocol major versions differ: 1 vs. 2

Comando ejecutado: 
    ssh -X11 usuario@dominio

Solución: 
    ssh -X11 usuario@dominio -2

    Si con la versión 2 no funciona utilizar versión 1. La versión utilizada o   soportada se puede verificar con:
    vi /etc/ssh/ssh_config
Leer más...

sdl init failure reason is no available video device


En esta entrada vamos a mostrar rápidamente como corregir un error al ejecutar el administrador de dispositivos para android (AVD).

El error es:

sdl init failure reason is no available video device

Para corregirlo podemos hacer la instalación de unas bibliotecas:

yum install glibc.i686 ncurses-libs.i686 libstdc libstdc++.i686 libzip.i686 libX11.i686 libXrandr.i686 SDL.i686





1 Pedro 3:8-98 Finalmente, sed todos de un mismo sentir, compasivos, amándoos fraternalmente, misericordiosos, amigables;9 no devolviendo mal por mal, ni maldición por maldición, sino por el contrario, bendiciendo, sabiendo que fuisteis llamados para he heredaseis bendición.
Leer más...

Podcast - javaHispano busca editor


Podcast Duke
En esta ocasión nos unimos a promover la necesidad de javahispano de la colaboración en los podcast.

Colocando las palabras de Abraham: 

Si entre vosotros hubiese alguien que esté dispuesto a echar una mano en la edición del audio de los podcast su ayuda sería muy bienvenida. Cualquiera que crea que puede echar una mano que contacte conmigo abraham@javaHispano.org Para más detalle pueden revisar en Javahispano - Podcast
Leer más...

Estructura de un Proyecto Android

 




Al crear un proyecto android en un IDE, el mismo nos crea la estructura necesaria para la ejecución, desarrollo de una aplicación.
En esta entrada se mostrará la estructura de un proyecto generado en Netbeans, pero en general en los demás IDE’s es lo mismo, solo cambian algunos nombres como por ejemplo:
En netbeans crea Resources y en eclipse crea Res, pero ambos contienen lo mismo.


  • Source Packages:
    En este sección encontraremos el código fuente en sus respectivos paquetes de nuestro proyecto, ya sea creado por nosotros o creado automáticamente por el IDE.
     En esta sección también encontraremos la clase MainActivity, creada por el IDE,  que contiene lo esencial para la pantalla inicial, el comportamiento de esta clase y la definición de sus métodos lo veremos a más detalle en otra entrada.


  • Generated Source Packages:
         En esta sección encontraremos el código fuente generado por el IDE que no puede ser modificado por nosotros, no es de solo lectura pero si lo modificamos el IDE lo re-genera. Encontraremos el fuente de la clase R, aquí se encuentra las constantes con los id definidos en la carpeta Resources para ser usados en la aplicación.


  • Resources:
        En esta carpeta se encuentran creados y además podremos agregar datos como imagenes, cadenas, configuraciones para el dispositivo conocidos como recursos. Esto nos permitirá mantener una independencia en nuestra aplicación entre las diferentes partes de la misma.

         drawable:
  En este recurso se encuentran las imagenes. Pero dado que unas de las características mas atractivas en Android
Los recursos que inician con drawable- fueron agreados en Android desde la versión 1.6 para soporte a las diferentes resoluciones y mantener un desarrollo consistente en los diferentes dispositivos utilizando una sola aplicación (.apk) , y como buena práctica debiéramos aplicarlos buscando una buena experiencia del usuario, aunque nos toca un poco más de trabajo :(.

drawable-hdpi: Densidad Alta 72x72
drawable-ldpi:   Densidad Baja 36x36
drawable-mdpi: Densidad media 48x48
        Puedes encontrar más detalle, de este punto, en la guía de desarrollo Android en Soporte para varias pantallas

layout: Aquí colocamos los recursos que tienen que ver con la parte de la arquitectura de la interfaz usuario

values: Aquí se define las cadenas, arreglos de cadenas y plurales para hacer referencia desde cualquier lado de la aplicación utilizando por ejemplo un diseño xml. Para acceder a estos recursos se utilizan los id string, array, plurals.
Puedes encontrar más detalle, de este punto, en la guía de desarrollo Android en Resources.

Important Files.

     Android manifest file:

En toda aplicación o proyecto hecho para Android debe contener un archivo con el nombre AndroidManifest.xml y debe encontrarse en el directorio raíz de la aplicación. En este archivo se colocará la información esencial sobre la aplicación que será usada en el momento de la ejecución del mismo.
Otros puntos que se encontrarán en este archivo:
      • El nombre del paquete java que usará la aplicación y que será usado como identificador único.
      • Se describen componentes como actividades, servicios, receptores, proveedores de contenido. Los nombres de las clases que serán implementada por cada componente.
      • Se determinan los procesos que serán usados por los componentes de la aplicación.
      • Se declaran los permisos necesarios para la iteracción con el sistema otras aplicaciones y opciones del sistema que requierieran un permiso u viceversa.
      • Se declara el nivel mínimo de la API de Android que requiere la aplicación.

Puedes encontrar más detalle, de este punto, en la guía de desarrollo Android en AndroidManifest.html
       
                      El resto de los archivos no serán usados por nosotros.

    Hasta aquí les dejo un vistazo de lo que es la estructura de un proyecto Android, como comenté al inicio, cada detalle aplica de forma general a un IDE, pero les muestro uno generado en Netbeans.
Pueden encontrar más detalle de la estructura de un proyecto Android en Proyecto Android - Sitio Oficial de Programación.


El corazón alegre hermosea el rostro;
mas por el dolor del corazón el espíritu se abate.
Proverbios 15:13

Leer más...

Configurar Netbeans para usar SDK Android

Después de haber mostrado como instalar el JDK para java,SDK Android e instalar netbeans, mostraremos como agregar el SDK en netbeans.
Instalar JDK Linux
Instalar SDK Android Fedora.
Instalar Netbeans en Linux

Luego de haber realizado los 3 pasos procedemos a configurar netbeans.

1 - Iniciar Netbeans.

2 - Ir al menú Tools y seguido del sub-menú Plugins.












3 - Buscamos la pestaña Settings y presionamos el botón Add y llenamos los campos de la siguiente forma











y presioamos el botón OK













4 - Luego nos movemos a la pestaña Available Plugins y presionamos el botón Reload Catalog, esto cargará los plugins para android. De la lista que nos muestra seleccionamos:

  • Android.
  • Android Test Runner for Netbeans 7.0+.
Y presionamos el botón Install.














5 - Nos saldrá una ventana con la lista de los plugins a instalar, presionamos el botón Next.
















6 - Aceptamos los términos y presionamos el botón Install.

















7 - Nos saldrá una advertencia sobre la verificación de los certificados, presionamos el botón Continue.
















8 - Y ya nos debe mostrar el mensaje de Instalación completada.

















Hasta aquí hemos agregados los plugins a netbeans para poder crear proyectos de tipo Android, lo que sigue es agregar el SDK Android a Netbeans. Para esto procederemos con los siguientes pasos.

1 - Ir al menú Tools y seguido al sub-menú Options.

 















3 - En la pestaña Miscellaneus le damos clic al botón Browse para buscar la ruta donde instalamos el SDK y presionamos el botón OK.

 















Hasta aquí hemos hecho que netbeans puede usar junto con los proyectos de tipo Android el SDK.

Ahora me imagino que todos quieren saber, al igual que yo, si nuestra instalación funciona.
Así que procederemos a crear un proyecto de tipo Android.

1 - Nos vamos al menú File seguido por el sub-menú New Project y de ahí en la sección Categories seleccionamos Android y de la sección Projects seleccionamos Android Projects y presionamos el botón Next.













2 - Llenaremos la información del proyecto de la siguiente manera:

  • Project Name: ejemplo1
  • Package Name: com.fuentesjava.android (el nombre del paquete debe estar compuesto por dos partes mínimo, netbeans se lo atribuye como un bug de Android).
  • Tarjet Platform: Android 4.0.3.

Los demás campos que no menciono pueden quedarse con el valor que ya tienen por defecto, y presionamos el botón Finish
   
     
   











Al llegar hasta este punto ya tenemos el proyecto creado, pero posiblmente les aparezca el error Package R does not exist.
Solución:
 Para corregir este error no debemos realizar la importación de la clase.

 La solución es ir sobre el proyecto creado y darle clic con el botón derecho del mouse y escoger Clean and Build.

Si por algún caso ya habíamos hecho la importación, debemos primero borrar la línea import android.R antes de escoger Clean and Build.

Bueno hasta aquí ya tenemos el proyecto android creado listo para poder ejecutarse solo debemos presionar la tecla F6 o la opción Run del proyecto.

Porque no envió a su Hijo al mundo para condenar al mundo, sino para que el mundo sea salvo por él. Juan 3:17
Leer más...

Instalar SDK Android Linux

En esta entrada voy a mostrar como podemos instalar el SDK para android en Fedora 16.






1 - Vamos a la página Descargar SDK. Y buscamos :
       Linux (i386) android-sdk_r16-linux.tgz

2 - Descomprimir el archivo descargado que tiene extensión tgz:
         tar zxf android-sdk_r16-linux.tgz

3 - Nos pasamos a la carpeta android-sdk-linux

4 - Decidir si queremos instalarlo usando la pantalla gráfica o de manera silenciosa.
      Si decide hacerlo de manera silenciosa valla al paso 5.
      Si decide hacerlo usando la pantalla gráfica salte al paso 6.

5 - Ejecutar tools/android update sdk --no-ui y esperar que se realice la instalación, esta instalación puede demorar.

6 - Ejecutar tools/android y esperar unos segundos a que cargue la pantalla gráfica.
   Para saber que se debe seleccionar, seguimos las Recomendaciones.

  • SDK Tools.
  • SDK Platform-tools.
  • SDK platform.
  • Documentation.
  • Samples.
  • USB Driver.
  • Google Api.
  • Additional SDK Platforms.

  Al tener ya    instalado el SDK, vamos a crear un Dispositivo Virtual Android (AVD).
Si lo hicimos de forma silenciosa pasamos al paso 1, si lo hicimos de con la pantalla gráfica saltamos al paso 2.

1 - Ejecutamos tools/android .

2 - Buscamos el menú Tools y seleccionamos Manage AVDs. Con este paso nos muestra una ventana con el título Android Virtual Device Manager.









3 - Nos saldrá una ventana con el título Create new Android Virtual Device Manager(AVD), Presionamos el botón New.
 Nos saldrá la siguiente ventana:












4 - Llenar el campo Name, este campo contiene el nombre que le daremos a nuestro dispositivo virtual, podemos ponerle AVDPrueba.

5 - Desplegar la lista en el campo Target para seleccionar la versión de Android que queremos utilizar.












6 - Presionamos el botón Create AVD.
Listo ya tenemos instalado SDK.


Si su sistema operativo es una versión para 64bit y te sale el error que se coloca al final deben instalar ciertas librerías de 32 bit de la siguiente manera:

Línea que corrigue el error:
yum install zlib-devel.i686 ncurses-devel.i686 glibc-devel.i686 libstdc++.i686 libXrandr.i68 glibc.i686 libX11-devel.i686 libXrender.i686 


Error que muestra en la consola al ejecutar el proyecto:



java.io.IOException: Cannot run program "/home/arielb/android-sdk-linux/platform-tools/aapt" (in directory "/home/arielb/NetBeansProjects/proyecto1"): java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)






En la siguiente entrada mostraremos como configurar netbeans para usar SDK Android.
Leer más...

Instalar Netbeans en Linux













Luego de haber instalado JDK y configurado las variables de entornos.
Podemos proceder a la instalación de Netbeans.

1 - Entramos al sitio de Netbeans y descargamos la versión actual.

2 - Luego de haber descargado la versión actual, como usuario le damos los permisos necesarios:
chmod a+x netbeans-*-linux.sh

3 - Ejecutamos sh netbeans-*-javaee-linux.sh 4 - Seleccionamos el contenedor que necesitamos entre Tomcat y glassfish, si gustan puede ser ambos y presionamos el botón siguiente.










5 - Aceptamos el contrato









6 - Aceptamos el contrato de la instalación de JUnit










7 - Verificamos si el JDK seleccionado es que el que necesitamos y presionamos el botón siguiente.










8 - Verificamos la ubicación para la instalación de glassfish y presionamos el botón siguiente.









9 - Revisamos el resumen de la instalación a realizar y luego presionamos el botón Instalar.









10 - Esperamos unos minutos mientras se realiza la instalación.









11 - Presionamos el botón Finalizar









12 - Buscamos el menú Programación y econtraremos Netbeans y pondemos iniciarlo.








13 - Y ya tenemos netbeans listo para programar.
Leer más...

Instalar VirtualBox Fedora

En esta entrada mostraremos como instalar VirtualBox 
en Fedora.
1 - Pasarnos al usuario root
su
2 - Cambiarnos al directorio de 
repositorios Fedora
cd /etc/yum.repos.d/
3 - Decargar el archivo.
wget http://download.virtualbox.org/virtualbox/rpm/fedora/virtualbox.repo
4 - Realizar la actualización
yum update
5 - Realizar la instalación de Virtualbox
yum install VirtualBox-4.1.x86_64 
6 - Realizar la instalaciòn de gcc 
yum install binutils gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkms
7 - Reinstlamos
/etc/init.d/vboxdrv setup
8 - Ir al menú e iniciar VirtualBox.
Leer más...