Entradas

Contraseñas encriptadas con Java

Imagen
¿Quién no ha querido encriptar texto o archivo? Hay diversas maneras para hacer eso, por ejemplo, utilizando un diccionario donde se reemplazara cada caracter por un código.. y para poder desencriptarlo se debería utilizar el mismo diccionario para revertir el proceso. Pero si el diccionario cae en manos de alguien que no queremos que lo sepa, entonces estamos en peligro. Cuando yo programaba en pascal, mi encriptación favorita era invirtiendo los bits... pero cualquiera también puede invertir los bits y listo. Pero ya gente experta logró algoritmos de encriptación populares. Los más conocidos: MD5 y SHA. En este post hablaremos cómo encriptar texto, sobretodo las contraseñas, utilizando MD5 o SHA.

Upload en JSF 2.0

Imagen
Después de varias semanas desconectado por motivo de trabajo (parece que ahora sí trabajo más que antes) retomo (y espero que sea más seguido) los artículos de este blog que, según veo las estadísticas, a varios desarrolladores ayudan. Y bueno, estuve haciendo una aplicación con JSF 2.0, y una de las característica que debería tener es que  permita anexar archivos. Los Servlet 3.0 - que son parte de Java EE 6 - permiten cargar archivos de manera nativa. Lo que mostraré en este post es justamente cómo utilizar el Upload de Servlet 3.0 desde una aplicación web con JSF 2.0. No usaré extensiones de JSF como el ICEFaces o el MyFaces, porque quiero hacerlo de la manera más genérica posible, de tal manera que no afecte a la implementación de JSF que estén usando.

Driver de Oracle dentro de NetBeans 7.0

Imagen
Acabo de bajar el NetBeans 7.0 Beta 2 con la traducción en español  y comencé a probar la conectividad con Oracle. Había leído que el manejo de conexiones desde el IDE estaba mejorado (sobre todo con Oracle, ¿por que será?) y como estaba viendo un proyecto con Oracle (muchos oracle en un solo párrafo) decidí probarlo.

JComboBox de Objetos

Imagen
Cuando se usa Swing, el problema más común es mostrar elementos en un JComboBox. Lo que "normalmente" hacen es agregar cadenas a los elementos del JCB (JComboBox), pero para obtener el elemento seleccionado, se obtendría solo el valor puestos. Algunos hasta colocan el ID del elemento a mostrar, y luego buscan el elemento seleccionado en la colección. Toda una jarana... pero ¿han notado que para obtener el elemento seleccionado se utiliza el método getSelectedItem() que devuelve un objeto? Si debería mostrar String, entonces, debería devolver un String, ¿cierto? En este post explicaremos como utilizar correctamente el JCB.

RESTful parte 4: Actualizando y eliminando elementos de una colección.

Imagen
Todo mantenimiento de objetos debe tener siempre lo que en inglés se llama CRUD (Create - Read - Update - Delete). Hasta ahora hemos visto C y R. Faltan el U y el D. Así que en este artículo hablaremos de ello

RESTful parte 3: Manejando colecciones de objetos y objetos complejos

Imagen
Comenzamos este año nuevo con la continuación del (creo yo) más esperado tema de tutorial: RESTful . Y esta vez hablaremos sobre el manejo de colecciones y objetos complejos. Por ahora será de manera básica y veremos poco a poco cómo hacerlo más y más complejo.

Delay

Mantener un blog es complicado, mas no imposible. Me había propuesto en poner un post cada martes, así en un mes habrían al menos cuatro apuntes que podrían ayudar a la comunidad java - en especial a los hispanos. Si en estas últimas semanas no he podido publicar más artículos no fue porque no sé qué publicar, sino por falta de tiempo. Estamos terminando un año, y con él muchos proyectos se deben cerrar, y  para preparar (no es por presumir, pero vuestros comentarios me lo confirman) un  buen artículo se necesita un tiempo exclusivo. Hay bastante material para publicar en mi blog, por ejemplo: RESTful con objetos complejos, con entidades, con arreglos, con conversores de tipo y sus clientes en PHP, JavaScript, JavaFX, etc. Plantillas en Liferay. JPA 2.0 y todo lo que se puede hacer. JSF 2.0: más ejemplos de Ajax, y sus extensiones con ICefaces JasperServer NetBeans Platform Java EE 6 sobre WebLogic etc Como se ve, hay bastante material para publicar, sin mencionar los

RESTful - Parte 2: Manejando un solo objeto

Imagen
Hemos visto en el anterior post cómo hacer un servicio REST solo para producir y consumir un texto simple. Ahora bien, en la vida real no son textos simples, sino estructuras de datos algo complicadas. Pero para ir lentos pero seguros, aprenderemos cómo hacer un servicio REST pero para manejar un solo objeto.

Lo que se viene con JDK 7 & NetBeans 7

Imagen
Se dice que el número 7 es el número de la perfección, y para el mundo Java este número no está lejos de serlo. Está cerca el JDK 7, con muchas mejoras en la sintaxis, y casi a la par también sale el NetBeans 7 con su respectiva compatibilidad. En este post mostraré algunas características de estos software.

RESTful... la forma más ligera de hacer WebServices (Parte 1)

Imagen
Quienes hayan usado SOAP para WebService, sabrán que es bien fácil de diseñar, pero algo complicado de consumir: se necesita toda una API para construir los clientes utilizando el WSDL. Por ejemplo, para PHP se necesita de la biblioteca NuSOAP. Entonces, para lograr el concepto de "lenguaje único XML" es un dolor de cabeza. Y más aún si el cliente es tan simple como JavaScript, manejar XML de SOAP provocaría suicidos masivos... o no usar WebServices. Además, con SOAP se permite crear un solo servicio y ponerle varios métodos. Esto puede llevar a un mal diseño del servicio ya que podría tener un servicio que haga de todo: por ejemplo, un servicio de manejo de Clientes que permita también manejar Proveedores. RESTful es una propuesta muy interesante de Roy Fielding que permite manejar los servicios web con métodos definidos, manteniendo la simpleza del protocolo como XML, pero que cada servicio sea identificado únicamente con un solo URI . En este post veremos cómo cr

Preparando capacitación virtual en NetBeans Platform

Imagen
A Geertjan Wielenga (considerado como el maestro de  NetBeans Platform) le he propuesto hacer un entrenamiento virtual sobre NetBeans Platform para Latinoamerica. Le agradó la idea, y me dice que reuna al menos a cinco o seis participantes. NetBeans Platform es una plataforma completa que permite desarrollar aplicaciones desktop (swing) proporcionándonos varias funcionalidades "rutinarias" que se necesitan al momento de hacer una aplicación swing, tales como manejo de ventanas, árboles, ventanas de diálogos, opciones, manejo de archivos, etc.  También se pueden desarrollar complementos que permitan ampliar la funcionalidad del mismo NetBeans IDE. Para tener una idea de lo que se puede hacer: NetBeans IDE y iReport están hechos sobre NetBeans Platform. ¿Quienes se apuntan para este entrenamiento? Si estás interesado, llena tus datos aquí :

Swing: Componentes enlazados a un bean

Imagen
La mejor manera de tener sincronizado un control swing con un javabean es utilizando enlaces (binding). La manera común y poco profesional es utilizar los set  y gets de cada atributo de un bean para asociar a cada componente. //... nombreTF.setValue(persona.getNombre()); edadTF.setValue(persona.getEdad()); //... etc y si son 80 campos, nadie querra hacerle mantenimiento. Aquí es donde entran los enlaces. Mostraremos un ejemplo con NetBeans para enlazar los componentes de un formulario con un JavaBean.

Compilando y ejecutando una clase java.... desde java

Imagen
El JDK 6 viene con varias funcionalidades interesantes, entre ellas la compilación de clases java desde el mismo java.

CouchDB, base de datos orientada a documentos

Imagen
Desde Panamá, nuestro amigo Arístides Villareal , ha publicado algunos post referente a esta base de datos orientada a documentos llamada CouchDB . http://avbravo.blogspot.com/search/label/couchdb http://avbravo.blogspot.com/search/label/m21couchdb CouchDB proporciona un API JSon para que puede ser accdido desde cualquier entorno, incluyendo peticiones HTTP. Fue escribo en Erlang , un lenguaje de programación funcional ideal para sistemas distribuidos concurrentes.

EJB 3.1 en Porlets de Liferay

Imagen
Ya que GlassFish v3 es compatible con Java EE6, y permite módulos web con componentes EJB (por la característica propia de EJB 3.1).. y además Liferay puede ser instalado sobre GlassFish v3... y... los portlets son módulos web con otro archivo de despligue ¿los portlets para Liferay/GFv3 deberían permitir EJB 3.1?