Note de référence : Forms 9.x et 10.x : dépannage des erreurs FRM-92050, FRM-921xx
S'APPLIQUE À : Oracle Forms - Version 10.1.2 à 11.1.2.0.0
Oracle Forms - Version 10.1.2 à 11.1.2.0.0 [versions 10.1.2 à 11g]
Les informations de ce document s'appliquent à toutes les plateformes.
OBJET : FRM-92050, FRM-92100, FRM-92101, FRM-92102 dans Oracle Forms
Exactitude des versions vérifiée le : 07-Feb-2011
Fournir des conseils et des solutions de dépannage pour les erreurs génériques FRM-92050, FRM-92100, FRM-92101, FRM-92102, p. ex.
qui peuvent survenir lors du déploiement d'une application Oracle Forms sur le Web.
ÉTAPES DE DÉPANNAGE pour FRM-92050 FRM-92100 FRM-92101 FRM-92102
PORTÉE ET APPLICATION
9i
Oracle 9iAS Rel 2 Forms Services (Forms 9i (9.0.2))
Oracle 9iDS Rel 2 (Forms 9i (9.0.2))
N'est plus pris en charge.
10G R1
Oracle Application Server 10g (9.0.4
Oracle Developer Suite 10g (9.0.4) (Forms 10g (9.0.4))
N'est plus pris en charge.
10G R2
Oracle Application Server 10g (10.1.2)
Oracle Developer Suite 10g (10.1.2) (Forms 10g (10.1.2.))
PAR OÙ COMMENCER ?
FRM-92050
FRM-92100
FRM-92101
FRM-92102
Lors de l'exécution de votre application Forms, vous pouvez rencontrer diverses erreurs FRM. Ces erreurs peuvent être déclenchées par plusieurs conditions différentes. Lorsque vous les recevez, vous devez obtenir davantage d'informations pour les résoudre. Dans cette section, nous verrons quelques-unes des erreurs courantes que l'on peut rencontrer et comment les résoudre.
De manière générale, les erreurs FRM sont dues aux causes suivantes.
Problèmes de configuration :
Certaines erreurs FRM sont dues à des problèmes de configuration. Par exemple, le service Forms n'est pas démarré, ou il écoute sur un port différent de celui indiqué dans le fichier HTML. En général, ces erreurs se reproduisent systématiquement.
Plantage du processus serveur Forms :
La majorité des erreurs FRM qui surviennent après l'établissement d'une connexion réussie et le démarrage du formulaire sont dues à un plantage du serveur. Une fois le processus serveur arrêté, le client ne peut plus continuer à fonctionner : l'applet n'a pas de vie propre et ne peut pas continuer à s'exécuter sans pouvoir communiquer avec le processus serveur.
Ces erreurs sont souvent difficiles à diagnostiquer : le problème peut ne pas se reproduire systématiquement, ou l'utilisateur peut ignorer la séquence d'événements qui a mené au plantage.
Problèmes réseau :
La communication entre l'applet et le processus Forms Server a subi des problèmes réseau et a été interrompue.
Consultez la matrice Table A-1 ci-dessous : elle énumère les erreurs FRM -92xxx dues à ces causes et explique brièvement leur signification.
Si la matrice "Table A-1" ne vous aide pas à résoudre le problème, essayez de vérifier les informations suivantes
Elles aideront les services de support Oracle à identifier et à résoudre le problème.
Si possible, copiez et collez la liste ci-dessous dans la nouvelle SR, en plus d'y ajouter vos informations.
1. Le problème est-il reproductible à volonté ?
2. Quelle est la fréquence approximative du problème ? Se produit-il systématiquement à la suite d'étapes bien définies ?
S'il ne se reproduit pas systématiquement, lequel des énoncés suivants décrit le mieux sa fréquence :
a. Une seule occurrence jusqu'à présent.
b. Une fois par mois
c. Quelques fois par mois
d. Une fois par semaine
e. Quelques fois par semaine
f. Une fois par jour
g. Quelques fois par jour
h. Une fois par heure
i. Quelques fois par heure
h. De nombreuses fois par heure
4. Le problème se produit-il dans des instances de production, de test ou de développement ?
Se produit-il dans plus d'une instance ?
S'agit-il d'un système cloné ?
5. Sur quelle plateforme Oracle iAS / iDS Forms est-il installé ?
6. Quelle est la version exacte de la ou des instances où le problème se produit ?
7. Quels patchsets et/ou correctifs ponctuels (one-off) sont installés sur ces installations ?
Pour obtenir la liste des correctifs ponctuels installés, exécutez la commande suivante :
opatch -lsinventory
8. Sur quel(s) type(s) d'installation le problème se reproduit-il :
a. IDS
b. OAS
9.L'erreur se reproduit-elle avec les dernières versions prises en charge d'Oracle Jinitiator / du plug-in Sun ?
a) Votre problème se reproduit-il dans un environnement pris en charge ?
Notez que les services de support Oracle ne peuvent pas ouvrir de demande de bogue sur un environnement non pris en charge.
10. L'erreur se reproduit-elle avec un formulaire simple comme le test.fmx fourni avec
l'installation par défaut d'Oracle AS ou d'Oracle DS, p. ex.
http://machinename.domain:portno/forms90/f90servlet?form=test.fmx
http://machinename.domain:portno/forms/frmservletet?form=test.fmx
11. Le problème a-t-il commencé à se produire après un changement dans le système ?
a. Après une mise à niveau d'une version à une autre.
b. Après l'installation de correctifs pour des produits Oracle et/ou le système d'exploitation.
c. Des changements de configuration.
d. L'installation de nouveaux rapports ou de nouvelles applications sur le serveur d'applications.
La console Java de JInitiator
Si vous utilisez JInitiator et qu'une erreur Java survient, l'erreur est écrite dans la barre d'état du navigateur. Celle-ci n'affiche toutefois pas la pile d'erreurs Java complète : vous devez la chercher dans la console Java de JInitiator.
Si vous avez activé la console Java en cochant son option dans l'applet JInitiator du Panneau de configuration d'un ordinateur Windows, la fenêtre de la console JInitiator s'ouvre lorsque votre formulaire s'exécute dans un navigateur. L'applet JInitiator du Panneau de configuration se trouve dans l'option Start | Settings | Control Panel de Windows. Si la console Java de JInitiator n'apparaît pas, vous pouvez toujours l'ouvrir manuellement en double-cliquant sur son icône dans la zone de notification de la barre des tâches.
Comment activer la trace Forms
Note:271095.1 - How to Interpret Forms Listener Servlet Debug / Log Information?
Note 219471.1 - Forms Servlet Logging Explained
http://www.oracle.com/technetwork/developer-tools/forms/documentation/trace9i-133379.pdf
Problèmes connus
Problèmes : si vous tentez d'ouvrir une nouvelle session de navigateur.
L'erreur FRM-92100 se produit lorsqu'une nouvelle session Forms est lancée à partir d'une session Forms existante, ou qu'une autre URL est appelée depuis la fenêtre de navigateur parente de l'applet Forms ?
Note:251915.1 - FRM-92050 When Invoking a Second Forms Session in a New IE Browser Window
Bug:2715718 (corrigé dans la version : 9.0.2)
FRM-92050 CONNECTION FROM NEW BROWSER WINDOW NOT SUPPORTED
Bug:2688385 (corrigé dans la version : 9.0.2)
NOT ABLE TO RUN 2 FORMS SERVLET SESSIONS AT THE SAME TIME FROM PORTAL
Bug:2481184 (corrigé dans la version : 9.0.4)
FRM-92050:FORMS 9I:WHEN RUNNING FORMS SERVLET IN MULTIPLE IE SESSION.
Bug:2689990 (corrigé dans la version : 9.0.4)
SESSION-TRACKING COOKIES="DISABLED" IN ORION-WEB.XML STILL SENDS COOKIE IN HDR
Paramètres NLS_LANG.
Bug:2667950 - GETTING FRM-92100 OR FORM HANGS WHEN NLS_LANG SET TO JAPANESE_JAPAN.UTF8
FRM-92100 and error: java.io.UTFDataFormatException java.io.DAtaInputStream.readUTF(Unknown Source) occurs when NLS_LANG is not set or has an incorrect value.
Set NLS_LANG in the default.env ( or customized envFile) to a correct value.
Utilisation de RUN_PRODUCT
Le built-in RUN_PRODUCT ne fonctionne plus dans Forms 10G / 9i.
Utilisation de SSO avec Forms
FRM-92050 lors de l'intégration de Forms 9i / 10g avec SSO
Vérifiez que l'intégration Single Sign-on de Forms 9i / 10g a été correctement configurée.
Note 980793.1 Troubleshooting Oracle Forms 10gR2 Single Sign-On (SSO) Integration Issues
Problèmes pouvant être causés par les postes clients.
Ces vérifications peuvent aider à résoudre un problème ou à en identifier la cause.
a) Si vous utilisez Oracle Jinitiator, essayez de vider les JAR ou le jcache de Jinitiator
b) Si vous utilisez MS Internet Explorer, vérifiez que les autorisations et les options de sécurité sont correctement définies.
c) Lancez Microsoft Internet Explorer.
Sélectionnez Tools -> Internet Options dans le menu principal.
Cliquez sur l'onglet SECURITY :
Choisissez Local Intranet Zone dans la liste.
Cliquez sur Custom Level.
Sélectionnez Java Permissions - Custom dans la liste.
Cliquez sur Java Custom Settings.
Sélectionnez l'onglet Edit Permissions.
Choisissez Enable pour Run Unsigned Content.
Choisissez Enable pour Run Signed Content.
Sélectionnez l'onglet ADVANCED.
Faites défiler jusqu'à Java VM.
Cochez l'option Java console enabled.
Sélectionnez l'onglet CONNECTIONS.
Cliquez sur le bouton LAN Settings.
Si IE utilise un serveur proxy : cochez la case Bypass proxy server for local addresses. Cliquez sur le bouton Advanced et saisissez le domaine local dans la zone Exceptions.
Utilisez la forme *.domain.com, où domain.com correspond à votre domaine local.
Cliquez sur OK pour fermer la boîte de dialogue.
Cliquez sur OK pour enregistrer les modifications et quitter IE.
Anti-spy de Yahoo.
Supprimez le logiciel pirate (hijacker) à l'aide d'Anti-spy de Yahoo
Frm-92050:Failed to connect to the Server:
/prod/oracle.forms.servlet.ListenerServlet/session:
java.io.IOException:
Negative contentlength occurs when Hijacker software installed on the computer.
The hijacker software called Comet. font
Problèmes liés aux paramètres de proxy ou au mode HTTPS
Vous utilisez Oracle Jinitiator 1.3.1.8 / 1.3.1.9 avec un proxy inverse en mode HTTPS ?
Bug:2673273 - JINITIATOR DOESN'T WORK WITH REVERSE PROXY IN HTTPS MODE
Problème d'expiration du délai (time-out)
Essayez de modifier les paramètres FORMSXX_TIMEOUT et heartbeat, surtout si les déconnexions coïncident avec des périodes où les utilisateurs laissent leurs sessions Forms inactives.
Note:549735.1 - Ext/Pub Description List For Parameters Affect Timeout In Webforms
Note:271611.1 - Long Running Query / Procedure Causes Web Deployed Forms 6i - 9i to Disconnect?
Bug:2121212 - WEBFORMS:FORMS LISTENER SERVLET GET READ TIMEOUT WHEN LONG DB PROGRAM RUNS.
Bug:3032966 - LONG RUNNING PROCEDURE CAUSES DISCONNECT
Note:271611.1 - Long Running Query/ Procedure Causes Web Deployed Forms 6i - 9i to Disconnect?
Ce problème est corrigé grâce au paramètre de servlet maxBlockTime, introduit dans :
Oracle Forms 9i patchset 3 (9.0.2.3) ou ultérieur,
et Oracle Forms 10g (9.0.4)
Paramètres de l'instance OC4J de Forms.
10G R2(10.1.2.x)
Note:294749.1 - Troubleshooting WebForms Tuning / Performance /Time out Problems:
Note:271095.1 - How to Interpret Forms Listener Servlet Debug / Log Information?
Problèmes avec un répartiteur de charge tiers
Vous utilisez une répartition de charge entre machines assurée par le système d'exploitation ou un logiciel tiers ?
Remarque : les principes décrits dans ce livre blanc peuvent s'appliquer à Forms 9i / 10g Services e. Vous utilisez une répartition de charge entre machines assurée par le système d'exploitation ou un logiciel tiers ?
Des problèmes peuvent survenir lorsque vous utilisez une solution du système d'exploitation ou un logiciel tiers (p. ex. Windows Load Balancing) pour répartir la charge entre des machines hébergeant des configurations Forms Listener Servlet. Ce sera notamment le cas si la solution de répartition de charge ne conserve pas les informations de session ou ne gère pas la persistance des sessions.
Par exemple :
Deux machines, machineA et machineB, hébergent Oracle AS Forms Services.
Un poste client appelle l'URL de l'application Forms.
Le mécanisme de répartition de charge du système d'exploitation ou du logiciel tiers dirige la requête du client vers l'une des machines.
L'applet Forms est initialisée et le client est connecté à un processus Forms Runtime sur cette machine, p. ex. machineA.
Par la suite, une déconnexion ou une interruption inattendue survient sur le réseau.
La connexion est ensuite rétablie.
Si le logiciel de répartition de charge du système d'exploitation ou tiers n'a pas conservé les informations sur la session précédente, il peut rediriger le client vers la 'mauvaise' machine, c.-à-d. machineB.
Comme aucun processus Forms Runtime correspondant ne s'exécute sur cette machine, la session Forms du client reste interrompue.
Comment vérifier ce scénario ?
· Renommez ou supprimez les fichiers access_log, error_log et jserv.log existants sur les machines A et B.
· Arrêtez puis redémarrez le middle tier d'Oracle AS afin que de nouvelles versions de ces journaux soient créées
· Sur le poste client, activez la console Java d'Oracle Jinitiator.
· Exécutez l'application Forms jusqu'à ce que la déconnexion ou l'échec se produise
· La console Java d'Oracle Jinitiator devrait contenir une chaîne JServSessionIdroot unique
· p. ex. elle peut ressembler à 'axct5t4fa1.pR9GpBiTmA4Up6XxmkLCpRbOcx4Sc3m)
· Recherchez cette chaîne dans les fichiers access_log des deux machines A et B
. La chaîne ne doit apparaître que dans l'un des fichiers access_log.
Si elle apparaît dans plus d'un access_log, la solution de répartition de charge du système d'exploitation ou tierce
a redirigé le client vers la 'mauvaise' machine. Les horodatages
des access_logs indiquent aussi à quel moment la déconnexion s'est produite.
Erreur FRM-92101 Not enough space
Après un plantage du serveur et une tentative de restauration du middle tier d'Oracle AS, l'erreur
suivante apparaît de très nombreuses fois dans le fichier application.log :
….formsweb: Not enough space ...
Reviewing the RDA output I see in the Operating system setup ----> System Error Log the following output:
Sep 8 14:31:28 <address>AFSR 0x00000000.00100000<CE> AFAR 0x00000000.97caf310
Sep 8 14:31:28 <address> AFSR.PSYND 0x0000(Score 05) AFSR.ETS 0x00 Fault_PC 0x1178e7c
Sep 8 14:31:28 <address> UDBH Syndrome 0x31 Memory Module U1302
Sep 8 14:31:28 <address> unix: [ID 566906 kern.warning] WARNING: [AFT0] Most recent 3 soft errors from Memory Module U1302 exceed threshold (N=2, T=24h:00m) triggering page retire Sep 8 14:31:28 <address> unix: [ID 618185 kern.notice] NOTICE: Scheduling removal of page 0x00000000.97cae000 Sep 8 14:31:28 <address> SUNW,UltraSPARC-II: [ID 855227 kern.info] [AFT0] errID 0x0002b711.55a0ccff Corrected Memory Error on U1302 is Persistent Sep 8 14:31:28 <address> SUNW,UltraSPARC-II: [ID 755585 kern.info] [AFT0] errID 0x0002b711.55a0ccff ECC Data Bit 0 was in error and corrected Sep 8 14:31:28 <address> unix: [ID 693633 kern.notice] NOTICE: Page 0x00000000.97cae000 removed from service
Cause
Le comportement et les erreurs consignés dans le fichier application.log sont dus au problème de mémoire
de ce serveur UNIX, conformément à l'erreur signalée dans le fichier System Error log.
Aucun périphérique de swap n'est configuré. La sortie de la commande swap -l indique "No swap devices configured"
Solution
Configurez correctement la mémoire de swap.