Custom Headers en Oracle BPEL PM 10.1.3.X

0

Cuando se hacen invocaciones a Web Services a través de partnerlinks en bpel, en ocasiones es necesario enviar lo que se conocen como Headers, a través de la sección HEADER del mensaje SOAP.
En esta ocasión vamos a ver cómo incluir estos headers al invocar un Web Service. El escenario es poder invocar un Web Service protegido por WS-Security, pero (y aquí está lo interesante) utilizando los esquemas del WSSE Token del 2002, es decir:

El header a generar es:
Este mismo mecanismo servirá para mandar cualquier custom header. De esta manera ilustraremos las capacidades de Oracle BPEL PM 10.1.3.x para enviar Custom Headers.

Bien, para resolver el problema de mandar el token de WSSE con los esquemas viejos, es necesario primero descargarlos y ponerlos en la carpeta bpel de tu projecto.

Dichos esquemas se pueden descargar de:


Hay que crear una variable (con el nombre que sea) que sea de tipo Security, que justamente está en el archivo wsse22.xsd. Para eso, en este ejemplo, la voy a crear de manera global. Dando click en el ícono (x) del flujo bpel, así como aparece en la sig imagen:

Saldrá esta otra Ventana, dale click en Create:

Saldrá la siguiente ventana, dale cualquier nombre a tu variable, en este caso wssHeaders. Selecciona Element y da click en el botón como de linterna:

Después te saldrá esta ventana. ¿Por qué salen esos esquemas ahí? Son los que pusimos en el primer paso abajo del folder bpel de tu proyecto. Debes seleccionar ese Elemento de nombre Security y dar click en OK Ahora ya tienes una variable de este tipo, click en Apply y luego OK:Click de nuevo en OK en esta ventana:

Ahora vamos a hacer un Assign, pero copiarás de un XML Fragment a la variable recién creada de tipo Security, así como aparece en la sig imagen, ten cuidado de seleccionar en el target al nombre de la variable (wssHeaders), y no al campo Security.
Lo que debes copiar es justamente el token de seguridad, con el user y pwd que corresponda. Aquí es justo donde estamos poniendo nuestro Custom Header, en este caso:
Ahora hay que crear el partnerlink, como siempre lo has hecho, con su respectivo invoke. Debemos tener un flujo similara al siguiente:
La última parte es decirle que queremos pasarle un header a ese partnerlink.
Para ésto, dale doble click al invoke, y en la pestaña de Adapters, dale click a la linterna:

Te debió abrir la siguiente ventana después de haberle dado click a la linterna. Ahí selecciona la variable que creamos hace un rato de tipo Security y de nombre wssHeaders. Das click en OK, y después en Apply y OK de nuevo:
De esta manera cuando bpel haga el invoke a ese WS a través del Partnerlink, enviará como parte del mensaje, un Header con el contenido que nosotros queramos.
Así puedes hacer uso de los Customer Headers en Oracle BPEL Process Manager 10.1.3.x.


Extension para busqueda en Blogs de JDeveloper

0

Desde hace algun tiempo los blogs son una de mis principales fuentes de información sobre JDeveloper/ADF, principalmente porque la mayoría (al igua que este blog) tiende a ilustrar ejemplos paso-a-paso de como desarrollar algun caso de estudio aprovechando cierta funcionalidad del producto o del framework.

Uno de los proyectos en los que he estado trabajando es el de tener un repositorio centralizado de articulos relacionados con JDeveloper y ADF que son publicados diariamente en distintos blogs. Desde ahora ustedes pueden tener acceso y hacer busquedas sobre este repositorio que contiene ya cerca de 250+ articulos (sin contar los de Steve Muench) a través de la extensión que me ayudo a construir Shay Shmeltzer.

Para trabajar con la extensión pueden ir a Help->Check for Updates y buscar sobre los Open Source and Partner Extension. El nombre de la extensión es Search HowTos and Blogs 1.0 también la pueden bajar de aquí y luego referenciar la ubicación del update en el disco local.

Así mismo desde la página de JDeveloper en OTN pueden acceder a la busqueda de los articulos y si son usuarios de los RSS también pueden tenerlo para estar actualizados con los ultimos blogs. Dentro de los cambios que se hicieron este año, tambien nosotros contamos con el feed de los últimos articulos de la blogosfera en español.



Cuando ya tengan la extensión instalada pueden accederla a través de Help o con el atajo de teclado Alt+F





Al hacer la busqueda los resultados van a aparecer en un nuevo Tab en la ventana de Log.



Si alguien quiere ayudarnos a mejorar la extensión pude bajar el codigo fuente de aqui o en caso de necesitar alguna ayuda me puede dejar su comentario.


Trabajando con Listas de Valores en JDev11g - Parte 1

0

Una de las nuevas características de los Business Components en JDeveloper 11g, es el de permitir que el desarrollador pueda crear  ViewObjects que definan atributos como una lista de valores (LOV).
Esto es de bastante utilidad principalmente para la interface de usuario final a través de la cual se van
a manipular los valores de los atrbutos, por ejemplo datos como ciudades,
estados, paises, titulo de la persona (Sr, Srta, Sra, etc) son campos que dentro de la mayoria de interfaces web se despliegan como una lista de valores.
Cuando un atributo ha sido declarado como una lista de valores, el framework le ahorra el trabajo al desarrollador en cuanto a su presentación y automáticamente hace el mapeo al selectOneChoice o radioSelectOneChoice, etc que se requiera.

En este articulo voy a empezar con las bases para crear la lista de valores, para luego en la segunda parte explicar de que forma se pueden implementar las listas de valores relacionadas bajo el mismo principio. Puede hacer click sobre las imagenes para ampliar 

Lista de Valores

Lo primero es tener tener un ViewObject ya creado el cual contiene el atributo que queremos presentar como lista de valores

En este caso utilizando el esquema HR. Vamos a crear una lista de valores de los distintos departamentos a los que puede pertenecer un empleado. Por lo que este listado esta contenido dentro del VO Departments.

Se selecciona List of values y  en este caso vamos a crear un view accesor haciendo click en el icono con el símbolo mas (+) en verde en la sección List Data Source. El View Accesor es quien va a determinar la fuente de datos de la lista de valores, este view accessor puede ser un query, o un atributo de otro VO.



Dialogo 2

En la siguiente pantalla definimos la fuente de datos que alimenta la lista de valores. Para nuestro ejemplo el ViewObject de los departamentos es el encargado de suministrar los datos. En este caso este View Accesor no necesariamente tiene que estar relacionado; lo cual quiere decir que se podría llegar a tener un VO exclusivo para las listas, el cual va a ser el accesor para los atributos que se quieran definir como LOVs.



EditarUI

Finalmente seleccionamos el valor que va a ser retornado por la lista de valores. En este caso el campo de DepartmentId correspondiente a un empleado va a retornar un valor que este dentro de la columna DepartmentId del view object de departamentos. Sin embargo y para efectos de presentación, este valor que se retorna puede no ser comprensible para el usuario final (como en este caso el codigo), entonces al ir a Edit UI Hints se va a poder reemplazar el valor real por cualquier atributo o conjunto de atributos que tenga el View Accesor.En nuestro caso yo quiero presentar tanto el ID como el Nombre del departamento.

Así mismo en esta parte podemos escuger el tipo de lista que queremos presentar y si queremos elementos como un espacio en blanco al final, al principio, selección obligatoria, etc.


Cuando creemos nuestra página y hagamos un binding del View
Object que contiene el atributo como lista de valores obtenemos


Resultado Final

En la segunda parte vamos a ver como podemos asociar listas de valores en lo que se llama asociación en cascada.


Es mi turno...el juego de la Blogosfera de Oracle

1

Juan Camilo me pasó el Tag y es mi turno para listar 8 cosas de mi persona:

  1. Nací en la Cd. de México. Soy lo que algunas personas confunden como "chilango". Toda mi vida he vivido aquí en el Valle del Anáhuac.
  2. La gente en los aeropuertos suele confundirme con una persona de ascendencia "Oriental". O me hablan en inglés, o literalmente me dicen "es usted de Japón?"
  3. Una vez estando en Sao Paulo - Brasil, al entrar a un lugar de esos que en México denominan como "antros" (lugares para ir a bailar y beber) la persona que repartía las comandas para tomar las órdenes en vez de anotar mi nombre como "Rolando", me puso "Ovulando".
  4. En la primaria al estar realizando una pirámide huamana, la persona que estaba hasta abajo - según deteniendo a los de arriba - decidió quitarse, y yo que estaba hasta arriba, cai de unos 2 metros y medio de altura sobre ambas manos, lo cual causó que se rompieran; en ese entonces jugaba en un equipo de Football Americano, y el coach me puso "el manitas"
  5. En la Preparatoria, una profesora que daba clases de "Biología" al pasar lista al inicio del año escolar, dijo mi nombre "Carrasco, Rolando..."y agregó "Mota del Campo", de ahí una compañera decidió ponerme de sobrenombre "Motitas". A la fecha mis amigos de la Prepa me siguen llamando así.
  6. Mi sobrenombre "Brimful of Asha..." viene de una palabra de origen Indio - Asha- que quiere decir "Fé". El sobrenombre resume muy bien mi forma de ser. Si quieren leer mas sobre mi vida personal pueden visitar este otro blog.
  7. Desde que estudiaba la secundaria me gustaba mucho programar, en la preparatoria le encontré aún mas gusto, y finalmente en la Universidad fué una confirmación que mi futuro estaba en la programación de computadoras.
  8. Actualmente me desempeño como Product Manager (igual que Juan Camilo) de la familia de Productos Oracle Fusion Middleware para la región de Latinoamérica.

Ahora es el turno que La Gran M y su mujer nos cuenten sus 8 cosas.


Mis 8 Cosas....El Juego de la Blogosfera de Oracle

0

Dentro de Oracle existe un grupo que trabaja dentro del Appslab quienes están encargados de la adopción de tecnologías relacionadas con Web2.0. Uno de los integrantes de este grupo incio un juego llamado el Oracle blogsphere tag game. Que básicamente consiste en que una persona da a conocer 8 cosas personales las cuales no se pondrían a través del blog, luego la persona escoge (Tag) o 8 personas más y estas a su vez narran sus 8 cosas y pasan el Tag a otras. Shay Shmeltzer me ha pasado uno de los Tags y ahora el juego pasa al español. Así que aquí van 8 cosas acerca de mi:

  1. Durante mi niñez estuve mi primer año en un colegio de los Padres Agustinos (Colegio Agustinano) y los 12 años restantes estudié en el primer colegio de monjas mixto en Colombia Colegio Presentación Centro (CPC) en donde la proporción era de 1 hombre por cada 5 mujeres..... :)

  2. En mi adolescencia me dedique al Patinaje en Linea Extremo (patinar en la calle, deslizarse en bordes, saltar escaleras, etc.) por lo que tengo algunas marcas de estas épocas en mis codos. Una vez intente hacer un mortal en una U y pasé de largo por lo que me pegué de frente contra la madera......no resultados colaterales hasta el momento pero si unos dientes destemplados por algunos días.

  3. He asistido a 11 de los 13 festivales de Rock Al Parque el festival de Rock gratuito más grande de Latinoamerica.

  4. El primer concierto que fui en mi vida fue Soda Estéreo y Santana en Bogotá.

  5. Practiqué Karate-Do por muchos años en mi niñez y al comenzar la Universidad no practiqué más, sin embargo volví a Dojo desde hace 1 mes.....de lo mejor!!!!!

  6. Pese a que nací, me crié y nunca viví fuera de Bogotá (hasta el año pasado) soy hincha a morir del Junior de Barranquilla donde jugo el Pibe Valderrama en el 2004 estuve en b/quilla para la final entre Junior y Nacional de Medellin....el resultado, Campeones 5ta estrella!!!.

  7. Mi papá tiene 11 hermanos......por lo que tengo muchos tíos y primos regados por todo lados.

  8. Durante los 90´s viajé a Punta Arenas, Chile el puerto más Austral del mundo antes del Polo Sur.

Bueno esos son mis 8 datos.....ahora el turno es para Rolando Carrasco, Felipe Lizcano, Mis Amigos de Fetishcode, tsoracle, Eduardo Rodriguez, JDeloperLA, Alan Colmenares, Angelo Santagata


Año Nuevo....Vida Nueva!!!

1

Un Feliz 2008 para todos. Ojalá este año nos traiga muchas cosas buenas, en lo personal, lo laboral y que ojala nuestra comunidad comunidad continue creciendo y sigamos compartiendo el conocimiento.

Como se había anunciado desde hace algunos posts venimos trabajando la idea de cambiar el nombre de nuestro blog. Una de las cosas claras era que no queriamos abrir un nuevo blog sino mantener el mismo. Por lo tanto a partir de la próxima semana nuestro blog cambia de URL a:

http://oracleradio.blogspot.com

si se dan cuenta ya el nombre del blog cambio y damos esta corta notificación en relación a la URL , esperamos nos sigan visitando y que recibamos muchos comentarios y preguntas en este 2008!!!!

Editado: 01/15
Tambien para esta año vamos a procurar centralizar muchos de los articulos que otras personas están creando en español en relación a tecnología Oracle para poder ofrecer constantemente nuevos contenidos. Estos articulos los pueden encontrar en la sección Ultimos Articulos de la Blogosfera de Oracle en español.


SOA Suite 11g Technical Preview

0

Tal como Juan había comentado en uno de sus posts previos, en http://otn.oracle.com pueden encontrar varios previews de lo que FMW 11g va a ser.
He tenido la oportunidad de probar Jdeveloper 11g, sobre todo en lo que se refiere a componentes de SOA.

Pueden descargarlo de aquí y un primer tutorial lo pueden encontrar en esta ubicacion, ahí mismo viene cómo instalarlo.

La primer parte que me llamó mucho la atención es que ahora con tener JDeveloper y una Base de Datos Oracle, que bien pudiera ser XE, es suficiente para probar tus aplicaciones SOA. No necesitas instalar una capa media de Oracle AS y sobre de eso los productos como BPEL PM, ESB ,etc.
Todo lo puedes correr con el OC4J embedded que viene con el JDEV.

Así los pasos de instalación para tener un ambiente de desarrollo se reducen a:
1. Descargar JDev 11g
2. Instalar Base de Datos Oracle, como sugerencia XE
3. Desempaquetar el zip del JDEV
4. Correr el script de creación de usuario y esquema del repositorio SOA
5. Ir al Menú Tools de JDev, y escoger "Configure SOA..."


Como recomendación, antes de hacer la configuración, declaren la variable de ambiente:
JDEV_USER_DIR=d:\jdev11

donde d:\jdev11 es la ubicación en donde descomprimieron el de Jdev 11g.

Si no hacen ésto, al configurar los servicios de SOA, lo va a querer hacer abajo del directorio "Documents and Settings" y por los espacios les marcará errores.

Otro punto a resaltar es el uso del "Mediator", éste componente que antes lo veíamos como el propio ESB, ha evolucionado a ser el lugar en donde declaras todos tus servicios.
Básicamente se inicia el desarrollo de una aplicación pensando en:
1. Qué voy a exponer como servicio
2. A qué me voy a conectar y cómo (un Adapter, un Web Service por SOAP, WSIF, etc)
3. Cómo los voy a llamar. Aquí son los Servicios de Ruteo, Transformaciones y Flujos BPEL.


En los siguientes posts vamos a platicar mas sobre las nuevas características de la versión 11g de SOA Suite.


Oracle BPEL PM + Oracle Data Integrator

3

En muchos escenarios de integración se requiere pasar altos volúmenes de información de uno o varios repositorios hacia un destino que también puede ser múltiple.

Con herramientas de orquestación de procesos, y con los mismos ESBs puede llegar a ser ésto complicado, sobretodo cuando se tratan de volumenes que se van por arriba de los 10MB de información, y además cuando las transacciones son muy constantes.

Para dicho propósito podemos pensar que una buena opción es utilizar una herramienta de ETL tradicional, el único inconveniente es la dependencia alta sobre el uso de Bases de datos y el uso de servidores intermedios que hagan dicho trabajo.

Oracle ofrece una herramienta de nombre Oracle Data Integrator, que hace una modificación al esquema tradicional de ETL, pues en realidad realiza un ELT (Extract->Load and Transform). La gran diferencia es que la transformación de los datos se puede dar en el mismo destino, lo cual aumenta el peformance y más si pensamos que lo va a hacer de manera nativa con el propio lenguaje que tenga el repositorio destino.

En un ambiente Orientado a Servicios, es altamente probable que la extracción y carga de datos no sea únicamente en Bases de Datos, sino también en Aplicaciones. Esto nos lleva a la necesida de tener un producto que resuelva muy bien la conectivdad a repositorios Relacionales y Multidimensionales tradicionales, pero que también pueda interactuar con Servicios Web y Aplicaciones Empresariales.

Ahora, qué sucede si combinamos la tecnología, pensando en que un Arquitectura Orientada a Servicios tiene un sustento muy importante en el uso de un motor de orquestación de procesos. Si un proceso (pensemos en Oracle BPEL PM) que orquesta esta carga de datos, pero en realidad él no lo hace, él simplemente manda un mensaje al ETL para que se inicie; pero nos interesa saber en todo momento en qué paso se encuentra, pues si no podemos llegar a perder visibilidad de la transacción y gobernabilidad.

Bien, pues Oracle Data Integrator permite publicar Servicios Web y consumirlos. Así Oracle BPEL PM es el orquestador de servicios de integración de datos que publique Oracle Data Integrator (ODI).

De esta manera sabremos exactamente lo que sucede en la extracción de datos, su transformación y carga. Podemos monitorear los tiempos de ejecución, podemos así monitorear SLAs y publicar Tableros de Control en donde se de visiblidad sobre toda esta información. Y estando ésto siendo orquestado se puede correlacionar la información con cualquier otro paso de un proceso de Negocio.

Oracle Data Integrator puede ser descargado del sitio de Tecnología de Oracle (http://www.oracle.com/technology/products/oracle-data-integrator/index.html).

Es una herramienta basada en java que requiere únicamente de tener previamente instalada una BD (que bien pudiera ser Oracle XE si están en modo de pruebas).

Una vez instado el producto, recomendamos que le den una mirada al tutorial (http://www.oracle.com/technology/products/oracle-data-integrator/index.html) de inicalización. Esto les dará una buena idea de qué hace el producto.

La publicación de WS en Oracle Data Integrator es bastante simple, se requiere:

* OC4J - aquí se publicarán dichos servicios. Puedes utilizar el OC4J donde estés ejecutando Oracle BPEL PM
* AXIS 2.0 - tecnología de Apache que permite la publicación de Web Services (http://ws.apache.org/axis2/). Básicamente es publicar un WAR.
* Publicar el paqute de Oracle Data Integrator a través de la consola de Axis (éste lo encuentras en $OH\oracledi\tools\web_services\odi-public-ws.aar)

Para tener las instrucciones detalladas de dicha configuración, pueden consultar la guía de instalación que viene como parte de la instalación del producto.

Una vez instalado Axis2, y haciendo el deployment del paquete (odi-public-ws.aar) de ODI (Oracle Data Integrator), se tiene la posibilidad de revisar el WSDL en la siguiente ubicación:
http://rcarrasc-mx:8888/axis2/services/OdiInvoke?wsdl.

Supongamos que tenemos un proceso en Oracle BPEL PM, que en determinado momento requiere mover grandes volumenes de información entre 3 bases de datos. Oracle Data Integrator hará éste trabajo de mover la información entre éstos
repositorios. Lo primero que hará será consultar la información del repositorio A (Base de datos) y lo pasará al repositorio B (otra Base de datos), y por último pasará lo que tiene en B a un tercero llamado C.
Dado que son millones de registros, hacer uso de los adaptadores de BPEL PM tal vez no sea tan eficiente, pues al transformalo a un formato XML, provocará una gran volumen de datos manejados en memoria, y no será tan peformante.

En ODI, se conocen como escenarios, adentro de los cuales existen interfaces, las cuales son las que en realidad hacen el trabajo de mover los datos y transformarlos.

Supongamos el siguiente escenario de ODI y el flujo BPEL de las imágenes de abajo (haz click en cualquier imagen para que puedas verla en un tamaño más grande):








El flujo BPEL realiza primero una serie de asignaciones de valores que son los necesarios para iniciar el escenario en ODI, se debe crear un mensaje similar al siguiente:




Con estos valores se hace la invocación al Partnerlink (ODIScenario), que inicia la ejecución de ODI.

ODI lo primero que hace es recibir un valor (ID - en el mensaje XML tiene el valor 769) que es el que servirá para correlacionar la instancia con el flujo en BPEL PM. Después se ejecuta una interface que mueve y transforma datos de una BD A a una B, posteriormente envía un mensaje de vuelta al proceso de BPEL que lo inició para informarle que ya terminó la primera interface. BPEL lo recibe en la actividad que en la imagen aparece como receiveIntermediate.

ODI continua su ejecución ejecutando ahora la interface "InterfaceRolando3", y finalmente envia un mensaje al mismo proceso BPEL, el cual lo recibe en la actividad "receiveFinal".

La correlación, como se había comentado, se lleva acabo a través del valor del ID, así el escenario de ODI se puede comunicar con BPEL. En realidad hay un flujo BPEL intermedio que es el que recibe la invocación de ODI, y es el que comunica al proceso BPEL que inicia todo. ¿Esto por qué? Porque ODI en su versión actual no puede consumir procesos asíncronos.



De esta forma mostramos la integración entre ambos productos, y la gran capacidad que se logra al unir ambas tecnologías.


Algunos Tips para Trabajar con JDeveloper

0

El día de ayer estuve escuchando un podcast de Andrew Binstock sobre el mercado de los IDEs de Java durante el 07 y que viene para el 08 sobre el cual escribiré un articulo posterior, sin embargo en el reportaje se menciona que una de las áreas más sobresalientes de JDeveloper es el buen trabajo que se viene haciendo con respecto a la usabilidad del producto y la forma intuitiva en que se trabaja con el IDE de acuerdo a los roles del programador.


No solo la parte de usabilidad ha sido mejorada a través del tiempo sino que hoy en día JDeveloper cuenta con una interfaz rica no solo desde el diseño visual/asistido sino también desde el teclado el desarrollador tiene a disposición una serie de atajos de teclado bastante útiles como también se cuenta con mini asistentes mientras se codifica que ayudan a que la experiencia de productividad sea aún mayor. A continuación presento algunas con las que he estado trabajando últimamente que se encuentran presentes en JDeveloper 11g, así mismo si usted tiene más tips que quiera compartir puede adicionar su comentario o me puede enviar un mail a j c r u i z (arroba) g m a i l y con mucho gusto la publico.


Asistentes:


Quick Outline (ctr + shift + back quote)

quickOutline

Dentro de una clase normal se tienen muchos métodos de acceso a los atributos (getters y setters) así como los métodos propios que se vayan creando, cuando necesitamos buscar un método dentro de ya varias lineas de codigo, podemos hacer un search, mirar dentro del panel de extructura o con JDeveloper podemos utilizar el Quick Outline, el cual nos presenta de manera rápida y sencilla todos los métodos que tenemos en la clase así como también los parámetros de entrada y el retorno.

Tiene una caja de busqueda y al dar doble click sobre un método nos lleva a la definición del mismo dentor de la clase.





Find Usages (ctrl + alt + u)

Usages

Es una excelente herramienta para hacer el seguimiento de código que otros desarrolladores hayan creado y poder hacer debugging. Uno puede buscar las llamadas de los métodos dentro del proyecto o dentro de toda la aplicación. Así mismo ofrece la posibilidad de buscar dentro de código que haya sido comentariado o buscar dentre de librerias.







Opciones de Compleción

autoCompletion

Existen distintas opciones para autocompletar codigo, para acceder a estas opciones

click der -> source

Dentro de las que más me gustan está el Complete statement con el cual uno empieza a definir un Objeto ya existente y con este asistente el auto completa la definición. Comportamientos similares tienen el Parameter y Smart Completion Insight. Ya contamos con más opciones fuera del Completion Insight que ya de por si es bastante útil.

Javadoc Rápido (ctrl + d)

javaDoc

Importante cuando se tienen los objectos propios de la aplicación con sus respectivo Javadocs. El asistente busca dentro de la definición de cualquier objecto para se pueda entender la utilización de algún método. Una herramienta valiosa para aquellos que utilizamos el Javadoc con frecuencia.


Plantillas Pre-definidas


Existen palabras pre-definidas que basicamente son atajos de teclado combinados con una serie de plantillas pre-definidas para ciertas instrucciones que se utilizan frecuentemente en la codificación de clases. En JDeveloper también se puede hacer uso de estas herramientas para aumentar la productividad al momento de programar:


codeTemplates

Para acceder a esta pantalla hay en que entrar

tools-> preferences -> code editor -> code templates

En esta pantalla se pueden ver las plantillas predefinidas así como tambien se puede crear nuevas. por ejemplo si al programar digito sop y luego tecleo ctrl + enter voy a tener toda la sentencia System.out.println();

Si se tienen más tips de JDeveloper que se quieran compartir me los hacen llegar y con mucho gusto los publicaré.


Fusion Middleware 11g disponible

0

La Navidad llego para Oracle junto con el lanzamiento algunos de los productos asociados con la version 11g del Oracle Fusion Middleware que esta programado para salir a producción durante el 2008. Los productos que han sido liberados son en technology preview 3:

  • SOA Suite 11g
  • JDeveloper 11g
  • Webcenter 11g
  • Oracle Container JEE 11g
  • Toplink 11g
Para obtener información sobre estos productos pueden hacer click aqui, puede que muchos estén pensando que productos como JDeveloper el cual ha tenido 3 technology previews los cambios no deben haber sido muchos, sin embargo pueden mirar los release notes y podran darse cuenta que cada uno de los releases contiene muchas carácteristicas nuevas aparte de las correcciones que se hayan encontrado en los TPs iniciales.

Otra buena noticia es que este TP 3 de JDeveloper viene también con nuevos Oracle By Exaples en la actualidad ya pueden tener un tutorial super bueno relacionado con los Data Visualization Components.


Post navigation