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.

SOA para principiantes

La capacidad de poder responder rápidamente ante los constantes cambios en las reglas y optimización dentro de los procesos de negocio, forma parte de un factor fundamental dentro de la competitividad y crecimiento de las empresas.

Las arquitecturas SOA (Service Oriented Architecture), buscan separar las actividades de los procesos, en servicios independientes y con gobernabilidad, lo que permite una integración de distintas tecnologías en diferentes plataformas, fácilmente.

¿Que ganamos?

Al implementar una arquitectura SOA, ganamos gobernabilidad de las actividades de los procesos, es decir cada tarea del proceso (Si el análisis nos indica que esta es la solución) se expone como un servicio, lo cual indica que al cambiar la tecnología de alguno de ellos, no afecta a los demás ya que para el intercambio de información se hacen el uso de estándares, aun incluso si el proceso global cambia, las tareas se siguen comportando de la misma forma y solo se adaptan si el proceso lo requiere.

Perdido en tomcat 6,7,8 + eclipse luna

Tengo el siguiente Servlet que no funciona al llamar al metodo create.
PEro si creo una clase para probarlo desde un main el metodo create de la clase CicloDAO funciona ok.

Con el servlet no funciona el boolean r = cdao.create(cdto);

Busco pistas por donde mirar que esta fallando.Ya que en otra clase que no sea el servlet si funciona
A ver si me pueden ayudar. Llevo ya algunos días parado en este error.

Saludos

package controlador;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import dao.CicloDAO;
import dto.CicloDTO;

/**
 * Servlet implementation class CreateCiclo
 */

public class CreateCiclo extends HttpServlet {
        private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */

    public CreateCiclo() {
        super();
        // TODO Auto-generated constructor stub
    }

        /**
         * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
         */

Herencia e interfaces en Ceylon


Hace tiempo que no escribo nada y que mejor volviéndolo hacer sobre Ceylon.

Interfaces

Las interfaces son una colección de métodos y propiedades que permiten a una clase definir su implementación. Si en esa colección defino un método llamado  comer() la clase se encargará de implementarlo cuando corresponda a la lógica del problema. Por ejemplo, una clase llamada Animal y/o Persona pueden emplear ese método, sin embargo, una clase llamada Maquina y/o Turbina podría usarse un método más adecuado como encender(); o  apagar(); .

scrum board online

creo que muchos usamos scrum para nuestros proyectos, encontre este pizarron online para las etiquetas:

http://scrumblr.ca/demo

xml

Tengo un problema estoy tratando de extraer informacion de un xml el problema es el siguiente:
tengo dos tag hijos de Conceptos llamados concepto los dos y no se como extraer la informacion ya lo e estado intentando pero no lo logro explico este es el xml ocupo JespXML.jar

<cfdi:Conceptos>
             <cfdi:Concepto cantidad="2.00" unidad="PIEZA" descripcion="TONER HP CF210X NEGRO" valorUnitario="1291.9500" importe="2377.19">
</cfdi:Concepto>
<cfdi:Concepto cantidad="5.00" unidad="PIEZA" descripcion="TONER HP 131 COLOR CF211A-CF212A-CF213A" valorUnitario="1239.7500" importe="5702.85">
</cfdi:Concepto>
</cfdi:Conceptos>

asi extraigo la primera parte

Tag conceptos = raiz.getTagHijoByName("cfdi:Conceptos");
Tag concepto = conceptos.getTagHijoByName("cfdi:Concepto");
            cantidad3 = concepto.getValorDeAtributo("cantidad");
            unidad3 = concepto.getValorDeAtributo("unidad");
            descripcion3 = concepto.getValorDeAtributo("descripcion");
            valor3 = concepto.getValorDeAtributo("valorUnitario");
            importe3 = concepto.getValorDeAtributo("importe");

puzzle en java

Icon g,h,i,j,k,m;
                JButton r,s,t,u,w,y;
  public void revolver(JButton a,JButton b,JButton c,JButton d,JButton e,JButton f) {
         r=a; s=b; t=c; u=d; w=e;
         y=f;
       
            g=r.getIcon();
             h=s.getIcon();
             i=t.getIcon();
             j=u.getIcon();
             k=w.getIcon();
             m=y.getIcon();  
       y.setVisible(false);
            int num = (int) Math.round((Math.random()*3));
            if (num==1){
                r.setIcon(g);
                s.setIcon(j);
                t.setIcon(h);
                u.setIcon(i);
                w.setIcon(k);
                 
            }else if(num==2){
                r.setIcon(j);
                s.setIcon(h);
                t.setIcon(i);
                u.setIcon(k);
                w.setIcon(g);
            }else if(num==3){
                r.setIcon(h);
                s.setIcon(i);
                t.setIcon(k);
                u.setIcon(g);
                w.setIcon(j);
            }else if(num==4){
               r.setIcon(i);
                s.setIcon(k);
                t.setIcon(g);

Estudio de tiempos y movimientos aplicado a la arquitectura de Software para disminuir el tiempo de desarrollo

Hace tiempo platicaba mucho con un amigo que era ingeniero Industrial el me explicaba como los Ingenieros Industriales calculan los tiempos de Manufactura tanto Macro como Micro, para lograr reducirlos y mejorar los costos de Producción. Siempre me pregunte si esas practicas podrían llegar a utilizarse en el desarrollo de software.

Con el tiempo y las mejoras en arquitecturas de software y metodologías, se ha mejorado muchísimo. sin embargo aun existen cosas que podemos tomar de la Ingeniería Industrial como el estudio de tiempos y movimientos para mejorar el desarrollo de nuestros sistemas.

En especial me enfoque en conocer los Therbligs, que se usan en Ingeniería Industrial, los cuales en el desarrollo de sistemas afectarían sus similares a temas de Integración Continua y componentes básicos de arquitectura base para desarrollar aplicaciones en estos.

La lista original de THERBLIGs es:

1. Buscar
2. Seleccionar
3. Tomar o Asir
4. Alcanzar
5. Mover
6. Sostener
7. Soltar
8. Colocar en posición
9. Precolocar en posición
10. Inspeccionar
11. Ensamblar
12. Desensamblar
13. Usar
14. Retraso Inevitable
15. Retraso Evitable
16. Planear
17. Descansar

Maven para buena calidad de codigo

Cuando trabajas en un equipo con varias personas en ocasiones la calidad del codigo empieza a disminuir proporcionalmente al aumento de lineas de codigo, por esta razon me puse a investigar como mantener la calidad del codigo sin tener que revizarlo por ti mismo de una forma automatizada y que no te deje pasar o compilar si no cumples con los requisitos

Estos plugins estan basados para una aplicacion web, eso no significa que no lo puedas usar para crear otro tipo de archivo.

1.- Analizar el codigo

Para esto se va a utilizar findbugs que ya se puede usar con la version 8 de java y este seria el fragmento de codigo para usarlo

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>findbugs-maven-plugin</artifactId>
                <version>3.0.2</version>
                <configuration>
                    <threshold>High</threshold>
                    <effort>Default</effort>
                    <skipEmptyReport>false</skipEmptyReport>
                    <findbugsXmlOutputDirectory>${project.build.directory}/findbugs</findbugsXmlOutputDirectory>
                </configuration>

[Aporte] JashMapTool (Mapeador de clases para Java+Spring+Hibernate)

Buenas, gente

Pues quiero compartir con ustedes mi aplicación en Java que talvez muchos ya saben más o menos cual es la idea, pero para los que no:

Seguramente han trabajado algún proyecto web con un Spring e Hibérnate, en ese caso tuvieron dos opciones, una es configurar Hibérnate Tools para que les generara las clases en java y otra generar dichas clases a mano y sin ninguna ayuda. Bien pues el objetivo de esta pequeña aplicación es generar dichas clases de forma automática, únicamente indicando la conexión a la base de datos.

Les invito a probarla y cualquier comentario será bien recibido.

Saludos

JashMapTool 0.8

[Duda] En desarrollo de aplicación...

Lo que pasa es que estoy desarrollando una aplicación en java que permite generar las clases en JAVA de forma automatica de acuerdo a la estructura de la base de datos, tengo pensado incluir muchas cosas mas pero en algun momento quiero crear una versión de pago, entonces no pretendo que sea de codigo abierto, la pregunta es como le hago para que un grupo de personas que esten interesados en usar la aplicación la usen.. me refiero a que los aspectos básicos siempre seran gratuitos.. espero me hayan entendido y de antemano gracias por sus comentarios.

Distribuir contenido