Mostrando entradas con la etiqueta forms. Mostrar todas las entradas
Mostrando entradas con la etiqueta forms. Mostrar todas las entradas

miércoles, 16 de octubre de 2019

FRM-10256 User is not authorized to run Oracle Forms Menu

Migrando una aplicación de Oracle Forms de una versión 11g a la última versión 12c se presenta el siguiente error al ejecutar una forma:


La razón del error anterior es que la aplicación está haciendo uso de seguridad por medio de los menús y no se ha migrado/creado la vista y sinónimos pertinentes.

Solución:


1. Ejecutar como usuario SYS el script que se encuentra en la ruta:
$ORACLE_HOME/tools/dbtab/forms/frmsec.sql

2. Ejecutar el siguiente grant:
Grant select on frm50_enabled_roles to public;

Verificación:

Por último se puede verificar los roles ingresando con un usuario y ejecutando la siguiente consulta que debe retornar los roles:

Select * from frm50_enabled_roles; 

Nota: este procedimiento también aplica para versión 10g y 11g.

miércoles, 18 de septiembre de 2019

Exception in thread "main" java.lang.UnsatisfiedLinkError: no frmjapi in java.library.path

Si al tratar de hacer uso de la librería de JDAPI para hacer modificaciones en nuestras formas, nos aparece el error siguiente:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no frmjapi in java.library.path

Es porque en nuestra variable PATH no está especificada la DLL (frmjapi.dll) que requiere el JDAPI y que se encuentra en la ruta: %DOMAIN_HOME%\bin

Una vez se agrega la ruta donde se encuentra la DLL en la variable PATH y se reinicia el IDE ya no nos dará el error antes mencionada y nuestro código funcionara correctamente.

viernes, 23 de agosto de 2019

FIX: The program can't start because MSVCP100.dll is missing from your computer. Try reinstalling the program to fix this problem.

Luego de haber instalado Oracle Forms 12c en Windows aparece el siguiente mensaje al tratar de abrir el Forms Builder:

The program can't start because MSVCP100.dll is missing from your computer. 
Try reinstalling the program to fix this problem.

Versiones afectadas:

12.2.1.0 a 12.2.1.3 Windows 64 bits.

Causa:

La guía de instalación solicita la instalación de MS Visual C++ 11.0
https://docs.oracle.com/en/middleware/fusion-middleware/12.2.1.3/sysrs/index.html#SYSRS3057

Aunque hayan instalado dicha librería el mensaje les aparecerá.

Solución:

Instalar las librerías de versión 10, además de las librerías de la versión 11 que ya previamente debemos haber instalado.

domingo, 14 de julio de 2019

WUC-21 Luego de parchar la instalación de Oracle Forms 10gR2 o 11gR1

Versiones afectadas:

Desde versión 10.1.2.3 to 11gR1

Error presentado:

WUC-21 : System Library http://hostname/forms/webutil/jacob.dll incorrect size in WebUtil Config. Download will be canceled.

Síntoma y solución:

Luego de haber realizado un parchado de la instalación de Forms o de haber hecho un upgrade del Jacob se puede presentar el error WUC-21 mencionando que el tamaño del archivo jacob.dll tiene un tamaño equivocado.

Para arreglar este error mostrado debemos seguir los siguientes pasos:

1. Bajar los servicios de la instancia OC4J.
2. Tomar respaldo del archivo webutil.cfg que se encuentra en la ruta:  %ORACLE_HOME%\forms\server
3. Editamos el archivo webutil.cfg y modificamos la siguiente linea:

install.syslib.0.7.1=jacob.dll|106496|1.10|true
install.syslib.0.9.1=JNIsharedstubs.dll|65582|1.0|true


4. Iniciamos los servicios nuevamente y al probar correr una forma no debe aparecer nada.


viernes, 31 de agosto de 2018

How to Integrate Forms 12c with OAM after a 12c Forms/Reports Installation

Bugs

BugProduct AreaBug IDLast Updated
CANNOT PROVISION USER IN LDAP GROUP ATTACHED TO APPLICATION POLICY B2BMONITOROracle SOA Suite28202276Fri, 31 Aug 2018 04:16 GMT-06:00

Knowledge Articles

Knowledge ArticleProduct AreaLast Updated
How to Integrate Forms 12c with OAM after a 12c Forms/Reports InstallationOracle Access Manager Oracle FormsThu, 30 Aug 2018 14:54 GMT-06:00

martes, 24 de julio de 2018

Manejo de caracteres como Ñ o tildes en Oracle Forms 12c

Si en nuestra Aplicación de Oracle Forms se deben manejar caracteres como el de la letra "Ñ" o tildes, pero al ser mostrados son reemplazados por caracteres como se ve a continuación:



Entonces debemos agregar a set de caracteres que contenga dichos caracteres a nuestro archivo de ambiente, que comúnmente es el archivo default.env

Debemos agregar la siguiente variable y con el siguiente valor:


NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1


Esta variable contiene el lenguaje, el territorio y el set de caracteres que permite que se vea la letra Ñ y tildes.

lunes, 28 de mayo de 2018

FRM-93242 error when trying to access Forms 12c cluster via OTD

When trying to access back-end Forms application FRM-93242 appears:


Oracle HTTP Server configured as proxy to Forms.

Forms applications is accesible through OHS successfully.

The error comes only when Forms applications is accessed through OTD (Oracle Traffic Director).


Cause:

Incorrect Cookie name being used.

OTD maintains session persistence and reads the request and response based on the cookie name.

Solution:

Ensure cookie name is the same on OTD and OHS.

On OTD the value for "Sticky URI Parameter" parameter must be the same as the value for "WLCookieName" parameter in forms.conf file.

miércoles, 28 de febrero de 2018

Error Symbol CreateIoCompletionPort was referenced en AIX

Al trabajar con productos Oracle sobre servidores AIX, puede darse que al tratar de iniciar un OHS o de ver un formulario de Oracle Forms, puede que se genere alguno de los siguientes errores:

OHS:

<2017-12-29 14:52:03> <INFO> <OHS-4018> <Starting server ohs1>
<2017-12-29 14:52:03> <INFO> <OHS-0> <Running /u01/app/oracle/product/fmw/ohs/bin/launch httpd -DOHS_MPM_WORKER -d /u01/app/oracle/product/fmw/user_projects/domains/forms_domain/
config/fmwconfig/components/OHS/instances/ohs1 -k start -f /u01/app/oracle/product/fmw/user_projects/domains/forms_domain/config/fmwconfig/components/OHS/instances/ohs1/httpd.conf>
<2017-12-29 14:52:04> <INFO> <OHS-0> <exec(): 0509-036 Cannot load program httpd because of the following errors:>
<2017-12-29 14:52:04> <INFO> <OHS-0> <rtld: 0712-001 Symbol CreateIoCompletionPort was referenced>
<2017-12-29 14:52:04> <INFO> <OHS-0> < from module /u01/app/oracle/product/fmw/wlserver/../lib/libclntsh.so(), but a runtime definition>
<2017-12-29 14:52:04> <INFO> <OHS-0> < of the symbol was not found.>
<2017-12-29 14:52:04> <INFO> <OHS-0> <rtld: 0712-001 Symbol GetMultipleCompletionStatus was referenced>
<2017-12-29 14:52:04> <INFO> <OHS-0> < from module /u01/app/oracle/product/fmw/wlserver/../lib/libclntsh.so(), but a runtime definition>
<2017-12-29 14:52:04> <INFO> <OHS-0> < of the symbol was not found.>
<2017-12-29 14:52:04> <INFO> <OHS-0> <rtld: 0712-002 fatal error: exiting.>
<2017-12-29 14:52:04> <SEVERE> <OHS-0> </u01/app/oracle/product/fmw/ohs/bin/launch httpd -DOHS_MPM_WORKER -d /u01/app/oracle/product/fmw/user_projects/domains/forms_domain/config
/fmwconfig/components/OHS/instances/ohs1 -k start -f /u01/app/oracle/product/fmw/user_projects/domains/forms_domain/config/fmwconfig/components/OHS/instances/ohs1/httpd.conf: exit st
atus = 255>
<2017-12-29 14:52:04> <INFO> <OHS-4005> <Check the instance log file for more information: /u01/app/oracle/product/fmw/user_projects/domains/forms_domain/servers/ohs1/logs/ohs1.log>
<2017-12-29 14:52:04> <SEVERE> <OHS-0> <Failed to start the server ohs1>


Causa:

IOCP se encuentra configurado con su valor por defecto “Defined” y el producto Oracle requiere que esté configurado como “Available”.

Solución:

Primero verificamos el valor actual del IOCP en nuestro sistema, para ello podemos ejecutar el siguiente comando:

Continua leyendo aquí.

lunes, 12 de febrero de 2018

Configurar Webutil para Oracle Forms 12c

Una de las librerías más importantes para todo desarrollador de Oracle Forms es la de Webutil, librería que nos ha proporcionado de funcionalidades para la interacción con el usuario final desde que el modo cliente/servidor quedo atrás. 

Ahora nos encontramos en la versión 12c de las tecnologías Oracle y es por ello que en esta ocasión detallaré los pasos para configurar la librería de Webutil para la versión 12c:

1.  Primero hay que crear un esquema en la base de datos para poder posteriormente compilar la librería webutil.pll. Contra este esquema es necesario ejecutar el archivo create_webutil_db.sql que se encuentra en el directorio $ORACLE_HOME/forms

2.  Luego que ya tenemos nuestro esquema de base de datos configurado será necesario conseguir los archivos de JACOB que utilizaremos para la configuración. Este se puede descargar desde aquí.

Nota: La única versión soportada para Forms 12c (12.2.1.0.0) de JACOB es la 1.18-M2.

3.  Descomprimimos el zip descargado y colocaremos el archivo jacob.jar en la carpeta de la ruta $ORACLE_HOME/forms/java

4.  Si el ambiente que estamos configurando es para desarrollo, debemos asegurarnos que el archivo $ORACLE_HOME/forms/java/frmwebutil.jar se encuentre en la variable FORMS_BUILDER_CLASSPATH del regedit.

5.  Ahora colocaremos los archivos dll de JACOB que vienen en el zip descargado en las carpetas respectivas

jacob-1.18-M2-x86.dll  ->  ORACLE_HOME/forms/webutil/win32
jacob-1.18-M2-x64.dll  ->  ORACLE_HOME/forms/webutil/win64

Nota: No cambiar el nombre de los archivos dll ya que con estos nombres se hace referencia en el archivo webutil.cfg

6.  Realizaremos la siguientes modificaciones a la configuración [webutil] del archivo formsweb.cfg, esto se puede hacer manualmente o a través del EM:

a. Verificamos que los archivos frmwebutil.jar y jacob.jar se encuentren en el parámetro WebutilArchive. En algunas versiones este paso ya esta hecho.

b. Especificamos que utilizaremos la forma webutil_demo.fmx como forma por defecto para la configuración de [webutil]

7.  Ahora descargamos la forma de webutil_demo desde el siguiente enlace:  http://www.oracle.com/technetwork/developer-tools/forms/webutil-090641.html  y colocamos la forma webutil_demo.fmb en la ruta $ORACLE_HOME/forms

8.  Ahora compilaremos la librería webutil así como la forma que recién descargamos, para ello desde linea de comandos ejecutaremos:

Nota: Utilizar para compilar la librería webutil.pll el esquema que cuenta con el paquete mencionado en el paso 1.

frmcmp module=webutil.pll module_type=library userid=scott/tiger@orcl compile_all=yes
frmcmp module=webutil_demo.fmb module_type=form userid=scott/tiger@orcl compile_all=yes


9.  Por ultimo probaremos el funcionamiento de la librería webutil, para ello en el navegador pondremos:

http://machine.domain:port/forms/frmservlet?config=webutil

Funcionalidad de los tabs "Client Info" y "About" deben funcionar sin ningún problema. Si estos tabs no funcionan se debe revisar que los pasos anteriores se hayan seguido correctamente:



lunes, 15 de enero de 2018

FRM-91500 en Linux/Unix

Si estamos tratando de compilar una librería o forma en Linux/Unix y obtenemos como resultado el siguiente error:

FRM-91500: Unable to start/complete the build.

Debemos validar que tengamos bien configurados el entorno gráfico si lo estamos haciendo desde una terminal.

Podemos validar haciendo un simple xclock u otro comando que sepamos que nos abrirá algo gráfico.

Si no hemos configurado la variable DISPLAY pues un ejemplo es:

export DISPLAY=192.168.30.190:0.0

Donde se deberá reemplazar con la IP y escritorio correspondiente.


jueves, 29 de junio de 2017

Oracle Forms 12c FRM-91135 fmcus.msb not found

Luego de una nueva instalación de Forms y Reports 12c y luego de intentar iniciar el Forms Builder por primera vez, el siguiente mensaje de error nos puede aparecer:

Oracle Fusion Middleware 12c Forms Services
FRM-91135: Fatal error: message file
ORACLE_HOME\forms\mesg\fmcus.msb not found.

El error se parece al de la siguiente imagen:


Igual comportamiento se puede ver al iniciar por primera vez el Reports Builder 12c.

Al revisar el Registro de Windows se aprecian solamente las siguientes variables:

Continuar leyendo aquí.





jueves, 6 de marzo de 2014

sun.security.pkcs11.ConfigurationException Unknown keyword 'useEcX963Encoding'

Cuando se está configurando Forms/Reports11gR2 en Solaris 11 Sparc y utilizar Jdk 1.7 puede que el asistente se quede en el paso de crear el servidor administrado WLS_FORMS. Si vamos a ver el log de éste Servidor veremos el siguiente mensaje de error:

java.lang.ExceptionInInitializerError
        at weblogic.rjvm.LocalRJVM.getLocalRJVM(LocalRJVM.java:72)
        at weblogic.rjvm.JVMID.<init>(JVMID.java:373)
        at weblogic.rjvm.JVMID.setLocalID(JVMID.java:239)
        at weblogic.rjvm.RJVMService.setJVMID(RJVMService.java:48)
        at weblogic.rjvm.RJVMService.start(RJVMService.java:30)
        at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
        at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused By: java.security.ProviderException: Error parsing configuration
        at sun.security.pkcs11.Config.getConfig(Config.java:71)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:110)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:86)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:224)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:206)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:206)
        at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:187)
        at sun.security.jca.ProviderList.getProvider(ProviderList.java:232)
        at sun.security.jca.ProviderList$3.get(ProviderList.java:147)
        at sun.security.jca.ProviderList$3.get(ProviderList.java:142)
        at java.util.AbstractList$Itr.next(AbstractList.java:358)
        at java.security.SecureRandom.getPrngAlgorithm(SecureRandom.java:542)
        at java.security.SecureRandom.getDefaultPRNG(SecureRandom.java:187)
        at java.security.SecureRandom.<init>(SecureRandom.java:155)
        at weblogic.rjvm.LocalRJVM.<init>(LocalRJVM.java:90)
        at weblogic.rjvm.LocalRJVM.<init>(LocalRJVM.java:28)
        at weblogic.rjvm.LocalRJVM$LocalRJVMMaker.<clinit>(LocalRJVM.java:31)
        at weblogic.rjvm.LocalRJVM.getLocalRJVM(LocalRJVM.java:72)
        at weblogic.rjvm.JVMID.<init>(JVMID.java:373)
        at weblogic.rjvm.JVMID.setLocalID(JVMID.java:239)
        at weblogic.rjvm.RJVMService.setJVMID(RJVMService.java:48)
        at weblogic.rjvm.RJVMService.start(RJVMService.java:30)
        at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused By: java.security.ProviderException: Error parsing configuration
        at sun.security.pkcs11.Config.getConfig(Config.java:71)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:110)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:86)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:224)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:206)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:206)
        at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:187)
        at sun.security.jca.ProviderList.getProvider(ProviderList.java:232)
        at sun.security.jca.ProviderList$3.get(ProviderList.java:147)
        at sun.security.jca.ProviderList$3.get(ProviderList.java:142)
        at java.util.AbstractList$Itr.next(AbstractList.java:358)
        at java.security.SecureRandom.getPrngAlgorithm(SecureRandom.java:542)
        at java.security.SecureRandom.getDefaultPRNG(SecureRandom.java:187)
        at java.security.SecureRandom.<init>(SecureRandom.java:155)
        at weblogic.rjvm.LocalRJVM.<init>(LocalRJVM.java:90)
        at weblogic.rjvm.LocalRJVM.<init>(LocalRJVM.java:28)
        at weblogic.rjvm.LocalRJVM$LocalRJVMMaker.<clinit>(LocalRJVM.java:31)
        at weblogic.rjvm.LocalRJVM.getLocalRJVM(LocalRJVM.java:72)
        at weblogic.rjvm.JVMID.<init>(JVMID.java:373)
        at weblogic.rjvm.JVMID.setLocalID(JVMID.java:239)
        at weblogic.rjvm.RJVMService.setJVMID(RJVMService.java:48)
        at weblogic.rjvm.RJVMService.start(RJVMService.java:30)
        at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
        at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused By: sun.security.pkcs11.ConfigurationException: Unknown keyword 'useEcX963Encoding', line 15
        at sun.security.pkcs11.Config.parse(Config.java:425)
        at sun.security.pkcs11.Config.<init>(Config.java:194)
        at sun.security.pkcs11.Config.getConfig(Config.java:67)

Para solucionar este error lo que debemos hacer es ir a modificar el archivo java.security que se encuentra en la ruta $JAVA_HOME/jre/lib/security

En el modificamos y quitamos la entrada siguiente:

security.provider.1=com.oracle.security.ucrypto.UcryptoProvider ${java.home}/lib/security/ucrypto-solaris.cfg
security.provider.2=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/sunpkcs11-solaris.cfg
security.provider.3=sun.security.provider.Sun
security.provider.4=sun.security.rsa.SunRsaSign
.....

A:

security.provider.1=com.oracle.security.ucrypto.UcryptoProvider ${java.home}/lib/security/ucrypto-solaris.cfg
security.provider.2=sun.security.provider.Sun
security.provider.3=sun.security.rsa.SunRsaSign
....

Nota: Asegurarse de reajustar el correlativo de los provider 1,2,3,4....

Luego de éste cambio reintentamos el paso en el cual se quedo el  asistente y continuará sin problemas.

Nota2: Otro workaround por éste error sería utilizar JDK 1.6


martes, 31 de diciembre de 2013

Configurar Webutil para Oracle Application Server 10g

A continuación detallo los pasos necesarios para la configuración de la librería Webutil para un servidor de aplicaciones Oracle Application Server 10g (OAS).
  1. Obtener la versión correcta de Webutil:

  2. Es importante mencionar que la versión de Webutil debe ser igual que la versión de Forms, por ello si tenemos un OAS con versión 10.1.2.3 la versión de Webutil debe ser 10.1.2.3. Es por ello que antes de configurar el Webutil recomiendo que ya se encuentre el servidor parchado a la versión 10.1.2.3 para evitar en un futuro tener que volver a configurar.

    En el OAS por defecto el Webutil no viene integrado como un componente, es por ello que debemos obtenerlo de una instalación de "Developer Suit" el cual debe ser la misma versión que nuestro OAS.

  3. Obtener la versión correcta de Jacob
  4. Si la versión es 10.1.2.0.2 o 10.1.2.2 debes usar el Jacob 1.8
    Si la versión es 10.1.2.3.X debes usar el Jacob 1.10.1

  5. Creamos el directorio "webutil" 
  6. %ORACLE_HOME%\forms\webutil

  7. Copiamos los siguientes archivos a la ruta %ORACLE_HOME%\forms\webutil
  8. jacob.dll --> incluidos en  el jacob que hayamos  descargado según versión requerida.
    d2kwut60.dll --> obtenerlo del Developer Suite en la ruta %ORACLE_HOME%\forms\webutil
    JNIsharedstubs.dll --> obtenerlo del Developer Suite en la ruta %ORACLE_HOME%\forms\webutil
    sign_webutil.bat --> obtenerlo del Developer Suite en la ruta %ORACLE_HOME%\forms\webutil

  9. Copiar el archivo jacob.jar del jacob descargado a la ruta %ORACLE_HOME%\forms\java

  10. Si hemos aplicado el parche 9593176 o 9282569 o 11710576 no debemos realizar este paso, pues ya el frmwebutil.jar se encuentra en la ruta correcta.
  11. Copiamos el frmwebutil.jar que se encuentra en la ruta %ORACLE_HOME%\forms\java del Developer Suite a la misma ruta del OAS:  %ORACLE_HOME%\forms\java

    Nota: Si estamos usando la versión 10.1.2.0.2 se deberá aplicar el parche 5017052 pues éste agrega unos archivos javascript así como modifica los archivos base para el servlet de Forms.

  12. Firmamos el jacob:
  13. Desde linea de comando o la terminal hacemos lo siguiente:
    - Nos movemos a la ruta: %ORACLE_HOME%\forms\java
    - Luego configuramos la variable de ambiente PATH: set PATH=%ORACLE_HOME%\jdk\bin;%PATH%
    - Ejecutamos el siguiente comando:
    %ORACLE_HOME%\forms\webutil\sign_webutil.bat %ORACLE_HOME%\forms\java\jacob.jar




  14. Verificamos que en la ruta %ORACLE_HOME%\forms\server se encuentre el archivo webutil.cfg, de lo contrario lo copiamos de la instalación del Developer Suite.

  15. La siguiente variable debe estar definida en el archivo %ORACLE_HOME%\forms\server\default.env
  16. WEBUTIL_CONFIG=<ORACLE_HOME>\forms\server\webutil.cfg

  17. Los siguientes jars deben ser incluidos a la variable CLASSPATH del archivo %ORACLE_HOME%\forms\server\default.env
  18. %ORACLE_HOME%\forms\java\frmall.jar;%ORACLE_HOME%\forms\java\frmwebutil.jar;%ORACLE_HOME%\forms\java\jacob.jar;%ORACLE_HOME%\jdk\jre\lib\rt.jar




  19. El archivo formsweb.cfg debe contener la siguiente configuración:
  20. [webutil]
    WebUtilArchive=frmwebutil.jar,jacob.jar
    WebUtilLogging=off
    WebUtilLoggingDetail=normal
    WebUtilErrorMode=Alert
    WebUtilDispatchMonitorInterval=5
    WebUtilTrustInternal=true
    WebUtilMaxTransferSize=16384
    baseHTMLjinitiator=webutiljpi.htm
    baseHTMLjpi=webutiljpi.htm
    archive=frmall.jar
    lookAndFeel=oracle




  21. El siguiente directorio virtual debe estar definido en el archivo %ORACLE_HOME%\forms\server\forms.conf:
  22. AliasMatch ^/forms/webutil/(..*) "%ORACLE_HOME%/forms/webutil/$1"




  23. Creamos un usuario de base de datos "webutil" y ejecutamos en él el script que se encuentre en el Developer Suite:
  24. %ORACLE_HOME%\forms\create_webutil_db.sql




  25. Compilamos la librería webutil.pll para obtener su correspondiente archivo compilado plx y lo movemos a una ruta definida en el FORMS_PATH como %ORACLE_HOME%\forms
También podemos compilar la forma de webutil_demo.fmb en caso de tenerla y copiamos su respectivo archivo compilado fmx en la misma ruta %ORACLE_HOME%\forms.

Por ultimo ejecutamos la forma desde el navegador para verificar que todo este bien:

http://host:port/forms/frmservlet?config=webutil&form=webutil_demo&userid=webutil/webutil@db

miércoles, 25 de diciembre de 2013

librwu.so: libXm.so.2: cannot open shared object file: No such file or directory

Al tratar de iniciar los servicios de Forms/Reports para AS10gR2 en Red Hat EL 5 nos encontramos con el siguiente error en el log de opmn:


java.lang.UnsatisfiedLinkError: $ORACLE_HOME/lib/librwu.so: libXm.so.2: cannot open shared object file: No such file or directory

Ésto es debido a que la versión del paquete openmotif no es la correcta, para ello podemos bajar el openmotif correcto para ésta versión del siguiente enlace:


Para instalarlo:

# rpm -ivh openmotif21-2.1.30-11.EL5.i386.rpm

Con este cambio se iniciaran sin problema el servicio.

sábado, 21 de diciembre de 2013

Certificación de Oracle Forms / Reports Builder en Windows 8

Bueno, ¿cuáles son las versiones certificadas/soportadas de Oracle Forms/Reports Builder 11g para instalar sobre Windows 8 (32/64 bits)?

Hasta la fecha, no hay una versión que se encuentre certificada/soportada de Forms/Reports Builder sobre Windows 8, como lo hace constar la nota número 1578459.1 del sitio de soporte de Oracle, por lo que se insta a que todo el desarrollo se realice sobre sistemas operativos certificados como Windows 7.

En el siguiente enlace encontrarán la matriz de certificación para mayor información:
Matriz FMW 11g

domingo, 9 de junio de 2013

Configurar Webutil para Oracle Forms 11g

Como desarrolladores en Oracle Forms 11g sabremos la importancia de la librería Webutil en nuestras formas, es por ello que daré a continuación los pasos necesarios para instalar exitosamente esta librería  la siguiente configuración aplica para ambientes de desarrollo como para ambientes de despliegue:


  1. Para la compilación de la librería webutil.pll es necesario tener un esquema de base de datos que contenga el paquete contenido en el archivo create_webutil_db.sql que se encuentra en el directorio ORACLE_HOME/forms es por ello que luego de la creación del esquema se deberá correr el archivo mencionado.

  2. Luego que ya tenemos nuestro esquema de base de datos configurado será necesario conseguir los archivos de jacob que utilizaremos para la configuración. Dependiendo el Release de nuestro Forms así sera el jacob que deberemos conseguir:

    1. Forms11gR1 11.1.1.X -> jacob 1.10.1 
      http://sourceforge.net/projects/jacob-project/files/jacob-project/1.10.1/jacob_1.10.1.zip/download

      Forms11gR2 11.1.2.X -> jacob 1.14.3
      http://sourceforge.net/projects/jacob-project/files/jacob-project/1.14.3/jacob-1.14.3.zip/download

  3. Descomprimimos el zip descargado y colocaremos el archivo jacob.jar en la carpeta de la ruta ORACLE_HOME/forms/java

  4. Ahora deberemos firmar el archivo jacob.jar para ello haremos: ORACLE_INSTANCE\bin\sign_webutil.bat ORACLE_HOME\forms\java\jacob.jar    

  5. Si el ambiente que estamos configurando es para desarrollo debemos asegurarnos que ORACLE_HOME/forms/java/frmwebutil.jar
     se encuentre en la variable FORMS_BUILDER_CLASSPATH 
    del regedit

  6. Ahora colocaremos el archivo jacob.dll que se encuentra en la carpeta que descomprimimos a su carpeta destino dependiendo del Release de la versión de Forms utilizada:

      FormsR1:
      jacob.dll ->  ORACLE_HOME/forms/webutil

      FormsR2:
      jacob-1.14.3-x86.dll ->  ORACLE_HOME/forms/webutil/win32
      jacob-1.14.3-x64.dll ->  ORACLE_HOME/forms/webutil/win64

  7. Luego agregamos ORACLE_HOME/forms/java/frmall.jar a la variable CLASSPATH que se encuentra en el archivo default.env

  8. Realizaremos la siguientes modificaciones a la configuración [webutil] del archivo formsweb.cfg:

      a. Agregamos los archivos frmwebutil.jar y jacob.jar al parámetro WebutilArchive. En algunas versiones este paso ya esta hecho.

      b. Especificamos que utilizaremos la forma webutil_demo.fmx como forma por defecto para la configuración de [webutil]

  9. Ahora descargamos la forma de webutil_demo desde el siguiente enlace:  http://www.oracle.com/technetwork/developer-tools/forms/webutil-090641.html  y colocamos la forma webutil_demo.fmb en la ruta ORACLE_HOME/forms
Artículo completo aquí.