lunes, 11 de julio de 2011

Tip: Ver instancias BPEL en EM a pesar del error de visualización de Composites

Esto me ha ocurrido más de una vez en distintas instancias, sin que hasta el momento haya encontrado la causa raíz real, el síntoma es el siguiente:

Al tratar de dar seguimiento a una instancia de un compuesto en Enterprise Manager dando clic en el número de instancia del compuesto en el Panel de Control del mismo. Cuando se despliega la ventana emergente que normalmente ilustraría el set de ejecuciones correspondientes al compuesto, nos encontramos con este error:

ErrorVerComposites

En muchas ocasiones, basta con refrescar la ventana a través del botón ubicado en la parte superior derecha, además de, por supuesto, ser una persona muy pero muy paciente. Pero hay otras tantas en las que ni siquiera eso es suficiente. Cuando llega el tiempo de hacer pruebas de calidad y de estrés para los desarrollos, este problema puede llegar a ser terriblemente irritante y causante de muchos retrasos en el diagnóstico de todo tipo de problemas.

Este comportamiento me ha hecho pensar, más de una vez, que se trata de un problema de los recursos del servidor donde se ejecuta dicha instancia. Aun así no hemos encontrado la manera de resolver este problema, pero si una forma de “evadirlo”.

Si ya estas familiarizado, con el panel de control de EM, sabrás que debajo del panel principal en donde se muestran las instancias de compuesto, se encuentra un listado de los módulos que lo componen con sus métricas.

Metricas

Pues bien, dando clic en el proceso BPEL que deseamos auditar, iremos a otra pantalla similar a la del compuesto, pero correspondiente en exclusiva al BPEL seleccionado, damos un clic sobre a pestaña de instancias:

image

Si presionamos clic sobre el número de instancia BPEL, se inmediato aparecerá la ventana emergente con el dibujo del flujo del mismo.

image

Lo que hicimos fue “brincarnos” el Rastreo del Flujo para ir directamente a la Pista de Auditoría del BPEL.

El crédito de este “descubrimiento” le pertenece a mi actual jefe, Andrés, y considere correcto compartir el consejo mientras logramos resolver este problema de raíz.

 

WaLeX

sábado, 9 de julio de 2011

XML Básico: ¿Como se puede utilizar XML?

 

XML se usa en muchos aspectos del desarrollo web, a menudo el uso que se le da es simplificar la tarea de almacenar y compartir datos.

XML separa la información del HTML

Si necesitas desplegar datos dinámicos en tu documento HTML, te costará mucho esfuerzo editar el HTML cada vez que los datos cambien.

Con XML, los datos pueden ser almacenados en archivos XML separados. De esta forma te puedes concentrar en usar HTML para diseño y despliegue, y estar seguro de que los cambios en la información subyacente no requerirán ningún cambio al HTML.

Con unas cuantas líneas de código JavaScript, puedes leer un archivo XML externo y actualizar el contenido de datos de tu pagina web.

XML simplifica el compartir datos

En el mundo real, los sistemas computacionales y bases de datos contienen datos en formatos incompatibles.

La información en XML es guardada en formato de texto plano. Esto provee una modo independiente del software –y hardware- para almacenar datos.

Esto hace mucho más sencillo crear datos que pueden ser compartidos por aplicaciones diferentes.

XML simplifica la transportación de datos

Uno de los retos que más tiempo de desarrollo consumen es compartir datos entre sistemas incompatibles sobre Internet.

Intercambiar información como XML reduce mucho esta complejidad, ya que la información puede ser leída por diferentes aplicaciones incompatibles.

XML simplifica cambios de plataforma

Actualizar a nuevos sistemas (plataformas de hardware o software), siempre consume mucho tiempo. Grandes cantidades de datos deben ser convertidos y datos incompatibles son perdidos a menudo.

Como los datos XML son guardados en formato de texto, es más sencillo extender o actualizar a sistemas operativos nuevos, aplicaciones nuevas o navegadores nuevos sin perder datos.

XML hace más accesible tu información

Aplicaciones diferentes pueden acceder a tu información, no solo páginas HTML, sino también desde orígenes de datos XML.

Con XML, tus datos pueden estar disponibles para todo tipo de “máquinas de lectura” (Computadoras de mano, máquinas de voz, seguidores de noticias, etc.), y hacerla más accesible para personas ciegas o con otra discapacidad.

XML se utiliza para crear nuevos lenguajes de Internet

Una gran cantidad de Lenguajes de Internet están creados en base a XML:

Aquí algunos ejemplos:

  • XHTML
  • WSDL para describir servicios web disponibles
  • WAP y WML como lenguajes de marcado para dispositivos de mano
  • RSS para seguidores de noticias
  • RDF y OWL para describir recursos y ontología
  • SMIL para describir multimedia para la web

Si los de desarrolladores tienen sentido…

Si ellos (nosotros) tienen (tenemos) sentido común, las aplicaciones intercambiaran sus datos en XML

El futuro (presente) puede darnos procesadores de texto, hojas de cálculo y bases de datos que puedan leer el datos del otro en formato XML, sin herramientas de conversión como intermediarias.

Fuente | http://www.w3schools.com/xml/xml_usedfor.asp

Traducido por WaLeX

miércoles, 6 de julio de 2011

XML Básico: Introducción a XML

 

XML fue diseñado para transportar y almacenar información.
HTML fue diseñado para desplegar información.

¿Qué deberías saber ya?

Antes de continuar, deberías tener un entendimiento básico de lo siguiente:

  • HTML
  • JavaScript

Si quieres estudiar estos temas primero, encuentra los tutoriales en la página de Inicio de W3Schools.


¿Que es XML?

  • XML es la abreviación para eXtensible Markup Language (Algo así como, Lenguaje de Marcado Extensible).
  • XML es un lenguaje de marcado muy parecido a HTML.
  • XML fue diseñado para portar información, no para desplegarla.
  • Las etiquetas de XML no son predefinidas. Debes de definir tus propias etiquetas.
  • XML esta diseñado para ser auto descriptivo.
  • XML es una recomendación del W3C.


La diferencia entre XML y HTML

XML no es una reemplazo para HTML.

XML y HTML fueron diseñados con objetivos diferentes:

  • XML fue diseñado para transportar y almacenar información, con énfasis en los propios datos.
  • HTML fue diseñado para desplegar información, con especial atención en como se ve dicha información.

HTML es para mostrar la información, mientras que XML es para transportarla.


XML no hace NADA

Quizá es un poco difícil de entender, pero XML no hace nada. XML fue creado para estructurar, almacenar y transportar información.

El siguiente ejemplo es una nota para Juan, de Leti, guardada como XML:

<nota>
<para>Juan</para>
<de>Leti</de>
<encabezado>Recordatorio</encabezado>
<cuerpo>No te olvides de mi este fin de semana!</cuerpo>
</nota>

La nota de arriba es un poco auto descriptiva. Tiene un remitente y un destinatario para la  información, también tiene un encabezado y un cuerpo del mensaje.

Pero insisto, este documento XML no hace nada. Es solo información “envuelta” en etiquetas. Alguien tiene que escribir una pieza de software para enviar, recibir o mostrarlo.


Con XML, tú inventas tus propias etiquetas

Las etiquetas en el ejemplo de arriba (como <para> y <de>) no están definidas en ningún estándar XML. Las etiquetas son "inventadas" por el autor del documento XML.

Esto es porque el lenguaje XML no tiene etiquetas predefinidas.

Las etiquetas usadas en HTML son predefinidas. Los documentos HTML solo pueden usar etiquetas definidas en estándar HTML (como <p>, <h1>, etc.).

XML permite al autor definir sus propias etiquetas y sus propia estructura para el documento.


XML no es un reemplazo para HTML

XML es un complemento para HTML.

Es importante entender que XML no es un reemplazo para HTML. En la mayoría de las aplicaciones web, es usado para transportar datos, mientras que HTML es utilizado para dar formato y mostrar la información.

La mejor descripción del autor de este tutorial para XML es:

“XML es una herramienta para transportar información independiente del software -y hardware-.”


XML es una recomendación del W3C

XML se convirtió en una recomendación del W3C el 10 de febrero de 1998 (hace un tiempo ya).

Para leer más acerca acerca de las actividades XML en el W3C, puedes leer su Tutorial W3C.


XML esta en todas partes

En estos días, XML es tan importante para la Web como lo fue HTML para fundarla.

XML es a herramienta mas común para transmisión de datos entre todo tipo de aplicaciones.

 

Fuente | http://www.w3schools.com/xml/xml_whatis.asp

Traducido por: WaLeX

miércoles, 22 de junio de 2011

… Retomando

En las siguientes entradas, publicaré algunos tutoriales sobre XML que he estado leyendo en los últimos días. Con esto, no pretendo quedarme el crédito de los mismos, ya que son tomados de www.w3schools.com. Lo único que haré será traducirlos y en ocasionas aportar una observación y/o interpretación personal.

w3schools

Esto tiene 3 intenciones:

  1. Tener ese contenido accesible para cualquiera en español.
  2. Proporcionarme un medio personal de consulta rápida.
  3. Prepararme para una certificación en XM que planeo.

Repito pues, que en ningún momento pretendo acreditarme la autoría de esos tutoriales, que son propiedad completamente de www.w3schools.com.

WaLeX

miércoles, 9 de junio de 2010

Consumir desde BPEL un Web Service con seguridad habilitada

Con frecuencia es necesario consumir servicios Web, con seguridad habilitada, desde Oracle BPEL, aquí tienes la manera de realizarlo utilziando JDeveloper:

Lo primero es crear un PartnerLink para comsumir el servicio, esto lo hacemos dando click derecho en el área de trabajo de BPEL o arrastrando el ícono correspondiente desde "BPEL Services" en la "Component Pallete".


En la ventana "Create PartnerLink" damos click sobre el botón "Define Service":


Seleccionamos "Web Service" y damos clic en OK.


En la pagina de configuración introducimos la dirección de WSDL del servicio web y le damos un nombre al mismo. Damos clic en OK.


Ahora hay que agregar una actividad "Invoke" al flujo BPEL para justamente invocar al PartnerLink recién creado. Para hacer esto debemos dar clic sobre la flecha que apunta hacia el PartnerLink y arrastrarla hasta el mismo.

Una vez incluida en el flujo, damos doble clic sobre la actividad "Invoke" para configurarla. Le damos un nombre y generamos las variables de entrada y salida dando clic sobre el signo "+" correspondiente a cada una y aceptando el nombre por defecto.


Ahora es justamente cuando vamos a editar nuestro PartnerLink para incorporarle las características de seguridad:


abrimos el archivo "Composite"


jueves, 3 de junio de 2010

BAM-00404: Authentication Failed

A propósito del Post anterior "Tip: Excepción BAM-00404 Authentication failed. User is marked inactive" hay varios puntos que comentar:
  1. La solución recomendada por la documentación de BAM para el ya mencionado error, es entrar al administrador de BAM (Lo que implica crear un usuario nuevo con privilegios de administrador) y eliminar el usuario inactivo, cerrar la sesión y volver a autenticarse con el usuario recien eliminado. Esto resuelve el problema de la inactivación.
  2. La solución anterior es parcial, ya que depués de algunos minutos el usuario se vuelve a inactivar, inclusi si estas en una sesión activa en ese momento. Esto es por que BAM checa periodicamente al usuario utilizando la API user/role y no la esta encontrando en el Security Provider en el que JPS/OPSS busca.
  3. La solución correcta para este problema es (que a mi me funcionó) fue desactivar este chequeo periódico por medio del archivo de configuración de BAM. Esto s hace agregando la siguiente etiqueta al archivo.


El archivo de configuración del servidor de BAM se encuentra ubicado en:

\...\ORA_HOME\user_projects\domains\\servers\\tmp\_WL_user\oracle-bam_11.1.1\1o1igs\APP-INF\classes\config\BAMServerConfig.xml

*La versión de BAM que utilizo es la 11.1.1.2.0

Quiero agradecer a Sanjay Baldwa (usuario de los oracle forums) por su valiosa inforamción para resolver este problema.


WaLeX

lunes, 31 de mayo de 2010

Tip: Excepción BAM-00404 Authentication failed. User is marked inactive


Hace unos días surgió la necesidad de importar los usuarios de un Active Directory (AD) hacia el Security Provider de Weblogic. Actividad que resulto relativamente fácil.
El problema surgió cuando traté de iniciar sesión como administrador en Oracle BAM, ya que me enviaba la excepción BAM-00404 Authentication failed. User is marked inactive. La solución es sencilla, pero ay ciertos aspectos de weblogic que hay que considerar:
  1. La ventana de generalidades del realm "my realm" muestra solamente 1000 usuarios (sin importar si los muestras 10, 100 o 1000 por pantalla) de modo que el resto de usuario quedan "ocultos", aunque de primera instancia da la impresión de que fueron sobreescritos, es suficiente con hacer una busqueda del usuario para darnos cuenta que sigue ahí.
  2. Cosa curiosa fue descrubrir que la única herramienta para la que quedó "inactivo" mi usuario administrador fue para BAM, a pesar de tratarse de exactamente el mismo usuario para el resto de consolas (EM, SOA). Y al probar los demas usuarios con otros roles para BAM, resulta que también quedarón inactivos, lo que me hizó pensar que este problema es solamente para BAM.

Para resolver este problema fue suficiente con crear un nuevo usuario administrador para BAM (también funciona si eliminas el actual usuario administrador y lo vuelves a crear con el mismo nombre. Yo no hice eso, ya que mi usuario administrador era común entre el resto de herramientas y en las demás estaba funcionandco correctamente). Hay que asignar este usuario recien creado a los grupos Administrators y OracleSystemUser. Y por último en el Enterprise Manager debemos asignar este usuario al rol de Administrator. No es necesario reiniciar los servidores, con guardar y activar los cambios basta.

A partir de ese momento puedes iniciar sesión en BAM con los provilegios de administrador usando el nuevo usuario y contraseña.

WaLeX