ADF tips: Plantillas de código en JDeveloper

En este tip hablaremos de 2 opciones que nos brinda JDeveloper para definir y utilizar fragmentos de código reutilizable.

La primera opción la encontraremos dentro de la paleta de componentes, donde podemos definir “Code Snippets”. La forma de utilizarlos es muy sencilla, simplemente debemos arrastrar el “snippet” en la línea donde queremos utilizarlo. Esta opción tiene una gran limitación, y es que el código definido aquí debe ser código fijo, no podemos definir una serie de variables a reemplazar cada vez que utilicemos el código.

Aquí podemos ver en imágenes cómo definir un Code Snippet y el resultado final:

adftips_template1

adftips_template2

    // ---------------------------------------------------
    // ---    Custom code
    // ---------------------------------------------------

    // ---------------------------------------------------
    // ---    Auto generated code / Do not modify
    // ---------------------------------------------------

La siguiente alternativa ofrece mucho más juego, se trata de la opción de “Code Templates”. Ésta podemos encontrarla dentro de las preferencias de nuestro JDeveloper. Desde aquí definiremos un atajo de teclado que estará disponible en un contexto determinado (Java Code, CSS, HTML, Anywhere….) y una breve descripción.

adftips_template3

Con este método podemos definir el código fuente para ser reutilizable por todo un equipo de desarrollo, haciendo uso de variables si fuese necesario (definidas entre símbolos $).

Leer más…

Revista Oracleando nº 3 (SPOUG, diciembre 2014)

enero 16, 2015 Deja un comentario

Portada Oracleando 3Se ha publicado el tercer número  de la Revista Oracleando, publicada por SPOUG – Spain Oracle Users Group.

avanttic  (socio institucional de SPOUG) ha colaborado en este número con publicidad (contraportada) sobre Evolucionar hacia BPM partiendo de una implantación SOA y con la publicación de un artículo sobre Migración de Oracle Warehouse Builder (OWB) a Oracle Data Integrator (ODI), en el que Joan Massegú (Consultor y Técnico Preventa del Área de Business Analytics de avanttic) explica que ahora es el momento oportuno para migrar y presenta la herramienta de migración de OWB a ODI que nos proporciona Oracle.

Este número además, cuenta con un monográfico sobre Aplicaciones (ERP, EPM, CX y HCM) e interesantes Casos de Uso de varias empresas importantes.

¿Qué versión elegir de Oracle Database, Enterprise o Standard?

Últimamente hemos recibido varias preguntas de diferentes clientes respecto a las diferencias entre las versiones Enterprise y Standard de Oracle Database, básicamente para saber cuál de estas ediciones encaja mejor con sus necesidades.

Standard-Enterprise

Usando un símil con los taladros, la Enterprise Edition sería un taladro potente, que podemos usar en cualquier superficie (ladrillo, hormigón, madera, metal) que atornilla/desatornilla y al que podemos conectar multitud de complementos que nos permitirán trabajar más rápidamente, con más precisión o realizando tareas que quizá podrían haber obligado a comprar otras herramientas (como lijar o cortar). Este sería el taladro imprescindible en la caja de herramientas de un buen carpintero, cerrajero, paleta, etc.

Por otra parte, si en casa colgamos algún cuadro de vez en cuando, necesitamos un taladro que permita taladrar muros y madera fácilmente, que sea práctico y fiable. Esta sería la versión Standard Edition del taladro, que no debería faltar en la caja de herramientas de ningún manitas.

Entrando un poco más en detalle, antes de nada aclarar que en este post no tengo intención hacer lista detallada de todas las diferencias entre ambas versiones, únicamente comentaré las más relevantes o que he detectado como más útiles en el día a día con nuestros clientes. Indicar también que no entraré en diferenciar las versiones XE (gratuita), Standard Edition y Standard Edition One pues ya las explicamos en este post.

A modo de recordatorio: algunas de las opciones o packs de Oracle Database Enterprise Edition, que comentaré a continuación, requieren ser licenciadas por separado de la BBDD.

El punto de partida obligado, para conocer en detalle las diferencias entre todas las versiones de Oracle Database, es esta página web de Oracle.

Desde mi punto de vista destacaría en Oracle Database Enterprise Edition:

  • La primera funcionalidad que destaca en una Enterprise Edition (EE en adelante) sobre una Standard Edition (SE en adelante) es, en mi opinión, la posibilidad de utilizar los packs de Diagnostics y de Tuning. Nos ofrecen la mayor y más detallada cantidad de información sobre el funcionamiento de la BBDD que os podáis imaginar (existen otros productos que hacen cosas parecidas, pero ninguno que los llegue a igualar), así como la posibilidad de ajustar de manera automática el rendimiento de nuestras sentencias SQL. En la SE no existe la opción de usar estas funcionalidades, lo que implica tener que controlar el estado y ajustar el rendimiento del gestor de manera tradicional (trazas de selects, vistas dinámicas V$ o herramientas como statspack -que se basa en las dos anteriores-).
  • Otra funcionalidad presente sólo en EE, y que creo que es importante y se tiene poco en cuenta, es el paralelismo. En EE una única sentencia SQL puede paralelizarse y usar varias CPU’s/cores de manera simultánea, mejorando notablemente el tiempo de respuesta en algunos casos. En SE no es posible paralelizar y una sentencia SQL no puede usar al mismo tiempo más de 1 CPU/core.

Leer más…

Error “401 Unauthorized” al consumir un servicio web desde un DataControl en ADF 11g

Durante el desarrollo de una aplicación ADF me he encontrado con la necesidad de consumir un servicio web a través de un DataControl. El servicio tenía autenticación http básica, de modo que a mi DataControl le he añadido las credenciales. Una vez hecho esto, desplegué la aplicación en el Weblogic local y funcionó a la perfección.

Después, desplegué la aplicación en el servidor Weblogic del entorno de test y al ir a probar la página que hacía la llamada, me encontré con que se producía el error “javax.xml.soap.SOAPException: Bad response: 401 Unauthorized”.

Featured image

A continuación, os explico los pasos que hay que realizar para solucionar este problema.

En primer lugar es necesario que el DataControl sobrescriba las propiedades de seguridad que por defecto asigna Weblogic. Esto se realiza de la siguiente manera:

1. Seleccionar el archivo “DataControls.dcx”

Selecionar "DataControls.dcx"

2. En la ventana “Structure”, seleccionar el DataControl y mostrar el menú emergente. Seleccionar la opción “Define Web Service Security…”.

Definir seguridad

3. En la ventana emergente que se abre, debemos escoger la política de seguridad que hay que aplicar y a continuación sobrescribir sus propiedades. En el caso de usar autenticación HTTP básica hay que seleccionar la política “oracle/wss_http_token_client_policy”.

Seleccionar política de seguridad

 

Leer más…

Categorías:ADF Etiquetas: , ,

Posts más visitados de avanttic blog durante el 2014

Categorías:avanttic Etiquetas:

Hard Partitioning con Oracle VM x86 (pinnear vCPU’s)

diciembre 30, 2014 Deja un comentario

Oracle-VM

En este otro post tratábamos el licenciamiento de productos Oracle sobre entornos virtualizados. En esta nueva entrada vamos a entrar en detalle sobre cómo configurar Oracle VM 3.X sobre plataforma x86 para cumplir correctamente con los requisitos de licenciamiento.

Para realizar esta tarea, hay que descargar de My Oracle Support el parche Patch 13602094: ORACLE VM 3.0 UTILS RELEASE 1.0.2 que contiene el paquete de utilidades Oracle VM Utilities. Este conjunto de utilidades se suele instalar y ejecutar en el OVM Manager.

Una vez instalado procedemos a asignar (o pinnear) las CPU’s. Primero verificamos que la máquina virtual tenga asignadas las vCPU’s necesarias.

processors

 

Una vez revisado,  procedemos a lanzar el comando que habilita el hard partitioning:

[root@avtovmm1 ovm_utils]# ./ovm_vmcontrol -u admin -p <password> -h localhost -v avtvmdb01 -c vcpuset -s 0-3
Oracle VM VM Control utility 1.0.1.
Connected.
Command : vcpuset
Pinning virtual CPUs
Pinning of virtual CPUs to physical threads '0-3' 'avtvmdb01' completed.

Una vez ejecutado, esta máquina virtual sólo podrá hacer uso de 4 vCPU’s  y estaremos cumpliendo con un licenciamiento de 2 Processors Oracle.

Veamos el mismo ejemplo sobre un servidor con hyperthreading habilitado:

xm info
host : AVTOVM01.AVANTTIC.LOCAL
release : 2.6.39-300.32.6.el5uek
version : #1 SMP Fri Oct 11 22:05:27 PDT 2013
machine : x86_64
nr_cpus : 24
nr_nodes : 2
cores_per_socket : 6
threads_per_core : 2
cpu_mhz : 2933

Se trata de un servidor con 2 procesadores hexacore con hyperthreading habilitado, por lo que en el campo nr_cpus muestra 24, que son las vCPU’s disponibles para ser usadas por OVM.

El factor de corrección Oracle no tiene en cuenta el hyperthreading a la hora de licenciar los procesadores x86, sólo se fija en los cores, como explicábamos en este post.

Así que, en el servidor descrito se tendrían que asignar 8 vCPU’s para aprovechar el licenciamiento de 2 Processors Oracle:

2 Processors Oracle >> 4 Cores x86 >> 8 threads x86 >> 8 vCPU’s OVM

WÜRTH: Optimización de la fuerza de ventas con Oracle ADF Mobile

diciembre 23, 2014 Deja un comentario

avanttic - Wurth Success Story

Würth España es una empresa comercializadora de materiales y herramientas, para diferentes sectores, que ha optado por la digitalización de todo su catálogo de productos (+100.000 artículos vinculados a 2.800 productos) para poder proporcionar un nuevo canal de distribución a través de dispositivos móviles (tabletas o teléfonos) y mejorar la eficiencia del equipo comercial (1.600 vendedores).

El desarrollo se ha realizado con Oracle ADF Mobile, plataforma que ha permitido optimizar tanto el tiempo como el coste de desarrollo, al ser un framework de alta productividad (lea este post sobre Alta UI y esta presentación sobre Desarrollo ADF para la web y para movilidad). Además se reduce el coste de mantenimiento al tener un único código fuente que permite ejecutar las aplicaciones en varias plataformas (iOS y Android) y dispositivos (tablets y smartphones).

 

El valor de negocio obtenido por Würth, a raíz del desarrollo realizado con Oracle ADF Mobile, se puede resumir en:

  • Eliminación de los costes, tanto de impresión de los catálogos como de distribución.
  • Redución del período de formación de los técnicos comerciales.
  • Acceso seguro e instantáneo (24×7) al catálogo de artículos, en modo conectado o desconectado.
  • Aumento de las ventas al proporcionar una experiencia más dinámica y enfocada al cliente final.
  • Generación de catálogos personalizados para cada cliente, a partir del histórico de pedidos realizados y de las consultas que en última instancia no se materializaron en compra.

Gracias a avanttic, y a la adopción de esta solución de movilidad con desarrollo ADF Mobile de Oracle, hemos estimado que la mayor agilidad en la venta ha posibilitado un aumento en la facturación de como mínimo un 10%.

Xavier Masats, CIO de Würth

Lee los detalles del proyecto en el datasheet del caso de éxito (formato pdf).

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 157 seguidores