Desarrollo WEB.


Las practicas de programación orientadas a la web son muy cambiantes en el tiempo. Es necesario conocer e implementar tecnologías, conocer lenguajes,integrar comunidades,usar Ides, etc, recientes, para responder al mercado que se acerca.

Mostrando entradas con la etiqueta desarrollo. Mostrar todas las entradas
Mostrando entradas con la etiqueta desarrollo. Mostrar todas las entradas

martes, 21 de enero de 2014

Capturar valor de un campo de búsqueda de una JDatatable

En ocasiones con JSF requerimos enviar valores con javascript de componentes html y pasarlos por parámetros al controlador, logrando así obtener información cargada en variables de sesión o en entidades EJB.

Una de esas ocasiones es cuando teniendo un campo de búsqueda principal de una JDatatable (plugin de jquery), se quiere llevar de él su valor de búsqueda, para enviar a un reporte ireport o a una consulta sql externa, entre otros casos.

Es decir busco por código, 504290, busca en el json y trae los valores, podría obtener esos valores leyendo el DOM de la tabla o con una función del plugin JDatatable para leer las filas del resultado de la búsqueda, pero lo que realmente requerimos es hacer llegar el criterio con el cual se busco.

Este es un proceso de programación sencillo, el lió se da es cuando se quiere obtener ese valor de la caja, porque esta no posee recurso de código alguno fuera del plugin donde editar este componente, entonces nos vamos  de esta la forma mas fácil.
   
          //En el Controlador
              string2 += "script type="text/javascript"";
              string2 += "  $(function() {";
              string2 += "      var oTableSP =  $('#TablaSeguimientoProduccion').dataTable({"
                    + "             \"bJQueryUI\": true,\n"
                    + "      \"bPaginate\": false\n"
                    + "      \"sScrollY\": '200px',\n"
                    + "      \"bPaginate\": false,\n"
                    + "      \"bScrollCollapse\": true\n"
                    + "        });";
              string2 += "  });";
              string2 += " $(document).ready(function() { "
                    + "     $('div#TablaSeguimientoProduccion_filter input').change(function() { "
                    + "         document.getElementById('formVisor:hiddengeneral').value = $('div#TablaSeguimientoProduccion_filter input').val();"
                    + "      }); "
                    += "  }); ";
              string2 += "/script";
              return string2;
            }
        //el setter y getter para gestionar la informacion de busqueda
            private String filtroGeneral;
            public String getFiltroGeneral(){
               return filtroGeneral;
            }
            public void setFiltroGeneral(String filtroGeneral){
               this.filtroGeneral=filtroGeneral
            }
    

                 //componente xhtml para pasarle el valor, es de tipo oculto no se necesitaria mostrar solo es para que el controlador sepa donde esta la informacion 
                 //y con javascript se pueda enviar.
                            h:inputHidden id="hiddengeneral" value="#{controllador.filtroGeneral}"/

viernes, 16 de agosto de 2013

Uso del System.out.print en java

Escribir en consola es bueno, agradable a nuestra satisfacción de respuesta de la maquina ante lo que le programamos que haga, pero evidentemente cuando este aspecto pasa a producción es decir sale de nuestra maquina de desarrollo y pasa a un servidor de aplicaciones j2ee configurado para producción,  un log que se escribe constantemente, nos puede recargar recursos de la maquina (y de centavo en centavo se ... ). Es necesario una buena optimización de una aplicación j2ee en un servidor en producción y se debe empezar por los pequeños detalles.





Dos opciones, para optimizar, 

  • Retirar de la configuración en el archivo de glassfish que genera el log(archivo físico , la linea que escribe los sucesos de las acciones en la aplicación. lo que se escribimos en el System.out.print. esta es la mas breve y solo se requiere llegar hasta los archivos físicos en el interior del código de glassfish o buscarlo por administración de glassfish.
  • Ser cuidadoso a la hora de dar respuestas muchas veces obvias por cada acción que se realice en el sistema, esta obviedad pueda brindar información de momento muy importante, como quien registro en cierta estación de trabajo, con solo ver un log, y no tener que ir hasta una bd y consultar. Genera un costo de proceso, claro, asignarle a un procesador que haga esta acción, implementado en java con procesamiento paralelo sera genial y liviana la carga de los procesadores.
mas sobre paralelismo y como empezar orientándolo a nuestras aplicaciones j2ee...

martes, 14 de mayo de 2013

Ireport y el error : net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression

Cuando se usa la tecnología ireport para generar reportes, se presentan algunos detalles a tener en cuenta, cuando de su implementación en J2EE se trata.
  • Groovy es un lenguaje de desarrollo al igual que java.
  • Ireport contiene mecanismos para generar reportes en .pdf, .xls, etc. Su tecnología permite que las plantillas .xml que generan el contenido dinámico sea editadas en el ide en cualquier sistema operativo. Si no fuera así ireport no tendría versiones según el sistema operativo, es decir esa es una opción descartada en el proceso de test de fallos.
  • Ireport es un ide para editar plantillas xml que generan contenido en diferentes formatos
  • Jasperreport es la librería que permite transformar a partir de plantillas xml un archivo .pdf, .xls, etc.
  • Jaspersoft es la comunidad creadora de todo este cuento.

Mensaje de error enviado por el servidor sobre la excepción
 lanzada de ireport  cuando se trabaja con groovy.

[#|2013-05-14T15:53:21.684-0500|WARNING|glassfish3.1.2|javax.enterprise.resource
.webcontainer.jsf.lifecycle|_ThreadID=99;_ThreadName=Thread-2;|#{
controllerReporte.generarImpresion('reporte_comercial_pedidos.jasper',
comercialPedidoController.selected.idComercialPedido,'OF')}: 
net.sf.jasperreports.engine.JRRuntimeException: 
net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression : 
Source text : new java.lang.Integer(1)
javax.faces.FacesException: 
#{controllerReporte.generarImpresion('reporte_comercial_pedidos.jasper',
comercialPedidoController.selected.idComercialPedido,'OF')}: 
net.sf.jasperreports.engine.JRRuntimeException: 
net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression : 
Source text : new java.lang.Integer(1) at 
com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.
java:118)
at javax.faces.component.UICommand.broadcast(UICommand.java:315)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:935)
at 
com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.
java:78)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
at 
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1550)

Para dar solución se configura el ireport para que su compilador sea java mas no groovy. igualmente a cada reporte se le configura su lenguaje como java no groovy.

Configuración de propiedades en el reporte.

viernes, 29 de marzo de 2013

PHP y Mysql con XAMPP en SUSE 12.3

Cuando requerimos de usar apache y mysql en windows instalamos appserver o xampp, en linux suse existe algo llamado lampp, sus creadores han cambiado el nombre al autentico xampp para no generar mas diferencias entre los usuarios, en su esencia son lo mismo.

  • Instalación. 
  • Directorio de Instalación.
    •  /opt/lampp/
  • Arranque y parada. 
     
    • Es necesario ingresar como root por consola y ejecutar el siguiente comando para arrancar los servicios /opt/lampp/lampp start y para detener, use /opt/lampp/lampp stop
  • Comunidad colaboradora Apache friends. 
     
    • En apache friends encontramos todo lo necesario para iniciar con xampp en linux
  • Ajuste de Seguridad. 
      
    • Es necesario configurar la seguridad del usuario lampp para poder ingresar a los servicios como phpmyadmin, etc.  Esta configuración la explica muy bien miembros de la comunidad apache friends.  

Configurando Suse 12.3 para Desarrollo de Software

Este pequeño tutorial presenta una serie de pasos básicos para configurar un linux suse en su versión 12.3 y empezar a desarrollar aplicaciones web con netbeans 7.3, glassfish y postgres.
  • Después de instalar suse 12.3, ejecutar Actualización del Sistema. 
     
  • Configurar Internet. 


     
  • Instalar filezilla para accesos por ftp 
     
    • Descargar rpm 64 bit
    • Click derecho sobre el rpm - abrir con - añadir/quitar programas
  • Instalar navegador Google Chrome 
     
    • zypper ar http://dl.google.com/linux/chrome/rpm/stable/x86_64 Google-Chrome (para 64 bit)
    • zypper ref
    • zypper in google-chrome-stable
  •  Instalar postgres 


        
    • instalar unixODBC desde el gestor de software
    • Descargar la ultima versión de postgres desde aqui
    • ingrese a gestor de archivos modo super usuario
    • Click derecho sobre el archivo .run - propiedades - pestaña permisos - es ejecutable - aceptar
    • Espere un poco mientras abre el Instalador en modo gráfico.
    • Directorio de instalación /opt/PostgreSQL/9.2/
    • mediante stack builder instalar pgJDBC y psqlODBC
  • Instalar java SE 

     
    • descargar java jdk y java jre, ultima versión desde aqui
    • tener en cuenta descargar las versiones adecuadas.
    • Click derecho sobre el rpm - abrir con - añadir/quitar programas
    • tener en cuenta el siquiente post 
  • Instalar NetBeans 7.x 
     
    • Descargar ultima versión desde aqui
    • Click derecho sobre el archivo.sh - propiedades - pestaña permisos - es ejecutable - aceptar.
    • Ejecutar netbeans, activar plugins y actualizar.
  • Instalar XAMPP.  
     
    • descargar ultima versión desde aqui  
    • ingrese en una terminal en modo super usuario y descomprima usando tar xvfz xampp-linux-1.8.1.tar.gz -C /opt
    • Para arrancar simplemente use /opt/lampp/lampp start
    •   ...
Esto es todo hasta el momento, luego actualizare con otras cositas acerca de glassfish 3.x y netbeans 7.3

jueves, 28 de marzo de 2013

Primefaces y su evolución.!

En noviembre del 2011 conocí primefaces, y empecé de lleno en producción con él, un framework que va de maravilla con las aplicaciones web realizadas en JSF (java server faces), es muy fácil de implementar y sobre todo muy hermoso y con una documentación excelente, tiene infinidad de componentes visuales que se integran con controladores java, esto hace que la programación orientada a la web sea muy eficiente, sobre todo que su mantenimiento sea muy fácil y agradable para cualquier desarrollador de nuevas tecnologías.

Pero como todo lo bueno tiene su evolución, primefaces no es la excepción, cuando inicie, fue con la versión 3.0, ahora vamos en la 3.5, claro que aun estoy en la 3.4 debido a que los cambios en la 3.5 son muy críticos y se necesita mucho tiempo para realizar ajustes en los códigos.

Estas son algunas de las adaptaciones que se deben realizar para migrar a la versión 3.4
  • Diferenciar entre valores de la propiedad id y valores de propiedad widgetVar, deben ser diferentes.
  • Los selects con filtros deben tener altura (height)
  • Los selects normales deben tener  style="min-width: 120px;", es decir un ancho mínimo.
  • ... entre otros que iré colocando poco a poco a medida que me valla acordando.
Todavía no hay mucha eficiencia en los filtros de tablas cuando se trata de grandes cantidades de datos, pero con un poco de astucia indígena se pueden realizar filtros personalizados para búsquedas óptimas. 

El framework es libre pero con un poco de dinero se puede obtener una versión pro (licenciada) donde el soporte es su mayor fortaleza.

Muchas técnicas se van aprendiendo con el uso diario del framework, la idea es optar por uno y aprender a usarlo bien, con eso podemos brindar a nuestras empresas una herramienta segura para implementar aplicaciones java web empresariales o bien llamadas J2EE.

Para los iniciados en primefaces les recomiendo suscribirse al foro, la comunidad de primefaces es grande y hay moderadores del foro con prime que son unos excelentes colaboradores.


sábado, 1 de septiembre de 2012

Desplegar un EAR en glassfish

Glassfish en un potente servidor de aplicaciones j2ee, trae una excelente interfaz gráfica para la administración de recursos en el servidor., desde este panel  se pueden realizar la mayor cantidad de tareas asignadas a un administrador de servidor y llevar el control del rendimiento de las aplicaciones.

Netbeans es una herramienta muy practica para desarrollar aplicaciones empresariales j2ee. Este IDE nos permite realizar después de una ejecución el despliegue automático del EAR en un domain virtual de una manera muy fácil. Cuando queremos construir o reconstruir un EAR debemos simplemente accionar el modo debug para que el IDE fabrique nuevamente un EAR con los cambios mas recientes.
Para ingresar al modo de consola de glassfish, arranque el servidor por consola o desde Netbeans y use http://localhost:4848 para acceder al panel gráfico, si quiere permitir acceso a este panel de admin desde otro nodo en la red, active el dass para que puedan acceder de forma segura a través de https.



Para desplegar un EAR primero hay que saber bien que es?, que contiene? y que recursos necesita configurarle al servidor para que identifique los recursos de conexion a Motores de BD y de persistencia.



Como ya sabemos un EAR es un paquete donde se encuentran compresos todos los módulos que comprenden una aplicación j2ee, en su interior existe una carpeta llamada lib, la cual es la contenedora de todas las librerías que se usen en los diferentes módulos incluyendo los drivers de conexión para java y X motor de base de datos.

  • Despliegue de un EAR


    • Configuración del pool de conexión.
    • Configuración del JDBC
    • Despliegue del EAR
      • Desde un archivo local a servidor local
      • desde un archivo local en el servidor al glassfish en el servidor
      • Re despliegue del EAR
      • Respaldo a archivos físicos construidos previamente después del despliegue anterior.


martes, 23 de noviembre de 2010

Modelado de Software mediante UML2

Aplicación WEB para el Control en Línea de Reservas de Salas del Departamento de TICS en la I.E. Los Pinos.

Este proyecto es desarrollado como trabajo final en la asignatura de Ingenieria de Software II  bajo la supervicion del Ingeniero Edwardo Millan a quien agradezco profundamente por las enseñanzas brindadas en clase.


Propósito del sistema

Sistema de información en línea (Aplicación Web), que permite llevar a cabo el control general para un departamento de TIC (Tecnologías de la información y la comunicación), en la Institución Educativa Los Pinos de la Ciudad de Florencia.

Sistema propuesto

Se Propone el desarrollo de un sistema de control orientado a la web para el control de un Departamento de Tecnologías de la Información y la Comunicación permitiendo realizar gestión de recursos, usuarios y control de salas de sistemas. Como el proyecto abarca gran tiempo en el desarrollo de sus módulos se desarrollara para esta primera versión solo el modulo de reserva de salas en línea.

Requerimientos funcionales 
    • ·         Consultar Horario de Disponibilidad de las Salas. 
    • ·         Ver historiales de reservas y ver reserva actual en servicio. 
    • ·         Realizar reservas en línea. 
    • ·         Un administrador de salas debe aprobar o rechazar la solicitud de una reserva y enviar por correo electrónico un mensaje de aprobación o rechazo al solicitante. 
    • ·         Ingresar novedades por parte del administrador o ingresar recomendaciones de parte del usuario servido, si existen, al terminar cada uso de sala (reserva). 
    • ·         Gestionar Inventarios de salas de sistemas (Hardware y Software) y actualizar inventarios a medida que vallan surgiendo novedades durante el préstamo de las salas. (Pendiente por falta de tiempo)
    • ·         Gestionar usuarios del Sistema (Listar, editar, eliminar, agregar, actualizar). 
    • ·         Entregar y Recibir salas por parte del administrador de las salas y el usuario que usa el servicio de reserva. 
    • ·         El Administrador deberá Generar Reportes en .PDF de forma mensual para cada sala.

    Requerimientos no funcionales 

      • ·         El software debe estar desarrollado (construido) en una herramienta libre (NetBeans 6.8) y con almacenamiento de datos en un motor libre (mysql). 
      • ·         Desarrollo en lenguaje Java (JSP) en combinación con tecnología ajax usando el Framework Ext.js de Sencha. 
      • ·         Debe estar Desarrollado aplicando una arquitectura J2EE
      • ·         Uso de la metodología de desarrollo de software RUP 
      • ·         Uso de la herramienta Visual Paradigm para modelamiento UML.

        martes, 19 de enero de 2010

        Mostrar y Ocultar elementos HTML en una JSP con JQuery

        Ahora y Desde hace mucho, Mediante la libreria jquery podemos realizar efectos especiales en los componentes html (input,select,checkbox,etc) de nuestras jsp, este es un ejemplo basico para ocultar y mostrar un campo de texto al seleccionar una casilla de verificacion.

        <html>
        <head>
        <title>Mostrar Ocultar</title>
        <script src="jquery-1.3.2.min.js" type="text/javascript"></script> 
        <script> 
             $(document).ready(function(){
             $("#mayoria_edad").click(function(evento){
                if ($("#mayoria_edad").attr("checked")){
               $("#formulariomayores").css("display", "block");
               }else{
               $("#formulariomayores").css("display", "none");
             }
        });
        });
        </script>
        </head>
        
        <body>
        
        <form>
        Nombre: <input type="text" name="nombre">
        <br>
        <input type="checkbox" name="mayor_edad" value="1" id="mayoria_edad"> Soy mayor de Edad
        <br>
        <div id="formulariomayores" style="display: none;">
        Solo mayores de Edad: <input type="text" name="mayores_edad">
        </div>
        </form>
        </body>
        </html>
        
        Informacion de Ayuda.

        martes, 1 de diciembre de 2009

        Aplicaciones JSP (Java Orientado a la Web)

        Bien, en esta publicacion hablare un poco sobre el desarrollo de aplicaciones web alojadas bajo servidores java (resin, tomcat), explicare como configurar los archivos para el resin y como enlazar la base de datos. Como se que muchos lo estaban esperando, lo he organizado de la mejor manera para que sea lo mas entendible posible. No apto para cardiacos.

        Nuestros Requerimientos.
        1. Sitio Web para la Gestion de Imagenes Fotograficas (Galeria Fotografica).
        2. Arquitectura J2EE.
        3. Patron de diseño MVC.
        4. Metodologia XP (Programacion Extrema).
        5. Modelado de Datos.
        6. Modelado UML.
        Nuestras Herramientas.
        1. Motor de Base de datos Access.
        2. Servidor de Aplicaciones Resin (Caucho Tecnology)
        3. IDE Netbeans
        4. IDE Dreamweaver
        5. IDE TopStyle
        6. Acces de Microsoft Oficce
        7. Configurar Conexion ODBC
        Nota.
        1.  Si desea conectarse a POSTGRES o MYSQL Pegar el driver de postgresql-8.4-701.jdbc3.jar y el de mysql en el directorio c:archivos de programa/java/jdk6/jre/lib/ext.
        2. Crear la odbc con windows desde herramientas administrativas con el nombre ConectToAcces
          y seleccionando la bd acces de nombre contacto, porque asi esta referenciado en el bean conexion de nuestro proyecto web.
        3. Si se conecta con postgres arrancar Postgrest para que cuando se use la opcion de conectar con postgrest este este activado.
        4. Copiar y pegar el contenido sql del archivo sqlcontactoPostgrestoMysql.sql, anexo en esta carpeta.
        5. Si se conecta con postgres arranque el servicio de postgres desde herramientas administrativas, servicios. (No olvidar) para que no presente problemas de conexion.

        Mediante un ejemplo para descargar, se muestra este pequeño proyecto web realizado a bajo costo, pero en el que al principio tuve que invertir mucho tiempo en lecturas y practicas para entender la verdadera usabilidad de este tipo de aplicaciones.

        sábado, 2 de mayo de 2009

        RESIN - Servidor de Aplicaciones Web



        Servidor de Aplicaciones WEB Resin (Caucho).
        Sistemas Operativos Linux - Windows

        Resin es el nuevo servidor de aplicaciones web que me permite ejecutar y ver cambios en tiempos muy cortos, este servidor se ejecuta desde su directorio raíz, no necesita ningún componente instalado en el sistema , es autónomo, eso si obviamente, las jdk, controladores de bases de datos y otros recursos necesarios como la maquina virtual java. Sí necesitamos en determinado momento llevar nuestro servidor con las características configuradas por nosotros, lo podemos hacer muy fácilmente en una usb, un cd y luego montarlo en cualquier destino y sobre cualquier S.O.

        Cuando trabajamos sobre un servidor de aplicaciones Tomcat, se suben los archivos a su carpeta base donde se encuentra la aplicación web y se debe esperar que el servidor ,en determinado tiempo programado, o con ejecución manual para realizar el proceso de compilación encuentre los archivos, vea cuales son lo que contiene cambios de fechas y tamaño y realiza la lectura nueva de los archivos. Esta demora perjudica el avance del desarrollo de aplicaciones web. En algunos casos es necesario ver el funcionamiento de los cambios en linea para no obviar detalles de algunas fallas o evitar excepciones y se hace muy engorroso tener que esperar para poder ver los cambios realizados en la aplicación, con Resin esta utilidad es puesta en marcha y satisface la necesidad, Resin realiza un nueva lectura de los archivos cada vez que nota cambios en los archivos base, es decir cada vez que un archivo nuevo es subido al servidor de aplicaciones este inmediatamente atiende el cambio y realiza la ejecución de estos archivos, trayendo al instante la vista de los nuevos cambios realizados, como servidor de prueba para desarrollos web, Resin presenta gran beneficio al tiempo de ver Cambios.

        Características del Servidor RESIN
        • Compilación y recompilación automática
        • Se puede utilizar como un servidor completamente autónomo, independiente, obteniendo un mejor rendimiento.
        • El trafico de datos para el email es el adecuado.
        • Resin permite especificar el autenticador para su aplicación web
          en web.xml.
        • Una de sus versiones permite tener soporte personal como apoyo al servicio. La cuenta de licencia de pago es a un costo muy económica.
        • Su estructura interna de directorios y archivos es ordenada.

        CONTEXTO
        Resin es una aplicación servidor web de alto rendimiento y de código abierto desarrollado por la compañía caucho tecnología, esta escrito en lenguaje java, sus extensiones de archivos son .jsp, esto lo hace ser mas accesible a modificaciones por parte de desarrolladores JAVA.
        Una de las necesidades básicas en el desarrollo de aplicaciones web es poder llevar a cabo actualizaciones criticas en linea de la manera mas rápida y eficiente. En los servidores Resin esta tecnología es puesta en marcha.
        1. Donde Encontrar RESIN
        Resin se puede descargar directamente desde su sitio web www.caucho.com allí se encuentra mucha información sobre el proyecto y las versiones que existen actualmente. Al Igual existe documentación sobre como gestionar un buen servicio con RESIN, existen versiones de paga a muy bajo costo que beneficia a empresas inclinadas al desarrollo de aplicaciones web.
        1. Como Instalarlo.
        Resin se instala en cualquier sistema operativo, es cuestión de descargar la versión que se ajuste al S.O. de la maquina en la web oficial del resin http://www.caucho.com
            1. En Linux.
        - Para instalar RESIN en Linux basta con llevar el directorio completo del resin y pegarlo en alguna parte del sistema.
        cp /Escritorio/resin/ /usr/local/share/resin/ -R -v
        - Luego se ejecuta, es decir se arranca el demonio con el siguiente comando.
        sudo java -jar resin/lib/resin.jar
        Este comando invoca un .jar principal que contiene los archivos de arranque del servidor y ya esta.
            1. En Windows.
        - La versión para windows de Resin es un poco mas fácil de instalar, de igual manera que en Linux, se debe ubicar la carpeta del Resin en un lugar seguro del sistema.
        - En la carpeta raiz se encuentra un archivo ejecutable llamado httpd.exe, se ejecuta y listo ya esta el servidor instalado y en servicio.
        !Que fácil.

        lunes, 2 de marzo de 2009

        NetBeans y Dreamweaver. (controladores, vistas)

        Cuando construimos un elemento digital, (clase, HTML, jsp, jsf, beans, servlet) siempre va a ser necesario la visión de los archivos en el contenedor mostrador que nos dará el desarrollo de las vistas o de las etiquetas visuales y el entorno de desarrollo que nos dará la relación de la lógica del negocio con las bases de datos (controladores).

        NetBeans 6.7 como IDE es una herramienta muy poderosa sobre todo en las relaciones entre elementos digitales, como por ejemplo, me puedo ir enlazando desde clase en clase o desde jsp a clase, o de jsp a jsp, o de servlet a servlet con un solo control + click, hasta obtener una visión general en el lugar exacto al que quiero dirigirme, características como estas son motivantes para nuestro IDE elegido el Netbeans en su ultima versión 6.7 en ingles.

        netbeans





        Dreamweaver CS3 de la adobe system es nuestro IDE empleado para dar creación, soporte y mantenimiento a nuestros elementos vistas soportados por las aplicaciones web.

        dreamweaver_babe_by_xeracx

        Como vemos dos grandes IDE`s, ahora, fusionemos estos dos Entornos y formaran una herramienta muy compleja, poderosa y fácil de administrar.

        Mas sobre Dreamweaver CS4