Java CAPS

Hoy nos han hecho los de Sun España una presentación técnica de su producto para SOA llamado Java CAPS, antes conocido como SeeBeyond.

Se trata de una suite de productos que, todos juntos, te permiten implantar SOA en tu empresa. Está fuertemente basado en la existencia de un repositorio central donde se guardan las definiciones de todos los objetos: desde un proceso BPEL hasta una fuente de datos relacional (usando un conector JDBC proporcionado por CAPS). Para todo esto proporciona un motor más un ESB sobre el que se basa todo y un IDE con el que manejar la complejidad. En cualquier caso, no resuelve ni el desarrollo de las aplicaciones (web o swing) ni el paso del modelo a la implementación. Tampoco tienen resuelta asuntos más íntimamente relacionados con la calidad del desarrollo: pruebas unitarias de los WebServices ni de los procesos (y por supuesto nada de code coverage). Y finalmente, tampoco da una solución para acceder a un modelo de datos corporativo (como el AquaLogic) ni nos han hablado tampoco de SCA (Service Component Architecture).

Pero después de todo tengo una sensación un tanto ambigüa: por un lado me parece una buena solución para implantar SOA tomando como base un ESB, un IDE y el resto del motor BPM+workflow, pero por otro lado tengo la extraña sensación de que eso mismo me lo puedo hacer si localizo la colección adecuada de productos “open source” y de plug-ins Eclipse. Además, no sé si es mejor que el AquaLogic de BEA o la suite equivalente de WebSphere (IBM).

Lo cierto es que suelo tener una patente aversión a todo lo que sale de las factorías de Sun: reconozco que es un prejuicio (aunque no carente de un fondo de racionalidad). Actualmente estoy sufriendo en primera persona la combinación maléfica Glassfish + NetBeans y tengo siempre una vocecilla detrás de mi oreja que me dice: “WebSphere + Eclipseeee…”. Vale, reconozco también que me tira bastante IBM, qué le voy a hacer… pero mi experiencia hasta el momento me confirma el prejuicio… Simplemente unas notas:

  • Comparad la gestión de defectos y el proceso de integración de Eclipse y el de NetBeans o Glassfish.
    • La información disponible sobre el resultado de un build de Eclipse te dice incluso cómo han ido los tests.
    • La gestión de los bugs de Eclipse es más robusta.
  • Han conseguido una comunidad muy activa.
  • Eclipse es un producto mucho más productivo que NetBeans:
    • Es más fácil refactorizar
    • Es más fácil probar tu código
    • Es más fácil compartir proyectos
    • Es más fácil mantener el control de tu configuración (infinitamente más)

pero claro, para gustos hay colores… 🙂

Pero dejando aparte mis prejuicios, me gustaría saber si alguien está teniendo experiencia real con Java CAPS: no me agradaría nada encontrarme “pillado” haciendo las cosas “a la Sun” simplemente porque nos hemos comprometido con este producto.

Y si no estáis usando Java CAPS, ¿qué estáis usando para implantar vuestra SOA? Si hay muchos votos, haré un resumen. 🙂

  • Jose Manuel Beas

    Sólo un comentario más sobre Eclipse y la calidad de su proceso de desarrollo e integración. Visitad, por favor, el plan de despliegue de la versión 3.3 (apenas faltan unas semanas para tener la versión coordinada “Europa”).

  • Enrique

    No conozco Java CAPS pero si bastante las herramientas de BEA e IBM.

    1) Respecto a Bea, su linea de productos Aqualogic está bastante bien, destaca su ESB y su producto de integración de datos DSP. Respecto a BPM disponen de Aqualogic BPM, el cual proviene de la herramienta comprada Fuego, lo cual se nota por la falta de integración con el resto en algunas cosas (estabán trabajando bastante en ello). Por otro lado ofrecen, Weblogic Integration, el cual en versiones anteriores a la 9 tienen un IDE bastante infierno. En la 9, ya ofrecen solución con Eclipse, pero todavía tienen que andar bastante en este punto.

    2) Respecto al producto de IBM, tiene sus cosas buenas y malas. A veces, se nota mucho que todo es “Made in IBM” y eso provoca cosas como que el producto que tienen de Repositorio de Servicios (“Registry and Repository”) utilice su registro de servicios propietario y no el UDDI como estándar (cosa que si hacen el resto de productos de la competencia). Por otro lado, ofrecen cosas como un motor de reglas de negocio como parte de la herramienta de BPM (WID+Process Server) que no ocurre así en el caso del producto de BEA (lo ofrecen, pero como otro producto más en la lista).

    Ya ves, como siempre, en todos los lados encontrarás cosas buenas y malas. A veces, las presentaciones comerciales no son más que eso: lista de bondades y cosas buenas de las herramientas; de las cuales solo te das cuenta de las cosas malas que tienen cuando te metes de lleno a utilizarlas…

    Buena suerte en la elección adecuada…

  • Jose Manuel Beas

    Gracias por tu comentario, Enrique.

    Además, estoy totalmente de acuerdo contigo en cuanto a la diferencia entre la “realidad comercial” y la “realidad real”.

    De todos modos, a medida que vaya obteniendo más detalles sobre Java CAPS, los iré anotando en el blog.

  • Andrés

    Hola Jose Manuel,

    aclarar que JCAPS sí tiene un entorno de desarrollo web basado en netbeans, eVision.
    Se trata de un entorno ligado al diseñador de procesos y orientado a la creación de aplicaciones compuestas, incluyendo work-flow humano. Permite desplegar en distintos entornos, incluido como portlet en Sun Portal.
    Tienen previsto incluirlo en una distribución estándar de netbeans en un futuro.

    En relación al tema IBM, yo he sufrido una buena serie de releases verdes, verdes, como lo fue en su momento RAD6.
    Pide ha IBM que te hagan un mapa de sistemas de lo que se requiere para montar un sistema parecido a JCAPS (nosotros lo hemos hecho), y alucinarás de la cantidad de productos necesarios, la relativamente baja integración, y el precio de las licencias.
    Como podeis notar, IBM me tiene un poco quemado. ;D.

    Un Saludo!

  • Jose Manuel Beas

    Muchas gracias por tu aportación, Andrés. ¡Contaba contigo! 🙂

    En cuanto a lo que dices de eVision, cierto, los de Sun nos lo enseñaron por encima, pero no me convenció que lo que genere no sea ningún estándar web (ni Struts, ni JSF…).

    Nosotros hemos apostado por JSF (cliente ligero) y Swing (cliente pesado) y la capa de presentación la tendremos que hacer con nuestro propio framework y nuestras propias herramientas. No es un gran asunto el que JCAPS no nos obligue a tomar decisiones en cuanto a la capa de presentación (más bien al contrario), pero me preocupa cuánto esfuerzo es necesario realizar para hablar desde una aplicación desacoplada con un webservice.

    Esto último no es un problema particular de JCAPS o cualquier otra suite, pero ayudaría que proporcionaran un framework o algún “glue code” que hiciera la vida más fácil. Porque tener que implementar el ServiceLocator y todo eso… da palo… 🙂

    Un saludo,
    JMB

  • Ricardo

    Hola:

    Necesito me orienten/ ayuden para conectarme a la base de datos DB2 de una AS/400 (OS/400 4.4.0) a través de JCAPS 513.

    Aguardo sus comentarios. Gracias!

    Saludos.

    Ricardo

  • Jose Manuel Beas

    Lo siento, Ricardo, nosotros actualmente no estamos usando JavaCAPS. Lo estuvimos evaluando un tiempo pero, de momento, lo hemos desestimado.

    No sé si alguien más podrá darte alguna pista al respecto, de todos modos, y sin tener mucha idea, yo te diría que deberías buscar ayuda en algún foro de IBM puesto que JavaCAPS debería permitirte conectarte a una BD cualquiera mediante JDBC. En el caso de que sí tengas resuelto el conectarte vía JDBC, quizás el problema sea encontrar (en un foro de CAPS) dónde debe instalarse el driver y configurar la datasource correspondiente… ¿no?

    Repito, es una idea que lanzo desde el desconocimiento…

    Suerte.

  • Ricardo

    José Manuel:

    Porqué lo han desestimado al JCAPS?

    Qué contras observaron ó qué pros ustedes encontraron en el producto que van a utilizar (cuál?)?

    Gracias.

  • Jose Manuel Beas

    Hola,

    Básicamente encontramos que CAPS está aún un poco inmaduro (en comparación con BEA Aqualogic, p.ej.). Actualmente estamos valorando la posibilidad de un contenedor ligero (basado en OSGi, Spring y SCA).

    Un saludo,
    JMB

  • Ricardo

    José Manuel:

    Nuestra intensión es integrar sistemas cuyas bases de datos son BD2 (sistema AS/400) y PostgreSQL (sistema desarrollado en Java y Delphi).

    También estuvimos con la gente de SUN, y nos presentaron al JCAPS.

    Qué harías ante esta situación?

    Saludos.

    Ricardo

  • Jose Manuel Beas

    Bueno, Ricardo, me temo que:
    a) la descripción de vuestro problema no es lo suficiente explícita como para siquiera poder decidir si necesitáis realmente una plataforma de integración como Java CAPS
    b) si me permites, yo os aconsejaría que contratárais una consultoría especializada e independiente para que os aconsejara con todos los datos sobre la mesa

    Lo primero que yo trataría de decidir es si realmente necesitas cambiar tu arquitectura a una arquitectura basada en servicios. Además, siempre podéis ir pasando a una SOA “poco a poco”. Nosotros nos hemos dado cuenta de que adoptar SOA no es algo tan simple como comprar un producto, un par de libros y formar a un equipo de desarrollo: afecta a todo el proceso de producción, empezando por el análisis, porque debes orientarte a servicios… Si tu problema ahora mismo se centra en integrar dos sistemas, no necesitas Java CAPS ni Aqualogic ni nada por el estilo, con una solución mucho más “artesanal” ya te valdría. Más adelante, una vez os hayáis dado los primeros “golpes”, entonces podríais comprar una suite como estas.

    Es sólo una idea… pero insisto en que creo que lo mejor sería apoyaros en una consultora tecnológica (lo más independiente posible, o de lo contrario os “colarán” la herramienta que ellos usen).

  • Cardozo

    Hola a todos, la empresa donde trabajo compro el JAVACAPS y despues de usarlo varios meses llego a la conclusion de que:
    1.- No hay suficiente documentacion para aprender a usarlo.
    2.- Es demasiado pesado, prefiero seguir usando soluciones “mas artesanales”.
    3.- Tiene muchos bugs, sobretodo al momento de replicar campos tipo fecha.

    Con el tiempo puede ser una gran opcion pero por ahora no lo recomiendo ni tantito, su precio no lo vale.

    Saludos.

  • Jose Manuel Beas

    Muchas gracias,

    ¿Qué vais a hacer entonces? ¿Cuáles eran vuestros requerimientos que os llevaron a decidiros por JavaCAPS? ¿Qué solución os da Sun?

    Un saludo (y suerte),
    JMB

  • Alexis Daniel

    Hola, mas que un comentario es una consulta:

    Quisiera saber si sabrias como utilizar JCAPS con un versionador tal como TortoiseSVN?

    Muchisimas Gracias!

  • Jose Manuel Beas

    Lo siento Alexis, pero me temo que no tengo respuesta a tu pregunta. De todos modos, supongo que, dado que el IDE de CAPS está basado en NetBeans 4.x, siempre puedes intentar usar un cliente cualquiera de SVN desde fuera del IDE, pero no sé…

    Suerte,
    JMB

  • Wizard

    Hola ya ha pasado tiempo desde el último comentario, yo llevo tiempo trabajando con JCAPS version 5.2 y 5.3
    El desastroza la herramienta, yo hago integraciones, para procesos de negocio con MQ, y Web Service. Los deploys los procesos de negocio son muy tardados pues son despeglados en el integration server de seebyond que es muy limitado, asimismo agregarle un servidor de palicaciones diferente es muy dificil y falla mucho, el soporte es de muy mala calidad, la aplicación al generar los builds y los deploys generan errores raros y de dificil entendimiento, entre la gente, agregamos que el IDE de desarrollo llamado eDesigner es malo no no ayuada en nada.
    Conclusión la herramienta por su concepto es buena, pero ya en uso de lo más horroroso que se pueda tener, ya cuando por fin has logrado generar los procesos de negocio, se presenta muy estable

  • Luis Miguel

    Efectivamente es terrible JCAPS, al menos en la version 5.3, y mas cuando tienes muchisimas transacciones , es demasiado lento, y el proceso de desarrollo es peor que cuando no existian IDES tan buenos como Eclipse, errores sin sentido, soluciones tontas como “borrar temporales y reconstruir”, “cierra el edesigner y vuelve a desplegar” que lo mas extraño es que si funcionan, en fin, para procesos de negocio extremadamente grandes y pesados definitivamente no lo recomiendo.

    Saludos

  • Cristo Manuel

    Buenas a todos. Este año voy a realizar el proyecto fin de carrera con JCAPS y me gustaria disponer de vuestra ayuda para las dudas que puedan surgir y buscar webs donde podria encontrar informacion para empezar a trabajar con el.

    Estaremos en contacto.

    Un saludo. Muchas gracias

  • Anonymous

    Hola al igual que el ultimo voy a hacer el proyecto fin de carrera con jcaps.

  • Claudio

    Hola Amigos,
    Estoy haciendo algunos proyectos en JCAPS. Estoy experimentando con la herramienta.
    Necesito información resumida en español, que describa las principales funciones de la herramienta.
    ¿alguien tiene algo que pueda faciilitarme?
    Gracias.
    Mi email es claudiobiasatti@hotmail.com