Anda di halaman 1dari 34

Sybase EAServer 4.

2
Sybase EAServer es el servidor de aplicaciones abierto que le brinda poder a las
aplicaciones crticas de negocio y que ofrece el ms bajo costo de propiedad.

Es poco realista pensar que es posible cambiar la manera en que usted ha venido llevando a
cabo sus negocios exitosamente por aos. La transformacin hacia e-Business depende de la
habilidad de explotar los servicios y aplicaciones empresariales clave, al mismo tiempo que se
extienden hacia el nuevo entorno de negocios basado en Web. El reto que enfrentan la iniciativas
e-Business es que la mayor parte de servidores de aplicacin fueron hechos para tomar ventaja
de Java y J2EE, y no de los modelos de componentes de aplicacin antiguos que abundan en la
mayor parte de empresas.
Sybase EAServer es el nico servidor de aplicaciones que integra J2EE 1.3, servicios Web
seguros, as como C/C++, PowerBuilder y COM, brindando la mejor plataforma para descubrir el
valor econmico de los sistemas existentes al mismo tiempo que se construye la siguiente
generacin de aplicaciones.

Recomendaciones para Evitar Cadas en EAServer 4.1.x y


4.2.x
Recomendaciones Generales

Muchas de las "cadas" o "colgadas" de EAServer son debidas a problemas o "bugs" del software,
por lo que es recomendado instalar el ltimo EBF disponible para el producto. Los EBFs
resuelven numerosos problemas reportados por clientes Sybase al rededor del mundo. Los
ltimos EBFs disponibles se encuentran en http://downloads.sybase.com.
Para informacin detallada sobre la instalacin, configuracin y administracin de Sybase
EAServer, consulte la documentacin que acompaa el producto, o visite
http://sybooks.sybase.com.

EAServer en Sun Solaris

Las versiones de Sun Solaris anteriores a la 2.9 brindan varios modelos de "threading" para
aplicaciones servidor Java. Estos estn descritos en detalle en
http://java.sun.com/docs/hotspot/threads/threads.html. En Solaris 2.8 y versiones anteriores, el
modelo predeterminado usa una asociacin "muchos-a-muchos" entre "threads" de la aplicacin
y "threads" del kernel. Sybase ha encontrado que al correr servidores altamente estresados
usando el modelo predeterminado de "muchos-a-muchos", el servidor EAServer se puede
"colgar" o "caer" debido a problemas en la implementacin del "threading".
Estos problemas no se presentan al usar el modelo de "threading" 1-1 en Solaris 2.8 o 2.9. En
consecuencia, para servidores altamente estresados, Sybase sugiere intentar usar el modelo 1-1
si usted se encuentra con "colgadas" o "cadas" de EAServer.

EAServer en Solaris 2.9

Solaris 2.9 slo soporta el modelo de "threading" 1-1, en consecuencia estos problemas no son
aplicables ni ocurren en esa versin.

EAServer en Solaris 2.8


En Solaris 2.8, usted puede ejecutar EAServer con el modelo de "threading" 1-1 agregando
/usr/lib/lwp al frente de la variable de ambiente LD_LIBRARY_PATH. Por ejemplo:

LD_LIBRARY_PATH=/usr/lib/lwp:$LD_LIBRARY_PATH
exportLD_LIBRARY_PATH

Esta definicin causa que el servidor se ejecute con una versin alterna de las libreras de
"threading" que corresponden al modelo 1-1.

EAServer en Versiones Anteriores de Solaris

En versiones anteriores de Solaris, usted puede agregar la siguiente opcin a la propiedad


com.sybase.jaguar.jvm.options del servidor:

,XX:+UseBoundThreads

Esta definicin causa que la JVM (Mquina Virtual Java) se ejecute con "threads" de aplicacin
asociados a los "threads" del kernel. Sin embargo, en pruebas hechas por Sun y documentadas
en http://java.sun.com/docs/hotspot/threads/threads.html, esta opcin puede reducir
dramticamente el rendimiento.

Otros Problemas

EAServer con JRE 1.4.


En Sun Solaris, si usted est corriendo EAServer con JDK 1.4.1_04, al arrancar EAServer con el
comando ./startserver.sh -jdk14 -jvmtype server es posible que el servidor arroje el
siguiente error:

TMLfatalerror:file
/calm/conn/itg/tmlib/generic/src/posix_exception.c,line1041
Abortcoredumped
PressRETURNtoexit.

En este caso asegrese de usar el JVM correcto que viene con EAServer, el cual est ubicado en
el subdirectorio $JAGUAR/_jvm. Este problema ocurre con un archivo llamado libjsig.so, el cual
puede aparecer en diferentes ubicaciones.
El servidor se cae al desplegar entidades.
Al correr con JDK 1.3, el servidor se puede "caer" con una violacin de acceso en jvm.so si se
encuentra bajo una carga considerable cuando usted despliega entidades tales como un archivo
EAR J2EE. Este problema ha sido identificado como el "bug" de Sun ID 4780201 en JDK 1.3.1,
patch 6.

EAServer en Windows

Variable de Ambiente JAGUAR_RANDOMSEED

Cuando usted est corriendo EAServer en Windows, si usted no define la variable de ambiente
JAGUAR_RANDOMSEED, el servidor se puede "colgar" o "caer". Cree una variable de ambiente
del sistema llamada JAGUAR_RANDOMSEED y defina su valor en la ruta completa de algn
archivo que contenga datos aleatorios-Sybase recomienda que usted utilice el log de errores del
servidor-luego reinicie el servidor. Por ejemplo:
Variable: JAGUAR_RANDOMSEED

Valor: C:\sybase\EAServer\bin\jaguar.log
Para mayor informacin sobre la variable JAGUAR_RANDOMSEED, vea el captulo 3, "Creando
y Configurando Servidores", del manual EAServer System Administration Guide.

Ejecutando EAServer como un Servicio Windows

Si EAServer est corriendo con JDK 1.3 y es instalado como un servicio Windows, el servidor se
"cae" al cerrar la sesin con Windows. Esto es un problema documentado del JDK de Sun (Sun
Bugs #s 4324062, 4401654, y 4358808).
Para resolver este problema, configure EAServer de la siguiente manera, y luego reinicie su
mquina:
1. En Jaguar Manager, seleccione el servidor que se ejecuta como servicio.

2. Seleccione File | Server Properties

3. En la ventana de Server Properties, selecciones la pestaa All Properties.

4. Si la propiedad com.sybase.jaguar.server.jvm.options aparece:

a. Seleccione la propiedad y seleccione Modify.

b. Si el valor de la propiedad est vaco, escriba -Xrs; de otra manera


agregue ",-Xrs" al valor actual. Haga clic en Save.

5. Si la propiedad com.sybase.jaguar.server.jvm.options no aparece:

a. Seleccione Add.

b. En la ventana New Property, escriba estos valores y luego haga clic en


Ok:

Propery Name:
com.sybase.jaguar.server.jvm.options
Propery Value: -Xrs

Principales Caractersticas de Sybase EAServer 4.2

Saque provecho de sus recursos para aumentar el Retorno de Inversin

Es fcil. Est comprobado. Sybase EAServer es una solucin completa con el ms alto retorno
de inversin, para mover aplicaciones PowerBuilder hacia la Web. As que si los altos costos de
desplegar una aplicacin cliente/servidor en un ambiente Web lo estn invadiendo, usted
necesida la ayuda del servidor de aplicaciones de Sybase. La Extensin PowerBuilder a EAServer
brinda rpido acceso a una solucin Web sin el riesgo, tiempo e inversin requeridos para
rescribir sus aplicacin de ceros.
El rendimiento de clase empresarial mejora el Costo Total de Propiedad

Sybase EAServer provee alto rendimiento y escalabilidad, asegurando que sus aplicaciones
responden a los objetivos globales de su empresa, con acceso 7x24. El rendimiento de EAServer
est soportado por las siguientes caractersticas:
Valor
EAServer es lder en valor cuando se trata de pruebas de precio / rendimiento. Las pruebas
SPEC* indican que EAServer es lder en servidores de aplicacin, brindando los ms bajos costos
de operacin. Estos bajos costos aseguran que EAServer brinda el ms bajo costo de propiedad.
Eficiencia
Sin cliclos de CPU desperdiciados, EAServer es el ms eficaz servidor de aplicaciones disponible,
permitiendo a las organizaciones conseguir el rendimiento y costos requeridos. La eficiencia de
EAServer se mejora en EAServer 4.2 con el contenedor de EJB livianos, soporte a actualizaciones
en lote o diferidas, un nuevo monitor de threads y una avanzada tecnologa de cachs,
incluyendo un cach local de transacciones optimizado para CMP (Contanier Managed
Persistence).
Cachs
Los algoritmos dinmicos de cachs mejoran significativamente el rendimiento y mejoran los
tiempos de respuesta de la apliccin. Los cahcs son usados para tener acceso rpido a datos y
conexiones de bases de datos frecuentemente utilizados.
Clustering
El clustering toma ventaja del poder de computacin de bajo costo disponible,
independientemente del hardware y sistema operativo. Los patrones avanzados de balance de
cargas aseguran que la comunicacin entre cliente y servidor est balanceada con la mnima
latencia y tiempos de respuesta.
Disponibilidad
El fail-over inteligente est embebido, incluyendo la habilidad de cambiar a cualquier nodo del
cluster, sin importar su ubicacin en la red, plataforma o arquitectura de componentes.
Manejabilidad
Agilidad para el despliegue y servicio sin interrupcin, permitiendo un fino control sobre
aplicaciones activas en ejecucin. EAServer soporta el despliegue en "caliente" de nuevos
componentes de negocio de manera transparente sin interrumpir la operacin del negocio. El
manejo de versiones del repositorio brinda la habilidad de llevar a cabo el seguimiento de los
componentes desplegados o de reversar cualquier componente de negocio transparentemente
sin interrumpir la operacin.
* SPEC en pruebas internas 12/2002

Desarrollo abierto para crear flexibilidad en la ingeniera

El desarrollo y entrega de aplicaciones en la economa de hoy requiere que si equipo de


desarrollo trabaje de la manera ms eficiente, productiva y veloz, posible. Los ambientes de
desarrollo que eliminan los pasos tediosos de desarrollo son esenciales para ayudar a entregar
sus proyectos a tiempo y dentro del presupuesto. Y una vez usted ha invertido tiempo y recursos
en estos ambientes, usted necesita maximizar esa inversin.
La mxima productividad viene de integrar su ambiente de desarrollo con su servidor de
aplicaciones, automatizando tareas tediosas y repetitivas, y capitalizando en el conocimiento que
si equipo de desarrollo tiene de herramientas existentes.
Sybase y nuestros aliados proveen las herramientas que usted necesita para maximizar la
productividad del desarrollo, sin importar su ambiente Web, lenguaje de desarrollo, o ambiente
de desarrollo de aplicaciones.
Ambientes Integrados de Desarrollo
Borland jBuilder Enterprise
EMACS
Sybase PowerJ
Sybase PowerBuilder

Ambientes Integrados de Diseo y Modelamiento


Sybase PowerDesigner
Together Control Center
Thought CocoBase Enterprise O/R

Manejo Integrado de Aplicaciones


AdventNet

Servicios Web para Sybase EAServer

Los Servicios Web son aplicaciones modulares que pueden ser descritas, publicadas, ubicadas e
invocados a travs de una red a travs de mensajes estndar construidos en XML. Definidos por
nuevas tecnologas como el Protocolo Simple de Acceso a Objetos (SOAP), le Lenguaje de
Descripcin de Servicios Web (WSDL), y Descubrimiento, Descripcin e Integracin Universales
(UDDI), ste es un nuevo modelo para crear aplicaciones e-Business a partir de mdulos de
software reutilizables a los que se accede a travs de la Web.

Los Servidores de Aplicacin son un elemento integral para el xito al desarrollar y desplegar
Servicios Web. Sybase EAServer soporte totalmente todos los estndares de Servicios Web y
permite a las empresas exponer rpidamente sus funciones de negocio como Servicios Web.
Hasta ahora, la mayor parte de los esfuerzos haban sido enfocados hacia Servicios Web
orientados a funciones que exponen una funcin simple del negocio para ser usada en otro lugar
de la empresa o en el exterior con clientes y asociados. El valor real de los Servicios Web viene
cuando las compaas entregan Servicios Web seguros de clase empresarial que permiten:

Interaccin sin una relacin de negocio predefinida


Entrega de funciones de negocio a un conjunto ms amplio de clientes, empleados y
asociados
Nuevos modelos de negocio que combinen aplicaciones y recursos de una manera
dinmica para ganar ventaja competitiva

EAServer hace que los Servicios Web sean tangibles y fciles de incluir como parte de la
arquitectura de desarrollo de hoy, y permite a los equipos de desarrollo cortar los tiempos de
desarrollo y reducir los costos.
Servicios Web para Implementaciones Preexistentes
EAServer se ha convertido en un producto integral para el desarrollo y despliegue de Servicios
Web por su habilidad de exponer componentes existentes como Servicios Web. Los
desarrolladores se benefician del enfoque de Servicios Web de Sybase EAServer ya que pueden
reutilizar sus conocimientos existentes y sus prcticas comunes para el desarrollo de e-Business,
y aplicarlos fcilmente al desarrollo de Servicios Web para resolver sus problemas de
integracin.
EAServer brinda toda la funcionalidad para exponer su lgica de negocio existente con
funcionalidad de clase empresarial. Esto incluye completa escalabilidad con soporte a ambientes
"cluster" y balance de cargas. Con EAServer, los negocios pueden ensamblar y desplegar
Servicios Web que encapsulan lgica de negocio en un servicio seguro y auto-descriptivo que se
ejecute funciones compuestas e independientes del negocio. Los Servicios Web de clase
empresarial desarrollados con EAServer heredan y explotan capacidades integradas y avanzadas
de seguridad, incluyendo punto nico de entrada, control de acceso basado en roles, y Objetos
Seguros de Negocio (SBOs).

Web Services Toolkit y Message Bridge for Java para Menores Tiempos de Desarrollo
Web Services Toolkit (WST) acelera el desarrollo orientado a servicios brindando la habilidad de
exponer lgica de negocio existente como un Servicio Web. Usando la herramienta de
administracin de EAServer, los desarrolladores pueden crear grficamente nuevos Servicios
Web a travs de simples pasos.

EAServer tambin provee una interfaz grfica para automatizar la publicacin y manipulacin de
los Servicios Web de su compaa. Este enfoque aumenta la productividad de los
desarrolladores, ya que no requieren trabajar directamente con un registro UDDI.
Complementando el desarrollo de Servicios Web, WST puede generar archivos proxy cliente que
los desarrolladores pueden usar para acceder a Servicios Web en EAServer a travs de llamados
Java, eliminando la necesidad de un conocimiento extenso de los protocolos de Servicios Web.
Los equipos de desarrollo tendrn ahora un enfoque no programtico para agregar Servicios Web
como parte de sus proyectos de desarrollo.
Estas herramientas para Servicios Web brindan a los desarrolladores Java un soluciones no
programtica para establecer relaciones Java-XML. Los desarrolladores pueden asociar
documentos XML a objetos Java a travs de una herramienta grfica (GUI) de asociacin,
eliminando los costosos llamados de anlisis sintctico que usualmente son requeridos. En
tiempo de ejecucin, el motor Message Bridge maneja la transformacin de XML a Java y
viceversa. Esto permite a los desarrolladores manipular fcilmente XML dentro de sus
aplicaciones.
Hoy da, EAServer soporta componentes Java/CORBA, CICS Integrator y procedimientos
almacenados de base de datos. Estos procedimientos almacenados pueden ser de cualquier base
de datos Sybase, incluyendo ASE, SQL Anywhere e IQ; adicionalmente, soportar IBM, Oracle y
Microsoft. EAServer tambin puede soportar servicios de mensajera de iAnywhere, permitiendo
al desarrolladores exponer estos componentes como Servicios Web. En un futuro cercano,
EAServer agregar soporte de Servicios Web para Objetos No Visuales (NVO) de PowerBuilder y
componentes C/C++. La siguiente versin de EAServer brindar interfaces de programacin
(APIs) JAX y soporte para la disponibilidad continua de los Servicios Web.
EAServer cuenta con un robusto conjunto de herramientas que ayudan a automatizar el proceso
de desarrollo de Servicios Web, as como a proveer Servicios Web, y ayudan a acelerar el paso
con el que los servicios Web son adoptados dentro de las corporaciones.

Servicios Web en EAServer 4.1

Una Movida Inteligente hacia e-Business

Usted ha escuchado sobre el "boom" de los Servicios Web -- la tecnologa que promete llevar los
e-Business hacia la siguiente etapa. Est usted listo para tomar ventaja de esta tecnologa?
Est usted listo para explotar sus tecnologas existentes y entregar soluciones basadas en
Servicios Web?
Ahora, con Sybase EAServer, usted puede volver su negocio ms gil a travs del desarrollo y
despliegue de Servicios Web de clase empresarial. Sybase EAServer 4.1 -- el servidor de
aplicaciones ms abierto, que le brinda poder a las aplicaciones e-Busines -- permite que las
empresas expongan rpidamente sus funciones de negocio como Servicios Web.

Caractersticas para Web Services en EAServer 4.1

Desarrolle. El EAServer Web Services Toolkit permite a los desarrolladores crear, probar,
automatizar y desplegar fcilmente aplicaciones basadas en Servicios Web y conectarlas a
procesos de negocio existentes. El asistente de despliegue permite a los desarrolladores generar
rpidamente archivos de Lenguaje de Definicin de Servicios Web(1) y exponer componentes
como Servicios Web. El motor Message Bridge for Java automticamente maneja las
transformaciones de XML a Java y viceversa -- brindando un solucin no programtica de
asociacin XML-Java. Los desarrolladores pueden crear nuevos Servicios Web grficamente a
travs de simples pasos.

Provea. El asistente de despliegue permite a los negocios publicar Servicios Web a travs de
Descripcin, Descubrimiento e Integracin Universales (2) -- permitindoles encontrar e
interactuar rpidamente, fcilmente y dinmicamente con otros negocios. Los Servicios Web
desarrollados con EAServer heredan y explotan las caractersticas avanzadas de seguridad,
incluyendo punto nico de entrada, control de acceso basado en roles y Objetos Seguros de
Negocio(3), as como alta escalabilidad con balance de cargas y soporte a configuraciones de
"cluster".
Acceda. Completando el desarrollo de Servicios Web, el Web Services Toolkit puede crear
clientes proxy Java que los desarrolladores pueden usar para acceder los Servicios Web de
EAServer, eliminando la necesidad de un conocimiento extenso de los protocolos usados por los
Servicios Web.

(1)
Web Services Definition Language (WSDL)
(2)
Universal Description, Discovery and Integration (UDDI)
(3)
Secure Business Objects (SBOs)

Cmo Integrar Optimizeit en Sybase EAServer?


Resumen del Documento

Este documento describe cmo integrar el software Borland Optimizeit (Profiler, Thread
Debugger, Code Coverage) en Sybase EAServer. Los detalles de ste documento estn
desarrollados para Borland Optimizeit versiones 4.1 y 5.5 ejecutndose en Sybase EAServer
versin 4.2.2 y 5.0 (beta) usando JDK 1.3.1 y 1.4.1 sobre Microsoft Windows 2000. Partes de
este documento estn adaptadas de la documentacin de Optimizeit. Asumimos que usted ya ha
instalado el software Optimizeit apropiadamente.

Qu es Optimizeit?

Borland Optimizeit es una herramienta de ingeniera de software para identificar asuntos


relacionados al rendimiento en un programa Java. Optimizeit incluye tres herramientas GUI
(Profiler, Thread Debugger y Code Coverage) para identificar problemas de rendimiento y
confiabilidad en cdigo Java, incluyendo problemas de memoria, cuellos de botella en el
rendimiento y problemas en los threads. Para mayor informacin por favor visite el sitio Web de
Borland.

Cmo Trabaja Optimizeit?

Optimizeit est dividido en dos partes:


1. El Sistema de Auditoria (Audit System), el cual se ejecuta en la mquina virtual Java de
EAServer y recolecta los datos para el anlisis de rendimiento.

2. El GUI de Optimizeit, el cual se encadena al Sistema de Auditoria, despliega los datos de


anlisis de rendimiento e interacta con el Sistema de Auditoria.

Para poder integrar Optimizeit con EAServer, usted necesita arrancar el Sistema de Auditoria en
la mquina virtual de EAServer. Una vez el Sistema de Auditoria ha sido iniciado, usted puede
arrancar el GUI de Optimizeit y engancharse al Sistema de Auditoria. En ste punto, usted puede
obtener de sus Servlets, JSPs y EJBs slo con ejecutarlos. Las siguientes secciones explican
cmo configurar EAServer para correr el Sistema de Auditoria y cmo interactuar con el Sistema
de Auditoria que se est ejecutando en la mquina virtual de EAServer.

Cambios en la Configuracin de EAServer

Parmetros de Arranque de la Mquina Virtual

Los siguientes cambios son requeridos en el script de arranque de EAServer (%JAGUAR


%\bin\serverstart.bat) y en el archivo de propiedades del servidor (%JAGUAR
%\Repository\Server\Jaguar.props).
serverstart.bat
Modifique EAS_CLASSPATH_P1, agregando <Optimizeit_Directory>\lib\optit.jar.
setEAS_CLASSPATH_P1=%EAS_CLASSPATH_P1%;<Optimizeit_Directory>\lib\optit.jar
Modifique EAS_BOOTCLASSPATH_P1, agregando <Optimizeit_Directory>\lib\optit.jar y
<Optimizeit_Directory>\lib\oibcp.jar.
setEAS_BOOTCLASSPATH_P1=
%EAS_BOOTCLASSPATH_P1%;<Optimizeit_Directory>\lib\optit.jar
setEAS_BOOTCLASSPATH_P1=
%EAS_BOOTCLASSPATH_P1%;<Optimizeit_Directory>\lib\oibcp.jar
Modifique EAS_PATH_P1 para incluir el directorio <Optimizeit_Directory>\lib.
setEAS_PATH_P1=%EAS_PATH_P1%;<Optimizeit_Directory>\lib
Jaguar.props
Modifique la propiedad "com.sybase.jaguar.server.jvm.options" de EAServer (edite el
archivo %JAGUAR%\Server\Repository\Jaguar.props o con Jaguar Manager) y agregue los
siguientes valores:
Optimizeit 4.1
Esta versin slo soporta JDK 1.3. Por favor agregue lo siguiente a la propiedad mencionada
arriba:
classic,Xrunoii,Xrunpri,Djava.compiler=NONE,Xnoclassgc,DGCOPSIZE=5
Optimizeit 5.5
Si usted est usando JDK 1.3.1 clssic VM:
classic,Xrunoii,Djava.compiler=NONE,Xnoclassgc,DGCOPSIZE=5
Si usted est usando JDK 1.3.1 o 1.4.x o quiere usar JDK 1.3.1 con Hotspot VM:
Xrunoii,DGCOPSIZE=5
Por favor asegrese que "com.sybase.jaguar.server.jvm.nojit" tenga el valor "true" en el
archivo de propiedades del servidor.

Cmo Agregar el Servlet de Optimizeit a EAServer (Optimizeit 4.1 slamente)


1. Use el Jaguar Manager para hacer un deploy de la aplicacin web de Optimizeit. El
archivo WAR del servlet de Optimizeit est en
<Optimizeit_Directory>\lib\servlet\optimizeit.war

2. Despus de haber llevado a cabo el deploy, seleccione la aplicacin web de Optimizeit y


abra la ventana con sus propiedades. Defina el context-path a cualquier cosa que usted
quiera. Nosotros usaremos "optit".

2. Instale la aplicacin web "optimizeit" en el servidor Jaguar.

Nota Sobre Aspectos de Seguridad


Es posible que usted deba otorgar todos los permisos a la aplicacin Optimizeit para que se
ejecute apropiadamente en EAServer. Usted puede definir estos permisos modificando el archivo
de polticas ubicado en %JAVA_HOME%\jre\lib\security\java.policy. El directorio JAVA_HOME es
tpicamente %JAGUAR%\jdk\<version de jdk>.
Ejemplo: Las siguientes lneas se agregan al archivo de polticas mencionado arriba:
grantcodeBase"file:<Optimizeit_Directory>\lib\optit.jar"{
permissionjava.security.AllPermission;
};
Esto concluye los pasos que se deben hacer por nica vez para integrar Optimizeit en EAServer.

Cmo Habilitar el Sistema de Auditoria de Optimizeit en EAServer en


Tiempo de Ejecucin?

Los siguientes pasos son requeridos para activar el sistema Optimizeit en EAServer cuando ste
es iniciado.

1. Arranque del GUI de Optimizeit y EAServer

a. Usando el Selector del Sistema de Auditoria de Optimizeit (Optimizeit Audit Selector


System), seleccione la herramienta de Optimizeit que usted desee utilizar con EAServer.

b. Arranque EAServer en modo normal usando el JVM de su eleccin. Hemos probado


EAServer corriendo JDK 1.3.1 classic VM con Optimizeit 4.1. Usted puede arrancar
EAServer con JDK 1.3.1 o 1.4.1 Hotsport VM (servidor o cliente) adems de la VM
Classic con Optimizeit 5.5. Recomendamos usar la VM Classic para el anlisis de
Optimizeit.

%JAGUAR%\bin\serverstart.batjvmtypeclassic

Al usar JDK 1.4.1 con hotsopt VM (cliente o servidor), el siguiente mensaje de


error queda en la consola de EAServer. El sistema de auditoria funciona, pero
recomendamos verificar la documentacin de Optimizeit para ms detalles.
Usted puede elegir actualizar la propiedad de opciones de la JVM (-
Xrunoii:directi=f) para evitar esta advertencia.

********************************************************************
***********
Warning:Usingdirectinstrumentationisnotpossiblewiththis
virtualmachine.
Inordertominimizeprofileroverhead,itisbettertodisablethis
feature.

Todisablethisfeature,editthefile<OptItDir>/lib/directi.table
andmake
surethefollowinglineispresent:

disabledFor=({version="1.4.1_03";vendor="SunMicrosystems
Inc.";});

Youcanalsostartwiththeoptiondirecti=fex:
...Xrunoii:directi=f
********************************************************************
***********

2. Arranque del Servlet de Optimizeit (Optimizeit 4.1 slamente)

El servlet de Optimizeit le permite arrancar el Sistema de Auditoria de Optimizeit en la mquina


virtual de EAServer. Una vez Optimizeit se est ejecutando en la VM de EAServer, usted puede
engancharse a EAServer con la herramienta de Optimizeit que se elija, tal como Profiler, para el
anlisis de problemas de uso de memoria.
a. Invoque el Servlet desde un browser (http://localhost:8080/optit/Optimizeit).

b. Presione el botn Start en la pgina HTML del selector del Sistema de Auditoria. El
Thread Debugger no requiere del servlet de Optimizeit. El Thread Debugger es
automticamente arrancado cuando usted arranca EAServer y el Thread Debugger ha
sido seleccionado en el Selector del Sistema de Auditoria.

3. Enganche del GUI de Optimizeit a EAServer.

Una vez EAServer se est ejecutando con el Sistema de Auditoria de Optimizeit, usted puede
ahora engancharse a la JVM de EAServer.
a. Del men Program, seleccione Attach.

b. Cambie el nmero de puerto el nombre de host si es necesario.

Presione el botn Attach. Usted est ahora conectado a la JVM que se ejecuta
dentro de EAServer. Por favor haga referencia a la documentacin de Optimizeit
para leer sobre las caractersticas del GUI.
Referencias

1. Sybase EAServer System Administration Guide, disponible en la coleccin de documentos


del producto en http://sybooks.sybase.com/eag.html.
2. Documentacin de SunJDK 1.3.1 y 1.4.1
3. Documentacin de Optimizeit entregada con el software.

Publicando un Servicio Web en EAServer a Partir de un


Componente Existente
Introduccin

Usando el Web Services Toolkit y EAServer, Ud. puede explotar el poder de protocolos
emergentes como Simple Object Access Protocol (SOAP), Web Services Description Language
(WSDL), y Universal Description, Discovery, and Integration (UDDI).
Estos protocolos le permiten usar componentes de terceros, denominados Servicios Web o Web
Services, los cuales son invocados desde otras aplicaciones. El WSDL describe el servicio y puede
ser usado en aplicaciones cliente. Tambin es posible publicar servicios de informacin en sitios
de registro UDDI en Internet y hacer que su Servicio Web est disponible a otros usuarios. SOAP
provee una plataforma y un camino neutral e independiente de lenguajes, para acceder estos
servicios.
Para mayor informacin, consulte el manual "Web Services Toolkit User's Guide" en su
documentacin de "EAServer".

Contenido
Este documento contiene las siguientes secciones
1. Creando el componente en EAServer
2. Creando el nuevo documento WSDL
3. Adicionando la definicin del Servicio Web

1. Creando el Componente en EAServer

El presente documento demuestra de una forma sencilla la forma de exponer lgica de negocio
residente en un componente de EAServer como un Servicio Web. Para ello, ser usado el
componente construido en el documento Creacin de un Componente de EAServer con
PowerBuiler.
Antes de continuar con el desarrollo de los siguientes pasos, asegrese del correcto
funcionamiento del componente mencionado.

2. Creando el nuevo documento WSDL

Usando Jaguar Manager conctese como usuario Administrador (ej. jagadmin) al


servidor EAServer y haga lo mismo para la carpeta de Web Services Toolkit.
Una vez conectado al WST (Web Services Toolkit), expndalo y seleccione el tem "WSDL
Documents" y en el men seleccione la opcin File | New WSDL Document.
Responda los datos solicitados en la ventana que aparece de la siguiente manera:
- Definition Name : comp1
- Target Namespace : http://190.0.0.1:8080/ (URL valido para acceso al
documento. Asegrese de usar la direccin IP o nombre de mquina en donde se
ejecuta el servidor Jaguar y su puerto HTTP, que en este ejemplo suponemos 190.0.0.1 y
8080 respectivamente).
Opcionalmente puede escribir alguna descripcin para este documento WSDL.
Haga click en el botn OK.

3. Adicionando la definicin del Servicio Web

En Jaguar Manager, bajo la utilidad WST seleccione "WSDL Documents". En el panel


derecho, debe aparecer el nuevo documento que Ud. ha creado, seleccionelo y en el
men haga click en la opcin File | New Web Service.
En la ventana que se abre a continuacin, ingrese el valor del parmetro "Web Service
Name", haciendo click en el botn "browse" y buscando el paquete pack1 y el
componente comp1.
Opcionalmente puede escribir alguna descripcin para este documento WSDL.
Haga click en el botn OK.
Una vez aparezca en nuevo Servicio Web en el panel de la derecha, haga click derecho
sobre l y edite sus propiedades.
- En la seccin General, haga click en el boton "Add Address" e indique en port, el
puerto http de EAServer (por defecto 8080) y en host, el nombre de la maquina o
direccin IP en donde se ejecuta.
- Haga click en el botn "Select Operations" y seleccione los mtodos del componente
que desea publicar en este Servicio Web (en este caso, get_author_name)
Haga click en el botn OK.

Como resultado final, se deben encontrar los archivos WSDL respectivos (comp1.wsdl y
comp1Impl.wsdl), en el directorio %Jaguar%/WebServices/work/wsdl. Asegrese de copiar
estos archivos al directorio raiz de sus documentos en EAServer (por defecto es el directorio :
%JAGUAR%/html).
Estos archivos WSDL contienen las definiciones del Servicio Web y sern usados en la creacin
del cliente del servicio.

Invocando un Componente PB en EAServer desde un


Cliente EJB
Introduccin

Los componentes no-EJB (Enterprise Java Beans) pueden implementar diferentes interfaces
remotas(1). Para hacer referencia a y utilizar una interfaz remota desde un cliente EJB, Ud. debe
usar la interfaz home correspondiente. Use Jaguar Manager para crear una interfaz remota
home para cada interfaz que el componente implementa. La interfaz home debe tener un solo
mtodo: "create" sin parmetros y que retorna la interfaz remota.
En este ejemplo invocaremos un componente creado en PowerBuilder (No-EJB) e instalado en
EAServer, desde una pgina JSP (que actuar como cliente EJB)
Para mayor informacin, consulte el Capitulo 9 "EAServer EJB Interoperability" del manual
"EAserver Programmers Guide" en su documentacion de "EAServer".

Contenido

Este documento contiene las siguientes secciones


1. Creando la interfaz home
2. Generando los stubs EJB
3. Creando un nuevo Target JSP (si no ha creado uno anteriormente)
4. Creando la pagina JSP que invocar al componete
5. Prueba de funcionalidad de la pgina

1. Creando la interfaz home

Usando Jaguar Manager, conctese como usuario Administrador (ej. jagadmin) y


ubique el componente que desea invocar bajo el icono del servidor a usar.
Seleccione el men "File | Set Home Interface"
Acepte el valor por defecto, que debe ser de la forma:
module::component_interfaceHome
Verifique que esta interfaz posea un nico mtodo denominado create, en caso de no ser
as :
- Seleccione en el men "File | New Method"
- Como nombre de mtodo escriba "create".
- En las propiedades del mtodo defina qu retorna el nombre de la interfaz asociada,
(ej : MyPackage::MyComponent)
- En Exceptions Raised indique : CtsComponents::CreateException
- Haga click en OK y cierre la ventana de propiedades del mtodo.

2. Generando los stubs EJB

Usando Jaguar Manager seleccione el servidor y en l el paquete para el cual generar


los stubs
Seleccione la opcin del men "Select File | Generate Stub/Skeleton".
Seleccione la opcin "Generate Stubs" y como tipo seleccione "EJB"
Seleccione la opcin "Generate Java files"
Seleccione la opcin "Compile Java Stubs"
No modifique los dems parmetros y haga click en el boton Generate. Normalmente las
clases java generadas quedan ubicadas en %JAGUAR%\html\classes, as que asegurase
de que este directorio se encuentre incluida en la variable CLASSPATH cuando compile el
cliente.

3. Creando un nuevo Target JSP (si no ha creado uno anteriormente)

Inicie PowerBuilder (versin 9) y cree un nuevo workspace.


En el men "Tools | EAServer Profile" asegrese de configurar su servidor EAServer
(normalmente en puerto 9000 y usuario jagadmin). Pruebe dicha conexin.
En el nuevo workspace, usando el men "File | New" cree un nuevo target de tipo "JSP
Target".
Siga el asistente y no modifique los valores por defecto, con excepcin de ...
- En el campo "JSP Target" cambie SOLO el nombre del archivo PBT por el que Ud. desea
en su caso: jsp_app1.pbt

Como resultado final, el asistente debi generar un una estructura el el system tree ("rbol a la
izquierda") en donde Ud. crear la estructura de la aplicacin Web.
Observe que puede importar archivos como pginas HTML, imgenes y otros recursos en el
target, simplemente haciendo click con el botn derecho del ratn, y seleccionando las opciones
de importacin.

4. Creando la pagina JSP que invocar al componete

Haga click derecho sobre el rbol del sistema (system tree), sobre el target JSP y
seleccione "New", en el asistente seleccione "Web/JSP page"
Siga el asistente y no modifique los valores por defecto, con excepcin de ...
- Titulo : nombres_autores
- En el painter de edicin de html, en el panel inferior, haga click derecho y en el menu
desplegable seleccione "New Script - Server - JSP - <%...%>"
- En la edicin de la pagina debera aparecer un smbolo de server script similar a <%>,
seleccinelo y en el cdigo codifique:

try {
String nom ="",cod="";

java.util.Properties props = new java.util.Properties();


props.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY,"com.sybase.ejb.InitialContextFactory");
props.put(javax.naming.Context.PROVIDER_URL,"iiop://host:9000");
props.put(javax.naming.Context.SECURITY_PRINCIPAL,"jagadmin");
props.put(javax.naming.Context.SECURITY_CREDENTIALS,"");
javax.naming.InitialContext ctx= new javax.naming.InitialContext(props);

pack1.n_comp1Home home = (pack1.n_comp1Home)ctx.lookup("pack1/n_comp1");


pack1.n_comp1 comp = home.create();

cod=request.getParameter("cod");

nom= comp.get_author_name(cod);
out.println( "El nombre del autor es : <B>"+nom+"</B>");
}
catch (Exception ex)
{ ex.printStackTrace(); }

- Tenga en cuenta que debe cambiar las propiedades host, puerto, usuario, entre otras
para que este script se ajuste a su ambiente.
- El anterior script invocara a un mtodo get_author_name ubicado en un componente
n_comp1 de un paquete pack1. En este ejemplo se usa el componente creado en el
documento Creacin de un Componente de EAServer con PowerBuiler.
Cierre el painter de edicin, haga click derecho sobre el target JSP y realice el "Deploy"
de este target.

5. Prueba de funcionalidad de la pgina

Asegurase de que el servidor EAServer esta iniciado. Abra su browser de Internet e indique el
siguiente URL (para este caso, pasaremos un argumento cod cuyo valor es un cdigo de autor
como 172-32-1176)

http://<maquina>:8080/jspdemo1/nombres_autores.jsp?cod=172-32-
1176

(1) En un modelo distribuido de objetos, un objeto remoto es aquel cuyos mtodos pueden ser
invocados desde otro componente cliente, potencialmente sobre una mquina diferente. Un
objeto de ste tipo es descrito por una o ms interfaces remotas, que son las declaraciones de
los mtodos del objeto remoto, en donde reside la implementacin real de la lgica.

Creacin de un Componente de EAServer con


PowerBuiler
Introduccin

PowerBuilder provee herramientas para el desarrollo de objetos de usuario personalizados (no


visuales) y desplegarlos posteriormente como componentes en EAServer. Ud. puede desplegar
componentes creados en PowerBuilder en EAServer, instalados en sistemas operativos Windows,
Sun Solaris, Hewlett-Packard HP-UX, y IBM AIX.
Informacin ms detallada puede encontrarse en el capitulo "About Building an EAServer
Component" del manual "Application Techniques" de PowerBuilder.
Contenido

Este documento contiene las siguientes secciones:


1. Creando un nuevo componente
2. Conectando el componente a la Base de datos usando un cach
3. Agregando funciones (mtodos) al componente
4. Desplegando o Instalando el componente en EAServer
5. Prueba de funcionalidad del componente

1. Creando un nuevo componente

Inicie PowerBuilder (versin 8 9 preferiblemente) y cree un nuevo workspace.


En el men Tools - EAServer Profile asegrese de configurar su servidor EAServer
(normalmente en puerto 9000 y usuario jagadmin). Pruebe dicha conexin.
En el nuevo workspace, usando el men File - New cree un nuevo target de tipo
EAServer Component.
Siga el asistente y no modifique los valores por defecto, con excepcin de ...
- En el campo Application Name indique: comp1
- En el campo Package Name indique: pack1
- Indique que el tipo de componente es Standard Component
- El componente tiene soporte a Instance Pool Options
- En Transaction Support Options indique: Not Supported
- Habilite la opcin Auto Demarcation/Deactivation
- Seleccione en el men File - New Connection Cache.
Configure las propiedades del cach de conexiones.

Como resultado final, el asistente debi generar un PBL conteniendo la aplicacin, el objeto de
usuario y el proyecto para realizar el deploy cuando est listo el componente.

2. Conectando el componente a la Base de datos usando un cach a ASE

* Para ms informacin sobre creacin de cachs de conexin, vea el documento: Creacin de


un Cach de Conexiones en EAServer
Debido a que el componente va a ser usado por EAServer, usaremos los servicios de un cach de
conexiones pre-configurado en EAServer; para ello:
Edite (o abra) el componente (u objeto no visual) n_comp1 que cre en el asistente, en
el paso anterior.
En el script del evento activate del componente n_comp1 codifique :
// Profile JAGUAR_LOCAL
SQLCA.DBMS = "SYJ Adaptive Server Enterprise (EAServer
Components)"
SQLCA.Database = "pubs2"
SQLCA.AutoCommit = False
SQLCA.DBParm = "CacheName='Syb_ASE_cache'"

connect;


- El valor del parmetro CacheName es el nombre lgico con que fue creado el cach en
Jaguar Manager
- Para el caso de una base de datos ASA, el parmetro DBMS debe ser ODBC
En el script del evento deactivate del componente n_comp1 codifique :
disconnect;

3. Agregando funciones (mtodos) al componente

El siguiente paso es la adicin de los mtodos o funciones que deseamos en el componente, en


este caso crearemos los mtodos "suma" y "get_author_name"

Creacin de mtodos

En el painter de Script para el objeto n_comp1 cree una nueva funcin.


Como nombre de la nueva funcin indique "suma" y seleccione "integer" como tipo de
dato de retorno.
Defina para el mtodo dos argumentos de tipo integer n1 y n2.
En el cdigo de la funcin codifique:

return n1 + n2


En el painter de Script para el objeto n_comp1 cree una nueva funcin.
Como nombre de la nueva funcin indique "get_author_name" y seleccione "string"
como tipo de dato de retorno.
Defina para el metodo un argumento de tipo string cod.
En el cdigo de la funcin codifique:

string nombre

SELECT authors.au_lname+" "+authors.au_fname


INTO :nombre
FROM authors
WHERE authors.au_id = :cod ;

return nombre


Suponiendo que la base de datos tiene una tabla y unas columnas que hacen vlida la
anterior consulta.
Cierre el painter de edicin del objeto n_comp1 y guarde los cambios.

Luego, haga click en OK y refresque las propiedades. A continuacin intente hacer ping sobre a
este cach.

4. Desplegando o Instalando el componente en EAServer

Sin ningn painter abierto, seleccione el proyecto del system tree (rbol de la izquierda) y haga
click derecho sobre l; en el men desplegable seleccione "deploy" y verifique que el
componente sea exitosamente instalado en EAServer.

5. Prueba de funcionalidad del componente

Existen varias formas de probar un componente, pero una forma muy sencilla es usar la
capacidad de ejecucin MASP (Methos As Stored Procedure), ofrecida por EAServer. Para ello
EAServer debe tener configurado y funcional un listener TDS (por defecto est el el puerto
7878).
Ejecute el programa DSEDIT (incluido con Sybase Open Client) y defina un nuevo servidor
denominado easerver. Configure la ubicacin de EAServer con el puerto 7878. En el ejemplo se
supone que EAServer est instalado en el puerto 7878 y en la mquina SERVIDOR.

Cierre el DSEDIT y abra una sesin DOS (Command) y escriba

isql -Ujagadmin -Seaserver

y luego ejecute el componente indicando de la forma <paquete>.<componente>.<metodo>


argumentos.
para este caso sera:

pack1.n_comp1.suma 0,5,7 (el cero simplemente se coloca para recibir el


parmetro de salida - entero)

y para el otro mtodo:

pack1.n_comp1.get_author_name "","238-95-7766" (el string inicial "" se


coloca debido a que el mtodo devuelve un valor string)
Estos son los pasos bsicos de creacin de componentes y uso de caches de conexin desde PB.
El siguiente paso ser crear las interfaces visuales (clientes) que se conecten a EAServer y
ejecuten estos mtodos.

Creacin de un Cach de Conexiones en EAServer


Introduccin

Un Cach de Conexiones (connection cache), es una definicin en EAServer que permite


mantener un conjunto de conexiones a un servidor de base de datos y que puede ser usada por
componentes, ofreciendo mejoras en el rendimiento ya que puede eventualmente evitar una
nueva conexin fsica al RDBMS cuando un componente lo requiere. Estos cachs deben ser
configurados para una combinacin especfica de usuario-servidor.
Informacin ms detallada puede encontrarse en el capitulo 24, "Using Connection
Management," del manual "EAServer Programmer's Guide".

Contenido

Este documento contiene las siguientes secciones:


1. Creando un nuevo cach de conexiones
2. Configurando el cach de conexiones
3. Ejemplos

1. Creando un nuevo cach de conexiones

Inicie Jaguar Manager y conctese al servidor como un usuario Administrador (ej,


jagadmin).
Seleccione el folder Connection Caches.
Seleccione en men File | New Connection Cache.
Configure las propiedades del cach de conexiones.

2. Configurando el cach de conexiones

Los principales parmetros generales son:


Cache Name : Use una sola palabra, que puede incluir letras, nmeros y underscores
( _ ). No puede ser modificado y es sensitivo a mayscula y minsculas.
Server Name : Para cada tipo de conexin (driver), especifique :
o ODBC - el nombre del data source ODBC (DSN)
o CTLIB - el nombre de servidor como sera especificado en una conexin
ct_connect. En plataformas UNIX, el servidor debe estar registrado en el archivo
interfaces de EAServer. Para Servidores Windows, debe estar registrado en el
archivo ini\sql.ini de EAServer.
o JDBC - el URL apropiado para uso en llamados JDBC.
o OCI 7.X - el string de conexin o alias Oracle SQL*Net .
o OCI 8.X - el string de conexin o alias Oracle SQL*Net .
o OCI 9.X - el string de conexin o alias Oracle SQL*Net .
User Name : El nombre del usuario para conectarse a la base de datos.
Password : Clave del usuario para la conexin con la base de datos. Jaguar Manager no
muestra la clave. Para modificarla, ingrese un nuevo valor.
DLL or Class Name

Client Library 11.x - para conexiones Sybase Open Client Client-Library


ODBC - para conexiones usando driver ODBC.
JDBC - para conexiones usando driver JDBC.
OCI 7.x - para conexiones usando OCI 7.x.
OCI 8.x - para conexiones usando OCI 8.x.
OCI 9.x - para conexiones usando OCI 9.x.
Tipo Connection library name (UNIX)
Client Library 11.x o libjct_r.so en Solaris, AIX, Digital UNIX, y Linux.
o libjct_r.sl en HP-UX.
ODBC o libodbc.so (en $JAGUAR/intersolv/lib) para Solaris y AIX.
o libodbc.so (en /var/opt/DAU100/connect/lib) para Digital UNIX.

o libodbc.sl (en $JAGUAR/intersolv/lib) para HP-UX.


JDBC La clase Java para el driver :
o com.sybase.jdbc2.jdbc.SybConnectionPoolDataSource
o com.sybase.jdbc2.jdbc.SybDriver
OCI 7.x / 8.x / 9.x o libclntsh.so for Solaris, AIX, Digital UNIX, y Linux.
o libclntsh.sl for HP-UX.

Tipo Connection library name (Windows)


Client Library 11.x libjct.dll
ODBC odbc32.dll
JDBC o com.sybase.jdbc2.jdbc.SybConnectionPoolDataSource
o com.sybase.jdbc2.jdbc.SybDriver
OCI 7.x ociw32.dll
OCI 8.x / 9.x oci.dll
Enable Cache-by-Name Access : Permite que un componente use este componente
referenciando su nombre
Number of Connections in Cache : Nmero de conexiones en el pool

Siempre recuerde refrescar las propiedades del cach luego de modificarlas, para que los
cambios en el tengan efecto. Asegrese adems de ejecutar un ping para verificar la correcta
funcin / conexin del cach con el servidor de base de datos.

3. Ejemplos

Configurando un cach de conexiones para Sybase ASE (EAServer en Windows)

Configure el cach con los siguientes parmetros :


Cache Name : Syb_ASE_cache
Database type : Sybase_ASE.
ServerName: Sybase.
Username : sa
DLL or class name : libjct.dll
Seleccionar en los tipos de conectividad : Client Library 11.0
Enable cache-by-name acsess : habilitado
Maximum connection pool size : 10

Suponiendo que ASE est instalado en la mquina SERVER en el puerto 5000, verifique en el
archivo ini/sql.ini de EAServer, la existencia de lneas similares a:

[SYBASE]
query=NLWNSCK,SERVER,5000

Luego, haga click en OK y refresque las propiedades. Luego intente hacer ping sobre a este
cach.

Configurando un cach de conexiones para Sybase ASA (EAServer en Windows)

Configure el cach con los siguientes parmetros :


Cache Name : Syb_ASA_cache
Database type : Sybase_ASA.
ServerName: EAS Demo V9
Username : dba
Password : sql
DLL or class name : odbc32.dll
Seleccionar en los tipos de conectividad : ODBC
Enable cache-by-name access : habilitado
Maximum connection pool size : 10

Luego, haga click en OK y refresque las propiedades. Luego intente hacer ping sobre a este
cach. (Si el ping falla, verifique que el motor ASA est iniciado)

Observe los cachs que vienen pre-configurados con EAServer, como ejemplos adicionales
Configuracin del EAServer Redirector Plug-In para Apache
Introduccin

El servidor de aplicaciones Sybase EAServer es capaz de alojar aplicaciones Web y tambin sirve
como servidor Web. En versiones anteriores a la 4.0, se requera que un cliente se conectara
directamente a EAServer para tener acceso a los servlets y aplicaciones Web alojados en
EAServer. A partir de la versin 4.0, el redirector plug-in es instalado en el servidor Web y
permite enviar requerimientos de ejecucin de servlets, JSPs, etc. de EAServer, directamente al
servidor Web, el cual pasa dichos requerimientos a EAServer. EAServer procesa los
requerimientos y devuelve los resultados al servidor Web.
Este documento describe algunos aspectos importantes sobre la configuracin del web server
redirector plug-in para Apache, incorporado desde EAServer 4.0.

Cmo Funciona el Redirector Plug-In?

Como se ilustra en la Figura 1, el redirector plug-in enva requerimientos HTTP a EAServer. Para
que el servidor Web enve los requerimientos a EAServer usted debe:

1. Configurar EAServer para que acepte requerimientos del redirector.


2. Editar el archivo de configuracin del servidor Apache para:
o Ubicar y cargar el redirector plug-in.
o Configurar las rutas (paths) que definen cules requerimientos son pasados a
EAServer.
3. Instalar el redirector plug-in en el servidor Web.
4. Editar el archivo de configuracin del redirector plug-in para definir los servidores de
aplicacin hacia los cules el redirector enviar los requerimientos.

Figura 1 - Flujo de requerimientos HTTP a travs del redirector plug-in

Configuracin del EAServer Redirector Plug-In para Apache

1. Antes de Comenzar

Antes de comenzar asegrese de cumplir con los siguientes requerimientos mnimos:

Haber instalado y configurado el software Apache 1.3.22 (mnimo)


Tener conocimientos bsicos de operacin y administracin de Apache 1.3.22
Haber instalado y configurado el software Sybase EAServer 4.0 (mnimo)
Tener conocimiento bsicos de l operacin y administracin de Sybase EAServer 4.0

En este documento asumiremos que:

El directorio de instalacin de Apache es /home/Apache, y lo denotaremos con $APACHE

El directorio de instalacin de EAServer es /home/EAServer, y lo denotaremos non


$JAGUAR

Use los directorios que apliquen para su instalacin.

2. Configuracin de EAServer

Antes de configurara el redirector plug-in, usted debe configurar EAServer para que acepte los
requerimientos del redirector. Para esto, complete los siguientes pasos:
1. Baje EAServer.

2. Con un editor de texto (vi en Unix o Notepad en Windows) edite el archivo


Jaguar_http.props de EAServer. Por ejemplo:

prompt%cd$JAGUAR/Repository/Listener
prompt%viJaguar_http.props

3. Agregue al archivo Jaguar_http.props la siguiente lnea:

com.sybase.jaguar.listener.http.connector_events=true

4. Guarde los cambios al archivo y salga del editor de texto.

3. Configuracin de Apache

Para configurar Apache complete estos pasos:


1. Baje el servidor Apache.

2. Cmbiese al directorio de configuracin de Apache. Por ejemplo:

prompt%cd$APACHE/conf

3. Abra el archivo de configuracin httpd.conf con un editor de texto, por ejemplo vi en


UNIX o Notepad en Windows. Por ejemplo:

prompt%vihttpd.conf

4. En el archivo de configuracin de Apache busque la lnea que contenga la entrada


ServerName e indique all el nombre de su servidor. Por ejemplo:
...
ServerNameserver_name
...

donde server_name es el nombre de su servidor. Si el servidor se llama


www.suservidor.com la lnea se vera:

...
ServerNamewww.suservidor.com
...

Es recomendable que el nombre de servidor (por ejemplo


www.suservidor.com) aparezca en el archivo hosts del servidor (/etc/hosts en
UNIX o %windir%\system32\drivers\etc\HOSTS en Windows NT).
5. En el archivo de configuracin de Apache busque la lnea que contenga la entrada Port e
indique all en puerto TCP donde correr Apache. Por ejemplo:

...
Portport_number
...

donde port_number es el puerto TCP donde correr Apache. Si el puerto es 80,


la lnea se vera:

...
Port80
...

Tenga en cuenta que el puerto TCP seleccionado no puede estar en uso por
ningn otro servicio en la misma mquina.
6. Agregue las siguientes lneas al final del archivo de configuracin de Apache:

LoadModuleeasredirector_modulelibdir/libmod
EASConfigFile$APACHE/conf/conn_config
<LocationMatch/web_app/*>
SetHandlereashandler
</LocationMatch>

donde:
$APACHE es el directorio de instalacin de Apache
web_app es el nombre de la aplicacin Web
libdir es el directorio de libreras: libexec en Unix, o modules en Windows
NT
libmod es el nombre de la librera: libjeas_mod.so en Unix o
libjeas_mod.dll en Windows NT

Si hay ms de una aplicacin Web, separa cada aplicacin con el caracter | . Por
ejemplo:

LoadModuleeasredirector_modulelibdir/libmod
EASConfigFile$APACHE/conf/conn_config
<LocationMatch/web_app1/*|/web_app2/*>
SetHandlereashandler
</LocationMatch>
Si el directorio de instalacin de Apache es /home/apache y hay una aplicacin
Web llamada Servicios, las lneas se veran as:

LoadModuleeasredirector_modulelibexec/libjeas_mod.so
EASConfigFile/home/apache/conf/conn_config
<LocationMatch/Servicios/*>
SetHandlereashandler
</LocationMatch>

7. Grabe los cambios en el archivo de configuracin de Apache y salga del editor de texto.

El servidor Apache a quedado configurado.

4. Configuracin del EAServer Redirector Plug-In

Para configurar el EAServer redirector plug-in complete estos pasos:


1. Consulte la Tabla 1, y dependiendo de su plataforma, copie las siguientes libreras desde
$JAGUAR/lib a $APACHE/libexec (UNIX) o $APACHE\modules (Windows NT):

Plataforma Archivos a Copiar

NT libjeasproxy_mod.dll
libjcc.dll
libjctssecct.dll
libjintl.dll
libjsybscl.dll

libjeas_mod.dll

UNIX libjeasproxy_mod.so
(Solaris) libjcc.so
libjctssecct.so
libjintl_r.so
libjsybscl_r.so

libjeas_mod.so

Tabla 1 - Ubicacin de libraras para el redirector plug-in


2. Si su plataforma es Windows NT, omita este paso. Cambie los permisos de las libreras
que acaba de copiar. Por ejemplo:

prompt%chmodR+rwx$APACHE/libexec/*.so

donde $APACHE es el directorio de instalacin de Apache.

3. Cmbiese al directorio de configuracin de Apache y abra con un editor de texto (vi en


Unix o Notepad en Windows) el archivo de configuracin del redirector plug-in
conn_config (si el archivo no existe, crelo). Por ejemplo:

prompt%cd$APACHE/config
prompt%viconn_config
4. Agregue la siguiente lnea al archivo de configuracin del redirector plug-in:

Connector.WebAppweb_app=http://EAS_host:EAS_port

donde:
web_app es el nombre de la aplicacin web que quiere redireccionar
EAS_host es el nombre del servidor donde EASErver se est ejecutando
EAS_port es el puerto TCP asignado a EAServer

Por ejemplo, si la aplicacin web se llama Servicios, EAServer corre en el


servidor eas_prd, en el puerto 8080, la lnea se vera as:

Connector.WebAppServicios=http://eas_prd:8080

Si existen varias aplicaciones Web, agregue un lnea por cada una al archivo de
configuracin conn_config.
Por favor tenga en cuenta que:
El nombre del archivo de configuracin debe corresponder al usado en la lnea
EASConfigFile del archivo de configuracin de Apache, httpd.conf (vea el paso 3-6,
arriba).

El servidor donde corre EAServer debe ser accesible desde el servidor donde reside
Apache. Asegrese de que hay una entrada para dicho servidor en el archivo hosts.

5. Para Finalizar

Para finalizar y probar la configuracin, complete estos pasos:


1. Reinice EAServer.

2. Reinicie Apache.

Ahora usted puede ver la aplicacin Web conectndose directamente a Apache. Por ejemplo, si la
aplicacin Web se llama Servicios y esta contiene un Servlet llamado Inicio, y el servidor se
llama www.suservidor.com, use un URL como:

http://www.suservidor.com/Servicios/Inicio

Si tuviramos que conectarnos directamente a EAServer usaramos un URL como:

http://eas_prd:8080/Servicios/Inicio

Mayor Informacin

Para mayor informacin por favor consulte la documentacin que acompaa a Sybase
EAServer.

Mayor informacin sobre Apache se encuentra en http://www.apache.org.


Instalacin de un Certificado Digital de Prueba en Sybase
EAServer 4.x
Pasos para Instalar el Certificado Digital de Prueba

A. Generar un Certificate Signing Request (CSR).

1. Desde Jaguar Manager seleccione Tools -> Connect -> Security Manager
2. Escriba el PIN, que usualmente es sybase, y de click en Ok.
3. De click derecho en la carpeta Private Keys y seleccione Key/cert Wizard...
4. Llene el formulario que aparece, con los siguientes datos, y luego de click en Next >

Key strength: 1024


Key label: un indentificador nico, por ejemplo eas4_test

5. Llene el formulario que aparece a continuacin con los siguientes datos, y luego de click
en Next >

Common name: nombre del servidor, incluido el dominio (si aplica). Por ejemplo: www
o servidor1.compania.com.co
Organization: nombre de su empresa
Locality: ciudad
State/Province: departamento
Country: cdigo de 2 letras para el pas (co para Colombia)
Requestor name: Nombre de la persona que solicita el certificado
Los otros campos son opcionales

6. En la siguiente ventana aparece un cuadro de texto.

Copie y guarde el texto que aparece entre las lneas -----BEGIN NEW
CERTIFICATE REQUEST----- y -----END NEW CERTIFICATE REQUEST-----
INCLUYENDO las dos lneas.

El texto copiado se ve algo como:

BEGINNEWCERTIFICATEREQUEST
MIIBnDCCAQUCAQAwXjELMAkGA1UEBhMCY28xDjAMBgNVBAgTBUN1bmQuMQ8wDQYD
VQQHEwZCb2dvdGExFTATBgNVBAoTDE1ULUJhc2UgUy5BLjEXMBUGA1UEAxMOd3d3
Lm10YmFzZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANaZN4dEWIUX
TOLCsLfxc/3m4d0m+SqaOg1wsBimKGiETXzeapQ+h5Ea+7n/IvNUX+C0wPT+oluW
bzE5oBSwrEFgKs+ln5LI8BnC/gLF3azWlKyP2UX8a+K2v6sGpJQHHvxGL5KwH25Z
j9698wvk6EYqp+Hq+2xz0q1cJNTcb7tHAgMBAAEwDQYJKoZIhvcNAQEEBQADgYEA
UA5EB1r+BG2rDnDqE6bFhgMj6TLRi9TAt77zhmPUy9jXZBmcM7xa606/G3TH6J74
tkxWXBX/NpcyOYqQhOMOqqy0aotKRIOzm81JKrwVhDNysfuccLZBGGMbhQNPNr1k
BgGtxpCQWEhQMfAptT6CjGBvM6+fANhJ1wBeKV3Wge8=
ENDNEWCERTIFICATEREQUEST

Seleccione Save to File para guardar el texto en un archivo del sistema


operativo.

Una vez guardado el texto, de click en Next >


7. En la siguiente ventana aparece un cuadro de texto vaco donde usted debe pegar el
Certificado Digital de Prueba enviado por VeriSign, una vez usted lo ha solicitado
siguiendo las instrucciones en https://www.verisign.com/cgi-
bin/clearsales_cgi/leadgen.htm?form_id=0110&toc=b117228600110000&email=.
Los Certificados Digitales de Prueba no tienen costo alguno.

En el Paso 2 del procedimiento de solicitud del Certificado Digital de Prueba se


requiere que usted pegue el CSR que fue generado usando Jaguar Manager en el
paso A-6, arriba.

Es aconsejable NO cerrar el Asistente de Jaguar Manager hasta tanto usted no


haya recibido va e-mail el Certificado Digital de Prueba por parte de VeriSign.
Esto puede tomar hasta 2 horas.

Al recibir el Certificado Digital de Prueba va e-mail, pegue el texto entre las


lneas -----BEGIN CERTIFICATE----- y -----END CERTIFICATE-----
INCLUYENDO las dos lneas.

El texto copiado se ve algo como:

BEGINCERTIFICATE
MIICPzCCAekCEAePzOCO1VzY+d5egMY584gwDQYJKoZIhvcNAQEEBQAwgakxFjAU
BgNVBAoTDVZlcmlTaWduLCBJbmMxRzBFBgNVBAsTPnd3dy52ZXJpc2lnbi5jb20v
cmVwb3NpdG9yeS9UZXN0Q1BTIEluY29ycC4gQnkgUmVmLiBMaWFiLiBMVEQuMUYw
RAYDVQQLEz1Gb3IgVmVyaVNpZ24gYXV0aG9yaXplZCB0ZXN0aW5nIG9ubHkuIE5v
IGFzc3VyYW5jZXMgKEMpVlMxOTk3MB4XDTAyMDExODAwMDAwMFoXDTAyMDIwMTIz
NTk1OVowWDELMAkGA1UEBhMCQ08xDjAMBgNVBAgTBUN1bmQuMQ8wDQYDVQQHFAZC
b2dvdGExFTATBgNVBAoUDE1ULUJhc2UgUy5BLjERMA8GA1UEAxQIc29sYXJpczIw
gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALVT+5PLkomznlKmXYd+WokK3otF
zWo7KyK45JCvhsd0g9tebt29aS6kJxJOSrG6ll98GyX5LtWCczaD/1n1HmzUV5r2
UnnUCV/qIR6ar8bRO5yyDQDTt6uOFpulIwAztre76oVHMvp8hYSkMhmACDsZd0fj
4i8CwnlGKvquaUPfAgMBAAEwDQYJKoZIhvcNAQEEBQADQQBbuKViD17xk4DWvwUL
zYuuGPCpu9CmiDBva9vsO5M6E+rIFeeWhGuv7nId1UxVK/ZsdBl3tWBYiyxnNByu
MEPK
ENDCERTIFICATE

De click en Finish.

B. Crear un Security Profile en EAServer.

1. Desde Jaguar Manager seleccione Tools -> Connect -> Jaguar Manager
2. De click derecho en la carpeta Security Profiles y seleccione New Security Profile
3. Escriba un nombre para el nuevo perfil, por ejemplo, test_profile, y luego de click en
Create New Security Profile
4. En el siguiente formulario seleccione los siguientes datos y luego de click en Ok.

Security characteristics: sybpk_strong


Certificate label: el identificador nico especificado en el paso A-4, por ejemplo
eas4_test

C. Asociar el Security Profile a un Listener de EAServer

El Listener es el puerto o socket TCP que usar EAServer para establecer las
conexiones seguras.
1. Desde Jaguar Manager seleccione Tools -> Connect -> Jaguar Manager
2. De doble click en la carpeta Servers y seleccione el servidor Jaguar
3. De doble click en la carpeta Listeners y luego doble click sobre https1
4. En el formulario que aparece, proporcione la siguiente informacin, y luego de click en
Save:

Protocol: https
Host: nombre del servidor
Port: 8081
Jaguar Security Profile: nombre del Security Profile definido en el paso B-3, por
ejemplo test_profile

Nota: El nombre del servidor (Host) debe ser el mismo para el cul se solicit el
certificado (ver punto A-5).

D. Probar la Conexin Segura con EAServer

Antes de probar la conexin segura, usted debe reiniciar EAServer para que los cambios entren
en efecto.
Para probar al conexin segura con EAServer, desde su browser use un URL como

https://nombre-del-servidor:8081

donde nombre-del-servidor es el nombre del servidor, especificado en el punto C-4, arriba.


IMPORTANTE
Para poder establecer la conexin segura usando el Certificado Digital de Prueba recin
instalado, usted debe instalar un Test CA Root en cada Browser desde donde usted piensa
probar la conexin segura con EAServer, segn las instrucciones que se encuentran en
http://www.verisign.com/server/trial/faq/index.html. Este paso es SOLO necesario para
Certificados Digitales de Prueba obtenidos con VeriSign; para Certificados Digitales definitivos no
es necesario.

Cmo desplegar n registros por pgina con PowerDynamo?

Introduccin
Este documento ilustra un script PowerDynamo mediante el cual es posible manipular un
conjunto de resultados SQL, desplegando grupos de n registros por pgina. Para poder correr el
ejemplo, se asume la existencia de un sitio Web con conexin a la base de datos pubs2 de
Adaptive Server Enterprise.

Detalles
El script recibe como parmetro el nmero del registro inicial, y a partir de ah despliega los
siguientes n registros -- 10 en ste caso. Para desplegar el siguiente grupo de registros, se
realiza una invocacin recursiva al script. El script es el siguiente:

<HTML>
<TITLE>resultados.stm</TITLE>
<BODY>
<CENTER><H1>ResultadosdelaConsulta</H1></CENTER>
<!script
//nregeselnumeroderegistroinicial
varnreg=eval(document.value.nreg);

//Mximonmeroderegistroporpgina
varMAX=7;

//Construyolasentenciasql
varsql="selectau_lname+\"\"+au_fname,address"+
"frompubs3..authors"+
"orderbyau_lname";

//Creoyejecutolaconsulta
query=connection.CreateQuery(sql);
code=query.GetErrorCode();
info=query.GetErrorInfo();
if(code!=0){
document.writeln("Erroralejecutarconsulta:"
+info);
return;
}

//Inicializacindeunavariablebooleana
varsuccess=false;
vari=0;

//Medianteuncicloseubicaelapuntadorenelnumero
//deregistroquetieneelparmetrodeentrada.
for(a=1;a<=nreg;a++)
{
success=query.MoveNext();
i=i+1;
}

//Evalosihaymasregistros.
if(success)
{
//Inicializoelcontadordelosnregistros
varcounter=0;
document.writeln("<CENTER>");
document.writeln("<TABLEBORDER=\"1\"WIDTH="+
"\"60%\"BORDERCOLOR=\"#808080\">");
document.writeln("<TR>");
document.writeln("<TDWIDTH=\"35%\"VALIGN="+
"\"TOP\"ALIGN=\"CENTER\"BGCOLOR=\"#000000\">");
document.writeln("<B>"\"#FFFFFF\">");
document.writeln("<PALIGN=\"CENTER\">NOMBRES"+
"</B></TD>");
document.writeln("<TDWIDTH=\"25%\"VALIGN=\"TOP\""+
"ALIGN=\"CENTER\"BGCOLOR=\"#000000\">");
document.writeln("<B>"\"#FFFFFF\">");
document.writeln("<PALIGN=\"CENTER\">DIRECCION"+
"</B></TD>");
document.writeln("</TR>")
//Medianteuncicloescribocadaunodelosn
//registros
do{
document.writeln("<TR>");
document.writeln("<TDWIDTH=\"35%\"VALIGN="+
"\"TOP\"ALIGN=\"LEFT\"");
document.writeln("BGCOLOR=\"#FFFFFF\">"+
"</TD>");
document.writeln("<TDWIDTH=\"25%\"VALIGN="+
"\"TOP\"ALIGN=\"LEFT\"");
document.writeln("BGCOLOR=\"#FFFFFF\">"+
"</TD>");
document.writeln("</TR>")
document.writeln("<TR>");
document.writeln("<TDWIDTH=\"35%\"VALIGN="+
"\"TOP\"ALIGN=\"LEFT\"");
document.writeln("BGCOLOR=\"#c0c0c0\">");
document.writeln(query.GetValue(1)+"</TD>");
document.writeln("<TDWIDTH=\"25%\"VALIGN="+
"\"TOP\"ALIGN=\"LEFT\"");
document.writeln("BGCOLOR=\"#c0c0c0\">");
document.writeln(query.GetValue(2)+"</TD>");
document.writeln("</TR>");
counter++;
}while(query.MoveNext()&&counter<MAX);
document.writeln("</TABLE>");
query.Close();
query.Execute();
success=false;

document.writeln("<P><CENTER>");
//Evaluosinoeslaprimerconsulta
if(nreg!=1)
{
//Sinoeslaprimerconsulta,hagoun
//llamadorecursivo,soloquealparmetrode
//entradaledescuentoelnumeroderegistros
//quedeterminacadabloque,paraestecaso
//serMAX
document.writeln("["+
"PrimeraPgina".link("resultados.stm?nreg=1")+
"]");
document.writeln("["+
"RegistrosAnteriores".link("resultados.stm?nreg="+
eval(nregMAX))+"]");
}

//Evaluosihaymsregistros
for(a=1;a<=nreg+MAX;a++)
success=query.MoveNext();
if(success)
{
//Sihaymasregistros,hagounllamado
//recursivo,soloquealparmetrodeentrada
//lesumoelnumeroderegistrosquedetermina
//cadabloque,paraestecasoserMAX
document.writeln("["+
"RegistrosSiguientes".link("resultados.stm"+
"?nreg="+eval(nreg+MAX))+"]");
}
document.writeln("</CENTER></P>");
}
>
</BODY>
</HTML>

Anda mungkin juga menyukai