Archive for marzo 2009

Llamando al API del Worklist de Oracle BPEL PM sobre Weblogic Server 9.2

0

Es normal tener la necesidad de construir ya sea una Worklist customizada para Oracle BPEL PM, o bien alguna aplicación cliente que necesite consultar datos de la Worklist, por ejemplo:
* Tareas asignadas a un usuario en específico
* Poder aprobar, rechazar una tarea desde afuera de la Worklist
* Cantidad de Tareas que tengan algún Título en específico
* Generar una Tarea de manera remota,
* etc

Bien, si todo está montado sobre Oracle AS, no hay necesidad de hacer ninguna modificación a las clases que ocupas para construir una aplicación cliente de la Worklist (aquí mas datos ).

El tema está en ocupar por ejemplo:

* Una aplicación construida con Webcenter Framework, sobre Oracle AS
* Oracle BPEL PM Worklist sobre WLS 9.2

La aplicación se puede construir tal como se especifica en el link antes mencionado, de ahí hay 2 alternativas para hacer llamadas remotas a la API del Worklist:

a) REMOTE_CLIENT. Básicamente haciendo uso de EJBs
b) SOAP_CLIENT. A través de llamadas con WS

Si se hace uso de la primera opción, se tendrá un problema de look-up de JNDI similar a :
<::> Error in invoking task query service operation.<::> A client side error occured in invoking the task query service operation TaskQueryService.<::> Please check the exception error stack to identify the error. Contact oracle support if error is not fixable.

Para resolverlo, se tiene que hacer lo siguiente:
Modificar el archivo META-INF/weblogic-ejb-jar.xml en el jar hw_services_ejb.jar:
De ejb/bpel/services/workflow/TaskQueryService
a
TaskQueryService

con ésto ya el JNDI lookup resolverá bien el nombre el objeto y hará la llamada.


Error del PermGen en JDeveloper 11g

0

Un pequeño post para darles una recomendación a aquellos que estén utilizando JDev11g relacionado con el servidor Weblogic embebido -luego de levantar la instancia, este se queda sin espacio en el PermGen. Ya contamos con un workaround que publicó Shay Shmeltzer en sl siguiente artículo.

Aparte de lo que se sugiere Shay, yo adicioné la siguiente opción de Java dentro del mismo archivo

-XX:+CMSPermGenSweepingEnabled

tienen que buscar la linea y adicionarlo la opción el final:

set JAVA_PROPERTIES=-Dplatform.home=%WL_HOME% -Dwls.home=%WLS_HOME% -Dweblogic.home=%WLS_HOME%

La semana pasada me enfrente con este problema y la verdad que es bastante molesto, sin embargo luego de aplicar el workaround tudo fluyo sin problemas. En la próxima versión de JDeveloper (que no va ser en 3 años… ;-) esperamos tener ya superado este impercanse.

Actualización para usuarios de Mac:

Durante un entrenamiento que estamos realizando esta semana uno de los usuarios tenía una Mac y luego de especificar los parámetros aún seguiamos obteniendo el error el cual se solucionó luego ver esta entrada en los foros de OTN


Resumen Oracle OOW LAD09

0

La semana pasada se llevó a cabo el Oracle Open World Latinoamerica en la ciudad de Sao Paulo evento en el cual tuve la fortuna de participar. En esta entrada presentaré un resumén del evento a partir de lo que me dejó el interáctuar con partners, clientes e interesados que participaron de las presentaciones que di o en el tiempo que estuve en la zona de demos.

PIC-0068A mi parecer el evento fue todo un éxito -buena asistencia durante los 3 días, bastante interes sobre el desarrollo en Oracle Fusion y la parte de Web2.0. Estuve en contacto con desarrolladores 4GL, así como también, con gente que viene del mundo BEA quienes se mostraron muy interesados en conocer el Framework ADF y los componentes visuales ADF Faces RC así como JDeveloper ya que ellos vienen del mundo EclDSC03426ipse.

 

Aparte de haber echo nuevos contactos y poder llevarme una idea de cual es la situación del mercado brasilero en el área de herramientas de desarrollo, también el evento fue una buena oportunidad para re-encontrarme con amigos y compañeros del mundo Oracle Latinoamerica como el famoso Product Manager y co-autor de este blog Brimful of Asha a.k.a Rolando Carrasco 

Tuve charlas muy interesantes en relación a estrategías de adopción y aprendizaje de ADF y Java, lo cual me deja la impresión que hay una clara iniciativa por parte de las empresas en utilizar esta tecnología sea para migrar aplicaciones existentes (principalmente Forms) o para hacer nuevos desarrollos. Las dudas principales se centran alrededor de cual es la mejor estrategía? Existén herramientas de migración? Cual es el rol de JHeadStart y que beneficios tendría su utilización para llevar a cabo una migración más rápida, capacitaci’on, etc. Misión cumplida por esta 2009 y desde ya me estaré alistando para el OOW09 aquí en San Francisco.

Muchas gracias a Oracle LAD por la invitiación y Obrigado Brasil!!


Skins – Utilizando el styleClass con Componentes ADF Faces RC

0

Días atrás estuve trabajando en un requerimiento de un cliente que estaba buscando la forma de aplicar un styleClass definido en una hoja de estilos CSS, sobre un componente ADF Faces RC directamente -esto, en lugar de aplicar un estilo de manera general para todos los componetes del mismo tipo.

Para poder explicar de mejor forma este requerimiento, voy a mostrarles su implementación. Lo que queremos lograr al final de este articulo es poder renderizar un mismo componente de forma distinta utilizando el styleClass. Para esto voy a utilizar el componente af:menuBar

image Note que para este ejemplo estoy utilizando un af:menuBar que contiene 3 af:menuItem (Dashboard, Action Menu, Menu3). El aspecto particular es que dentro de la plantilla de estilos podríamos definir el skin selector para el menuBarItem utilizando la notación:
af|menu::bar-item

La cual se aplicaría para todos los 3 af:menuItems. Entonces si queremos que algunos de los menu items sean amarillos y los otros rojos, debemos definir distintos styleClass para el mismo menuItem de la siguiente forma:

af|menu::bar-item.commonMenuStyle1{
background-color: red;
}

af|menu::bar-item.commonMenuStyle2{
background-color:Yellow;
}

En este caso estamos definiendo 2 styleClass con el color de fondo diferente color. Ahora todo lo que necesitamos hacer es ir a la propiedad styleClass de los menuItems y especificar el nombre de la clase

image

Bonus: Una de las cosas que encontramos en este requerimiento es que la propiedad de resaltado (hightlight) del af:MenuItem requiere especificar la imagen de fondo en none por lo que el styleClass quedaría así:

af|menu::bar-item:highlighted.commonMenuHighlightStyle{
border: 1px dashed;
background-color: green;
padding: 1px 5px;
background-image:none;
}

Para una mayor información sobre como aplicar skin y los distintos skin selectors pueden consultar en el capitulo 19 de la guía del desarrollador web, así como también pueden tomar como referencia la guia de skining en línea que tenemos aquí


ADF 11g en JBoss5 parte 2 – POJO Databindings

11

En el primer artículo de la serie se mostró como hacer el despliegue de una aplicación que no hacia uso del ADFm o como también se le conoce los databindings. En este artículo vamos a deplegar una aplicación que utiliza el data control de clases java dentro de JBoss 5GA.

Para llegar al resultado final he seguido un procedimiento diferente en el manejo de las librerías comparado con el propuesto en el primer articulo. Para llevar a cabo este procedimiento vamos a incluir dentro de nuestra aplicación un archivo de configuración que nos permita cargar las librerías de nuestro proyecto primero antes que las de JBoss para poder llevar a cabo un despliegue exitoso de la aplicación. Para esto me base en la documentación sobre JBoss classloader.

Como primera media vamos a crear un proyecto que utilize el POJO data control para presentar datos desde una clase java hacia la interfaz Web. A continuación les presento la estructura de mi proyecto, nótese que hay un archivo nuevo dentro de esta estructura llamado jboss-web.xml que es el que utlizamos para sobre-escribir la carga de las clases.

image

El archivo jboss-web.xml queda así:

  1: <?xml version="1.0" encoding="UTF-8"?>
  2:  <!DOCTYPE jboss-web PUBLIC
  3:     "-//JBoss//DTD Web Application 5.0//EN"
  4:     "http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd">
  5: 
  6: <jboss-web>
  7:     <class-loading>
  8:         <loader-repository>
  9:             com.oracle.adfpojo:loader=adfm.jar
 10:             <loader-repository-config>java2ParentDelegation=true</loader-repository-config>
 11:         </loader-repository>
 12:     </class-loading>
 13: </jboss-web>
 14: 


La configuración del loader-repository apunta a cualquier librería que esté contenida dentro de nuestro archivo WAR. Alguien sabe el proposito de esta?



Finalmente vamos a incluir todas las librerias necesarias dentro del proyecto y del perfil de despliegue para poder llevar la aplicáción a JBoss. En las propiedades del proyecto asegurense de tener seleccionadas las siguientes librerías y paquetes de librerías.



image



Luego seleccione las siguientes librerías para que hagan parte de su perfil de despliegue o deployment profile



adf-controller-api.jar
adf-controller.jar
adf-controller-rt-common.jar
adf-dt-at-rt.jar
adfdt_common.jar
adf-faces-databinding-rt.jar
adflogginghandler.jar
adfm.jar
adfmweb.jar
adf-pageflow-dtrt.jar
adf-pageflow-fwk.jar
adf-pageflow-impl.jar
adf-pageflow-rc.jar
adf-richclient-api-11.jar
adf-richclient-impl-11.jar
adf-share-base.jar
adf-share-ca.jar
adf-share-support.jar
adf-transactions-dt.jar
cache.jar
commons-cli-1.0.jar
commons-el.jar
db-ca.jar
dms.jar
dvt-databindings.jar
dvt-facesbindings.jar
dvt-faces.jar
dvt-jclient.jar
dvt-utils.jar
groovy-all-1.5.4.jar
identitystore.jar
inspect4.jar
javatools-nodeps.jar
javax.xml.bind_2.1.3.jar
jaxb-impl_2.1.3.jar
jdev-cm.jar
jewt4.jar
jmxframework.jar
jmxspi.jar
jps-api.jar
jps-common.jar
jsf-api.jar
jsf-ri.jar
jsp-el-api.jar
jstl.jar
mdsrt.jar
oc4j-unsupported-api.jar
ojdbc5.jar
ojmisc.jar
oracle-el.jar
oracle.ucp_11.1.0.7.0.jar
share.jar
trinidad-api.jar
trinidad-impl.jar
weblogic-injection-provider.jar
xmlef.jar
xml.jar
xmlparserv2.jar


Luego ya puede desplegar su aplicación y ejecutarla



image


Eventos en Estados Unidos, Europa y America Latina

0

Aprovechando que estamos de anuncios, les cuento que el equipo de JDeveloper publicó nuevas fechas y lugares que incluyen varias ciudades de Europa y Estados Unidos para los OTN Developer Days.

Por qué creen ustedes que no se tienen programadas fechas en Latinoamerica?

Mi teoría personal es que el poder esté en los usuarios (clientes, partners, universidades, etc.) quienes deben de hacer suficiente ruido con los recursos locales, para que estos a su vez transmitan el deseo y la iniciativa de llevar a cabo estos eventos en nuestros paises.

Sin embargo nuestra región no esta totalmente abandonada ya que en paises como Chile se va a llevar a cabo la primera conferencia del CLOUG o grupo de usuarios de Oracle. Este evento va por muy buen camino y ya cuenta con varios personajes destacados del mundo Oracle a nivel regional y mundial. Cabe anotar que Perú tuvo el suyo el año pasado tambíen.

Mucha suerte a nuestros amigos de Chile y ojalá podamos ver próximamente eventos como los OTN Developer Days en nuestra región.

Comentarios, sugerencias, otros eventos que no he mencionado?


Oracle Open World Latin America 2009

0

La próxima semana me encontraré en Brazil  en el OOW Latin America. Allí estaré presentando 2 sesiones las cuales espero que asistan. Estoy muy contento de poder hacer parte de este evento ya que es mi primera vez como presentador en el OOW Latino.

Las presentaciones son:

Marzo 11

17:15 - 18:00 Auditorium 5: S298738 -  The Oracle Fusion Development Platform

Marzo 12

17:15 - 18:00 Auditorium 5: S305752 - RIA and Web 2.0 Development without Coding

El resto del tiempo me encontraré en el la zona de Demos en que corresponda a ADF/JDeveloper.

Alguien dijo Brazil?


Post navigation