IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Websphere Java Discussion :

[Websphere] Pb de versions


Sujet :

Websphere Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut [Websphere] Pb de versions
    Bonjour,

    J'ai déployé un EAR sur un serveur websphere 5.1, or j'ai besoin de faire tourner mon appli sur un serveur websphere 5.0......
    J'ai fais tous mes tests sur du 5.1 mais l'application existe depuis longtps et tournait, à une époque sur du 5.0..

    Lorsque je la fais tourner sur du 5.0, j'ai l'erreur suivante (la page de login se lance sans pb, mais des que je veux acceder a la BD, j'ai ce message :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    [20/01/06 17:03:34:161 CET] 557c07ed Helpers       W NMSV0605W: Un objet de référence recherché dans le contexte "java:", dénommé "comp/env/jdbc/DataSource", a été envoyé au gestionnaire de dénomination JNDI et une exception a été renvoyée. Des données de référence suivent :
    Nom de classe de la fabrique de référence : com.ibm.ws.util.ResRefJndiLookupObjectFactory
    URL des emplacements de classes de la fabrique de références : <null>
    Reference Class Name: java.lang.Object
    Type: ResRefJndiLookupInfo
    Content: com.ibm.ws.util.ResRefJndiLookupInfo@5948c7fe ResRefJndiLookupInfo: Look up Name="jdbc/DataSource";JndiLookupInfo: jndiName="jdbc/DataSource"; providerURL=""; initialContextFactory=""
     
     
    Des données sur les exceptions suivent :
    javax.naming.NameNotFoundException: Context: localhost/nodes/localhost/servers/server1, name: jdbc/DataSource: First component in name jdbc/DataSource not found.  Root exception is org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0
    	at com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.handleNameNotFound(WsnOptimizedNamingImpl.java:1983)
    	at com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.getNextWsnOptimizedNamingContext(WsnOptimizedNamingImpl.java:1320)
    	at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.getTargetContext(WsnOptimizedNamingImplBase.java:2424)
    	at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase$LeafOperationData.<init>(WsnOptimizedNamingImplBase.java:2877)
    	at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.resolve_complete_info(WsnOptimizedNamingImplBase.java:1390)
    	at com.ibm.WsnOptimizedNaming._NamingContextStub.resolve_complete_info(Unknown Source)
    	at com.ibm.ws.naming.jndicos.CNContextImpl.cosResolve(CNContextImpl.java:3491)
    	at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1519)
    	at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1480)
    	at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1187)
    	at com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory$1.run(IndirectJndiLookupObjectFactory.java:372)
    	at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:111)
    	at com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory.getObjectInstanceExt(IndirectJndiLookupObjectFactory.java:221)
    	at com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory.getObjectInstance(IndirectJndiLookupObjectFactory.java:149)
    	at com.ibm.ws.util.ResRefJndiLookupObjectFactory.getObjectInstance(ResRefJndiLookupObjectFactory.java:127)
    ETC
    A priori, un pb de datasource ....

    Sur le serveur de recette (5.0), l'erreur dit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    [1/20/06 13:54:49:224 CET] 5aa89448 Helpers       W NMSV0610I: A NamingException is being thrown from a javax.naming.Context implementation. Details follow:
    Context implementation: com.ibm.ws.naming.java.javaURLContextRoot
    Context method: lookup(String)
    Context name: java:
    Target name: java:comp/env/jdbc/DataSource
    Other data: 
    Exception stack trace: com.ibm.websphere.naming.CannotInstantiateObjectException: Exception occurred while the JNDI NamingManager was processing a javax.naming.Reference object.  Root exception is com.ibm.websphere.naming.CannotInstantiateObjectException: Exception occurred while the JNDI NamingManager was processing a javax.naming.Reference object.  Root exception is java.lang.Exception: Attempted to use a 5.0 DataSource outside of a 2.3 servlet
    J'ai lu sur internet que cette derniere erreur etait corrigible : http://publib.boulder.ibm.com/infocenter/wasinfo/v5r0/index.jsp?topic=/com.ibm.wasee.doc/info/ee/ae/tdat_migdaapp.html

    Mais quels sont les impacts de passer de J2EE 1.2 à 1.3 ?

    Quelqu'un sait-il comment repasser en 5.0 ?

    Merci bcp !

    Florence

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Points : 445
    Points
    445
    Par défaut
    Lorsque tu redéploies ton application regénères-tu les classes déployées (si tu utilises des EJB uniquement) ?

    Par contre je ne comprends pas, ton appli fonctionne ou pas sous WAS5.1 ?

    En tout état de cause, ton problème vient du nooamge JNDI : il semblerait que tu n'aies pas déclaré la référence locale sur ton datasource (dans le fichier web.xml et les fichiers ibm-web-bnd.xmi et ibm-web-ext.xmi spécifiques à Websphere).

    Dans le cas de WAS5.1, le serveur ne trouve pas le nom JNDI "jdbc/DataSource" : comment as-tu appelé ton datasource, comment déploies-tu ton application (manuellement, Ant, ....) ?

    Dans la cas WAS5.0, même question, comment crées-tu ton datasource ? Il semblerait qu'il y ait un problème de version de servlet : vérifie l'en-tête du fichier web.xml pour voir quelle version de servlet est déclarée.

    Jacques Desmazières

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut
    Merci Jacques pour vos explications.
    Je vais me pencher dessus.

    Mon application fonctionne sous WAS 5.1, cela modifie-t-il vos conseils ?

    Merci bcp

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Points : 445
    Points
    445
    Par défaut
    Mon application fonctionne sous WAS 5.1, cela modifie-t-il vos conseils ?
    Non pas vraiment, mais je ne comprends pas dans ce cas la première stack

    Lorsque je la fais tourner sur du 5.1, j'ai l'erreur suivante (la page de login se lance sans pb, mais des que je veux acceder a la BD, j'ai ce message :
    Cela semble signifier que 'appli en WAS 5.1 ne fonctionne pas non plus, d'où ma question.

    Jacques Desmazières

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut
    Toutes mes excuses, c'est une erreur de ma part j'ai corrigé + haut.. Je voulais dire "Lorsque je la fais tourner sur du 5.0, j'ai l'erreur suivante (la page de login se lance sans pb, mais des que je veux acceder a la BD, j'ai ce message : etc"


    Sinon, pour répondre à ta question, je n'utilise pas d'EJB.
    Pour créer mon EAR, je fais un clic droit sur mon projet d'entreprise sous WSAD puis "Exporter" puis "fichier EAR" etc

    Dans mon web.xml, j'ai le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        <resource-ref id="ResourceRef_1047477698625">
        	<res-ref-name>jdbc/DataSource</res-ref-name>
        	<res-type>javax.sql.DataSource</res-type>
        	<res-auth>CONTAINER</res-auth>
        </resource-ref>
    Je ne sais meme pas à quoi ca fait référence ...
    Lorsque je consulte le web.xml vie l'interface graphique de WSAD, j'ai ien une rubrique "Références" avec écrit : "L'appli web fait référence aux ressources suivantes" : jdbc/DataSource
    Quand je clique sur ce nom, j'ai des détails (type, nom JNDI etc)
    Je pense donc que c'est cela que le serveur ne trouve pas non ?.

    Dans cette partie "Références" du web.xml (version graphique de WSAD), il y a 3 onglets : EJB, Ressources, Bibliotheques de balises JSP.
    Le details de la ressource jdbc/DataSource se trouve dans l'onglet Ressources, les 2 autres onglets sont vides..

    L'en-tête de mon web.xml est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
    J'ai tenté de le mettre en 2.3 mais cela donne :

    Trace de pile de l'exception imbriquée :
    com.ibm.etools.j2ee.xml.NotSupportedException: IWAE0082E Le type non reconnu ou pas encore supporté : PUBLIC_ID=-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN SYSTEM_ID=http://java.sun.com/j2ee/dtds/web-app_2_3.dtd
    Mais en effet je pense que c'est qqch dans ce style car le serveur de recette (en 5.0) donne un message d'erreur différent de mon serveur de dev et dit :
    DataSource was attempted to be used in a webmodule that was not level2.3
    :s

    Mon fichier im-webbnd.xmi contient bien la référence au datasource :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?xml version="1.0" encoding="UTF-8"?>
    <webappbnd:WebAppBinding xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:webappbnd="webappbnd.xmi" xmi:id="WebAppBinding_1" virtualHostName="default_host">
      <webapp href="WEB-INF/web.xml#WebApp"/>
      <resRefBindings xmi:id="ResourceRefBinding_1047477698625" jndiName="jdbc/DataSource">
        <bindingResourceRef href="WEB-INF/web.xml#ResourceRef_1047477698625"/>
      </resRefBindings>
    </webappbnd:WebAppBinding>

    Merci !

  6. #6
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2005
    Messages : 63
    Points : 163
    Points
    163
    Par défaut
    Dans la console d'administration Websphere de ton serveur WAS 5.0 va dans
    "Ressources"
    puis "Fournisseurs JDBC"

    Choisi le noeud et le serveur où est déployé ton appli, puis clique sur le bouton "Valider"
    Normalement, un lien hypertexte s'affiche dans le tableau en bas de page (dans le cas de la BDD oracle, c'est Driver Oracle)
    Clique dessus, puis clique sur le lien hypertexte "Sources de données".
    Dans la nouvelle page qui s'affiche, qu'est ce qui est écrit ?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut
    Je n'ai pas accès à la console d'administration du serveur WAS 5.0 de recette .... C'est réservé à l'équipe d'integration, dont je ne fais pas partie ..

    Mais je regarde sur mon serveur de dev, et il manque la déclaration du jdbc/DataSource

    Je regarde et vous tiens au courant !

    Merci

  8. #8
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2005
    Messages : 63
    Points : 163
    Points
    163
    Par défaut
    Il faudrait savoir si la source de donnée est correctement paramétré dans WAS. De quelle manière est déployée l'application ?

    Une autre source d'erreur peut être la manière dont est initialisée la connexion. Est ce que l'on pourrait voir le code ?

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut
    Bon en effet je n'avais aps déclaré le datasource au niveau du serveur 5.0 (je suis vraiment aps experte en informix ..:s)

    Mais j'ai toujours une erreur
    Je continue mes recherches

    Qqun peut me dire ont sont les logs de websphere en local ?..

    Merci

  10. #10
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2005
    Messages : 63
    Points : 163
    Points
    163
    Par défaut
    Citation Envoyé par babylone7
    Qqun peut me dire ont sont les logs de websphere en local ?..
    Sur ton serveur WAS, tu as les logs de ton appli dans /exec/products/websphere/v5.0/AppServer/logs/"nom_du_serveur_ou_est_deploye_l'appli"

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 214
    Points : 84
    Points
    84
    Par défaut
    Merci à tous, j'avais donc bien omis de parametrer mon acces a la BD..

    Je prefere vraiment Oracle c + simple

    Merci bcp à tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Version de cvs déployée par WSAD sur Websphere
    Par tom@bnp dans le forum Environnement de Développement Intégré (EDI)
    Réponses: 2
    Dernier message: 12/04/2007, 12h11
  2. [Websphere][Java] version compatible jdk/ws
    Par bastouffe dans le forum Websphere
    Réponses: 1
    Dernier message: 01/12/2006, 15h58
  3. [Normes] versions de J2EE/EJB et Websphere
    Par 2510041 dans le forum Websphere
    Réponses: 1
    Dernier message: 19/09/2006, 12h34
  4. [Websphere] Quelle version ?
    Par Joad dans le forum Websphere
    Réponses: 2
    Dernier message: 17/05/2006, 11h56
  5. [websphere] Version du JSDK et fin de session.
    Par ncachet dans le forum Websphere
    Réponses: 2
    Dernier message: 04/01/2006, 00h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo