J2EE, el rico pero extraordinariamente complejo juego de tecnologías de servidor Java, está probando ser complicado. Como resultado, los desarrolladores buscan soluciones Java alternativas para sus necesidades empresariales. Sin embargo, recientemente, algunas nuevas tecnologías –informalmente referidas como J2EZ– han aparecido, demostrando que los proveedores han entendido el mensaje. Una de las primeras herramientas en proporcionar desarrollo empresarial más sencillo es JSC (Java Studio Creator) de Sun, que a pesar de que está enfocado en la parte que ve el cliente (client-facing), brinda notables beneficios en productividad. Rational Developer de IBM y NitroX de M7 ofrecen una funcionalidad similar, pero los productos de Sun tienen características distintivas importantes. Una mirada atrás Las partes client-facing de las aplicaciones empresariales Java fueron de HTML a JSP y de Servlets a Struts, y más recientemente a JSF (Java Server Faces) – un estándar aprobado el año pasado por el JCP (Java Community Process: Comunidad de Procedimientos Java). En teoría, JSF proporciona una manera más sencilla de crear interfaces Web para las aplicaciones Java. Ha sido adoptado por IBM, Oracle, Sun y otros proveedores Java. El uso del JSF de Sun es particularmente evidente en JSC, una herramienta que ayuda a los desarrolladores a ligar grandes interfaces Web a EJBs y bases de datos. Examiné la séptima actualización a la versión 2004Q2 de JSC. Esta versión tiene una clara sensación RAD (Rapid Application Development; Desarrollo Rápido de Aplicaciones). Para empezar, JSC pone en un ambiente de desarrollo que atiende al diseño interactivo de interfaces de usuario. Una ventana central soporta la colocación de los componentes arrastrar y soltar. Una ventana separada (en la derecha) permite al desarrollador modificar fácilmente las propiedades de un componente. Un panel de servidor presenta varias conexiones de bases de datos disponibles. Haciendo clic en una, abre un metadata para revelar los campos de la base de datos que puede conectar a los componentes de la interfaz, otra vez arrastrando y soltando. En el fondo, estas acciones están generando un código. Un sólo clic del ratón y el código generado es compilado y ejecutado en el servidor de aplicación Java incluido. Esto produce un verdadero ciclo repetitivo de creación de prototipos. Un paso adelante Esta funcionalidad es una base que varios programas tienen. JSC va más allá agregando servicios Web consumibles y EJBs a la barra de componentes. Este paso es importante, ya que permite la fácil creación de verdaderas aplicaciones empresariales que usan valores existentes en su sitio. JSC lee y desglosa archivos WSDL y genera el código Java necesario para entrar a las llamadas de procedimiento basadas en SOAP. También tiene características ingeniosas como funcionalidad de correo electrónico. Para las aplicaciones que requieren JSPs múltiples y enlazados, JSC presenta una vista donde las páginas individuales están conectadas gráficamente y fluyen como sea necesario. Notablemente, toda esta capacidad es fácil de usar. Sun ha hecho un gran trabajo volviendo a JSC intuitivo y productivo. A pesar de esta simplicidad, Sun proporciona buenos tutoriales fáciles de seguir en su sitio Web. El código generado incluye todo lo que se necesita en el desarrollo: Java, JSPs, HTML, XML, y SQL. JSC construye y prueba los archivos y luego empaca los archivos en un EAR (Enterprise Application Archive) o WAR (Web Application Archive). Hay soporte para las versiones 1.3 y 1.4 de J2EE, y las aplicaciones se ejecutarán sin cambio en la mayoría de los servidores J2EE certificados. Los desarrolladores pueden modificar el código generado. Una nueva versión, la pre-versión de la que será liberada en el JavaOne Conference este verano, agrega soporte re-factorización, integración con los sistemas de control de versión, y un editor de hoja de estilo. JSC incluye una copia de NetBeans para todo este trabajo a nivel de código. Los cambios de código hechos a los JSPs están íntimamente reflejados en la interfaz de arrastra y suelta y viceversa. La instalación de JSC incluye una copia de Java System Application Server Platform Edition 8 de Sun y la base de datos integrada PointBase para simplificar la prueba del código generado. Aunque la elegancia del diseño de Sun me impresionó, noté unos cuantos defectos. JSC entra a las bases de datos sólo a través de juegos de filas JDBC. Si usas Hibernate, JSC no puede ver los datos. Además, JSC no soporta Struts; usas JSP ó JSF ó nada. Sun alienta a los nuevos proyectos a usar JSF en lugar de Struts, y sospecho que muchos Struts migrarán eventualmente a JSF. Sin embargo, el soporte de Struts será útil mientras esto sucede. Además, el ciclo de construcción como el despliegue en JSC es ocasionalmente lento, cortando la frecuencia con la que yo podría haber probado los prototipos. Finalmente, el producto clama ser un plug in para Eclipse y NetBeans. Sin embargo, a sólo 99 dólares por año, por desarrollador, es difícil quejarse por alguno de estos inconvenientes. JSC tiene un valor fantástico: es fácil de comprar y usar. Si puede vivir sin Struts, y si la mayoría de sus datos son accesibles por medio de JDBC, entonces encontrará que Java Studio Creator proporciona una herramienta notablemente productiva e intuitiva a un excelente precio.