Spring Boot

Estándar

Spring Boot es una herramienta práctica y simplificada que complementa la plataforma Spring, ideal para desarrollar aplicaciones independientes de calidad profesional con un mínimo de esfuerzo. Según el sitio oficial: https://spring.io/projects/spring-boot

«Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can «just run». We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need minimal Spring configuration.»

En inglés al utilizar la palabra «opinionated» (y hablando en un contexto técnico, como en desarrollo de software), se refiere a una herramienta, framework o sistema que toma decisiones por el usuario al proporcionar configuraciones predeterminadas o formas «recomendadas» de hacer las cosas.

En el caso de Spring Boot, «opinionated» significa que el framework establece una serie de convenciones y configuraciones por defecto que, según sus creadores, son las mejores prácticas o más comunes para la mayoría de los casos. Esto reduce la necesidad de tomar decisiones desde cero y simplifica el proceso de desarrollo, pero puede ser menos flexible para quienes quieren personalizar todo desde el principio, por tanto podemos decir que el framework tiene una «opinión fuerte» sobre cómo deben hacerse las cosas, guiando al desarrollador con configuraciones predefinidas.

Características

  • Crea aplicaciones Spring stand-alone.
  • Incluye servidores como Tomcat, Jetty o Undertow (sin necesidad de desplegar archivos WAR).
  • Ofrece dependencias iniciales preconfiguradas (starters) para simplificar la configuración del proyecto.
  • Configura automáticamente Spring y bibliotecas de terceros siempre que sea posible.
  • Proporciona herramientas listas para producción, como métricas, comprobaciones de salud y configuración externalizada.
  • Sin generación de código y sin necesidad de configuraciones en XML.

Saludos!

Curso de Kotlin para Desarrolladores JAVA en Coursera

Estándar

Hoy empieza en Coursera, el curso de Kotlin para Desarrolladores JAVA!

Kotlin es un lenguaje enfocado en la interoperabilidad con JAVA, se puede utilizar prácticamente en todos los sitios donde actualmente se esta utilizando JAVA, ya que es 100% compatible con todos los frameworks existentes y provee buenas herramientas de soporte. Es un lenguaje que puede ser adoptado rápidamente por desarrolladores y puede ser compilado para la Virtual Machine, para JavaScript y código nativo, aunque este curso está solamente centrado en Kotlin/JVM)

En este curso no se abordarán temas básicos de programación, se aprenderá: sintaxis, manejo de nulos, programación funcional, Programación Orientada a Objetos, consideraciones de su Librería Estándar e interoperabilidad con JAVA.

Lo mejor de todo… es gratis y pueden acceder a todo el material del curso sin obtener calificaciones ni el titulo que avala el curso, caso contrario tiene un costo de cuarenta y nueve dólares (49 USD).

Kotlin para Desarrolladores JAVA

Saludos.

Configurar SSL en Wildfly 8/9/10

Estándar

Esta configuración es para WildFly 8, pero funciona con las versiones 9 y 10. Tomar en cuenta que se debe tener las utilidades openssl y keytool instaladas y de preferencia en el path, para ejecutar los comandos descritos.

Bueno, se tiene el desafío de configurar servidores WildFly/JBoss para utilizar HTTPS. Se debe partir generando los siguientes archivos y certificados SSL que se detallan a continuación:

midominio.com.csr (Certificate Signing Request) y midominio.com.key (Llave Privada para nuestro Certificado SSL)
Este es el primer paso, se debe generar esta «Solicitud de Firma de Certificado» desde el servidor midominio.com donde se desea instalar el certificado SSL. Es recomendable utilizar como minimo una llave de 2048 bits.

Los archivos .csr y .key se generan con el siguiente comando:

Esto nos devolverá el siguiente mensaje en la pantalla:

Luego debemos proveer la información referente a nuestra organización (midominio.com)

Ahora si estamos listos para comprar nuestro certificado SSL. Un certificado estándar probablemente sera todo lo que se necesite para obtener seguridad básica. Hay distintos sitios que proveen certificados SSL a buen precio, como GoDaddy.com o SSLs.com.
Luego de comprar el certificado el siguiente paso es activarlo con el proveedor, el mismo solicitará copiar el contenido del archivo .csr creado con anterioridad.

Una vez emitido el certificado SSL en base a la información proporcionada, lo descargamos y descomprimimos
Los archivos que necesitamos del paquete son:
ssl_certificate.crt (Certificado SSL de midominio.com) y IntermediateCA.crt (Certificado del Emisor o Proveedor del certificate de midominio.com) junto con el archivo midominio.com.key generado con anterioridad.

Ahora debemos crear un archivo .jks para importarlo en el keystore. Este es un proceso de 3 pasos: primero creamos un archivo pkcs12 (con extensión .p12) a partir del certificado SSL, luego lo importamos en un archivo keystore y por ultimo tambien importamos el IntermediateCA.crt en el keystore.

Paso 1

Paso 2

* Si desean hacer la prueba también pueden generarse un certificado local e importarlo al keystore, siguiendo los pasos en este artículo: Generar un certificado local e importarlo en el keystore para habilitar SSL en WildFly.

Paso 3

Convertir el IntermediateCA.crt a .pfx

Importar el certificado .pfx a nuestro keystore.

Luego adicionar la siguiente entrada dentro del archivo standalone.xml en la sección security-realms.

Luego de tener importados los certificados, agregamos la siguiente entrada dentro del archivo standalone.xml en la sección server name.

Si deseamos redireccionar todas las peticiones http hacia https, entonces modificamos la linea adicionando redirect-socket=»https»

No olvidemos tambien verificar que nuestro puerto SSL este correctamente definido dentro la sección socket-binding-group name=»standard-sockets»

Adicionar en el archivo web.xml (Esto requiere volver a empaquetar el .war y volverlo a desplegar en WildFly)

Reiniciamos WildFly, volvemos a desplegar el .war y hacemos la prueba ingresando a midominio.com ya sea desde https o http en caso tenemos activa la redirección.

Saludos.

Generar un certificado local e importarlo en el keystore para habilitar SSL en WildFly

Estándar

Tomen en cuenta que este proceso les generará una llave keystore del servidor local, lo cual no es tan parecido a los entornos públicos o del mundo real, donde se genera a partir de los certificados SSL provistos por la Autoridad Emisora. Para ello pueden revisar este artículo: Configurar SSL en Wildfly 8/9/10.

Para generar un certificado local, debemos realizar los siguientes pasos:

Este archivo .jks lo copiamos en la carpeta de configuracion del WildFly:

Los demás pasos para integrarlo a WildFly en el artículo indicado al comienzo.

Saludos.