Bienvenido a Java Mexico

Java México es una comunidad de desarrolladores mexicanos en el lenguaje Java.

Este sitio es colaborativo, automáticamente al registrarte obtienes un Blog para compartir tus conocimientos o información acerca del lenguaje. Antes de publicar en tu blog o los foros por favor lee los lineamientos de publicación.

Para dudas y problemas con respecto al lenguaje Java puedes visitar los Foros de Discusión.

También puedes responder nuestra encuesta para saber en que estado vives!

Oficina Postal Electrónica (OPE) - Comunidad

Hola a todos.

El motivo por el cual escribo este blog es para tratar de crear una comunidad de desarrolladores para crear el Sistema Automatizado de Control de Gestión (SACG) para la Oficina Postal Electrónica (OPE), que desde hace unos años ha implementado la Secretaría de la Función Pública en México.

Actualmente me encuentro en el desarrollo de dicho sistema y he podido constatar que la información técnica necesaria para realizar este proyecto es muy escasa. Motivo por el cual pretendo que se cree una comunidad de desarrollo para que entre todos los participantes puedan aportar información, código, etc. para el sustento de este proyecto que es a nivel nacional para todas las dependencias de gobierno.

Con una comunidad de apoyo el progreso en el desarrollo de este sistema aumentaría considerablemente teniendo una base sólida en detalles técnicos y generales. Además de crear un camino factible para todos los que emprendan este proyecto.

Saludos.

Do While con más de una línea sin corchetes, ¿Por qué es válido?

Que tal, me surgió una duda la cual no me he sabido responder, resulta que en una pregunta del simulador para la certificación viene el siguiente código:

public class Foo {
public static void main(String[] args){
    String[] table = {"aa", "bb", "cc"};
    int ii =0;
    do
        while (ii < table.length)
        System.out.println(ii++);
    while (ii < table.length);
    }
}

La duda que tengo es, ¿Por qué es válido el colocar el do while sin llaves que le indiquen el bloque de código a ejecutar?.
He leído y me han explicado que cuando se escribe el do while de esa manera solo ejecuta una sola línea de código que está inmediatamente después del "do", sin embargo aqui veo que tiene 2 líneas más:

while (ii < table.length)
System.out.println(ii++);

Espero me haya dado a entender, les agradezco de antemano.
Saludos!

Administrar dos QuartzJobBean

Buenas tardes,

Tengo dos Job usando QuartzJobBean con Spring los cuales se ejecutan el Job1 cada 1 minute y el Job2 cada 4 minutos, lo que deseo es que si el Job1 no termino no se ejecute el Job2, lo mismo si el Job2 no termino no se ejecute el Job1.

Espero que con estas pocas lineas se entienda y me pueda ayudar.

Desde ya muchas gracias.

Iniciando en Java

Que tal amig@s!

Hoy me decidí (después de dos meses de ser miembro de esta comunidad) por comenzar a publicar entradas en este espacio, ya que he iniciado con un curso el cual te prepara para la certificación en Java Associate. La verdad que este curso no me ha servido de mucho ya que ha sido muy "express" y teniendo en cuenta que soy una persona de lento aprendizaje he optado por capturar el conocimiento que voy a adquiriendo por medio de internet/Material de oracle/Libros/Amigos/etc. en este espacio y así ayudar a alguien más que esté en el mismo camino que yo,¿y por que no? obtener ayuda y consejos de ustedes.

En general, mi contexto es que he tenido que incursionar en java porque mi trabajo así me lo solicita, este trabajo consiste entre otras cosas en hacer pruebas unitarias a aplicaciones java. Siendo sinceros es que yo no había tocado jamás el lenguaje java, en la universidad utilicé C++ pero realmente nunca lo lleve a algo real, es decir, solo hacía programitas que imprimieran un arbol de asteriscos, la serie de fibonacci, o cosas por el estilo pero nunca lo lleve a una aplicación real.

Siempre me ha gustado la programación y por eso me decidí en tomar la certificación básica que java ofreció en mi universidad por ahí de Noviembre del año pasado, La verdad es que he tenido ciertas dificultades al presentar los famosos simuladores y creo que ha sido por varias razones, pero una de las más importantes es que tanto en el curso como en el material que java te facilita para estudiar vienen todos los temas, hasta ahí vamos bien, pero no te muestran las variantes que puede tener ese tema y en el examen te preguntan cosas que no viste.

Un ejemplo claro de esto es que en el material de Java viene bien explicadito que es un for, su estructura, el incremento, etc., en la hora del simulador te preguntan algo como esto:

  for (; i < results.length(); i++);
        {
            results = results.substring(i);
            totalGrade += results.charAt(i);
        }

Al momento de contestar, (como para todas las preguntas que no les entiendo XD) seleccioné la opción "Compilation fails", la verdad es que no sabía que el ciclo For compilaba correctamente si se dejaba uno o todos sus atributos vacíos.

James Gosling demanda a Oracle, pide le devuelvan el lenguaje Java


James Gosling ha demandado a Oracle para que le devuelvan el lenguaje de programación Java. Esto era de esperarse, ya que en los últimos meses no le ha gustado como el lenguaje ha ido evolucionando. Lenguajes dependientes de la Máquina Virtual Java (como Scala, Groovy, etc) también se verán afectados por esta demanda pues exige que Java es el único lenguaje de programación que él creó para esa implementación(sic).

En una entrevista para un diario inglés Gosling afirmo que: "no voy a permitir que sigan deteriorando el lenguaje, el lenguaje es puramente orientado a objetos no lo diseñé para implementar la programación funcional"

Todo parece que esta presionando a Oracle porque pretende vender el lenguaje a una empresa de Corea del Norte, puesto que los asiáticos desean modificarlo con fines militares y le ofrecen una gran suma multimillonaria.

Los abogados de Oracle le están ofreciendo una suma similar y un puesto vitalicio en la empresa, pero todo parece que Gosling no esta nada contento con ello.

Canción del programador

Y como esta es una época de alegría y de fiestas, he aquí una que otra canción del programador:

Java para Startup/Entrepreneurs I

Estoy armando mi plan para pasar del mundo corporativo al emprendimiento. Mi plan es ofrecer un servicio en la nube mediante una aplicación que estoy desarrollando. Para lograrlo estoy analizando varios aspectos.

En esta entrada quiero tratar el aspecto relacionado a Infraestructura.

Mi primer paso para ofrecer el servicio es conseguir una buena opción que pueda equilibrar costo, flexibilidad y estabilidad (ancho de banda adecuado).

1. Esto me lleva a buscar una renta de Hosting o Housing. Pienso que para probar el mercado sería suficiente ya que tener servidores propios necesitaría una inversión más grande.

2. Decidir por un web application. Entré a la página Java EE Compatible Implementations
Donde están los web applications la versión más reciente JEE 7. Existen 3: Glashfish 4.0, Wildfly 8.x (JBOSS) y TMAX JEUS 8.
Adicionalmente encontré por parte de Apache Tomee “Tomy” que es un tomcat 7 con soporte para EJB y otros proyectos que lo clasifican como un web application.

Un ejemplo con NiconNotify OSD

Acaba de salir la nueva versión de la librería NiconNotify OSD , la cual provee clases para crear mensajes tipo "alert" de Java Swing.

Código

package org.javamexico.task;

import javax.swing.UIManager;
import javax.swing.plaf.nimbus.NimbusLookAndFeel;

import nicon.notify.core.Notification;

public class TestNiconNotify {

    public static void main(String[] args) {
        try{
            UIManager.setLookAndFeel(new NimbusLookAndFeel());
            int respuesta=Notification.windowConfirmMessage(null, "Confirmacion", "Desea borrar Windows de sus sistema?");
            if(respuesta==1){
                Notification.windowMessage(null, "Respuesta", "Claro, quiero eliminar Windows de mi sistema");
            }else{
                Notification.windowMessage(null, "Respuesta", "No, todavia no.");
            }
           
        }catch(Exception ex){
            System.err.println("error: "+ex.getCause());
        }

    }

}

Ejecutando código:

Ejemplo básico con Spring MVC (XML-less)

 

Spring puede configurarse a través de archivos XML y/o con código Java. — El siguiente aporte es un ejemplo básico de uso de Spring MVC sin utilizar la configuración basada en XML (también el web.xml es omitido) y como tema del ejemplo se trata de un ABC de Snippets.

 

 

Para poder trabajar sin el descriptor de despliegue (el archivo web.xml), se requiere que el servidor de aplicaciones implemente la especificación de Servlet 3.0+ (p.ej.: Tomcat 7/8, Glassfish 3/4, JBoss AS 7).

Algunos clases de este proyecto utilizan características de Java 8, que pueden modificarse fácilmente para soportar Java 6/7. Para el manejo de las dependencias se utilizó Maven 3.x

Estructura

  1. C:.
  2. |   pom.xml
  3. |
  4. \---src
  5.     \---main
  6.         +---java
  7.         |   \---org
  8.         |       \---javamexico
  9.         |           \---snippet

JSF2 PrimeFaces5 y Maven3 -Ej. Crear Graficas-

Hola este post tiene dos propósitos, el primero es de contribuir con estos temas que por más que busque en esta pagina no encontré algo que satisficiera la duda que tenia ya que ahora que estoy buscando trabajo en las solicitudes de empleo de las empresas encontré que los frameworks más solicitados son: Spring,JSF2, PrimeFaces,RichFaces y como ORM Hibernate y gestor de proyectos Maven y me di a la tarea de buscar en internet algo para que los usuarios de esta pagina encuentren un pequeño soporte del tema (usuarios principiantes como yo).
Y como segundo propósito es el de la ayuda, tips o comentarios acerca de un punto en especial que más adelante lo mencionare.

Bueno iniciemos...

Entorno:

    Eclipse Luna 4.4 { Descargar de EclipseMarketplace: JBoosTools [Luna]}
    JSF 2.2
    PrimeFaces 5.1
    Maven 3.0
    Apache Tomcat 7* (Pueden usar el servidor AS de JBoss 7 pero esto modificaría un poco el pom.xml)
Distribuir contenido