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

Struts 1 Java Discussion :

UnsupportedOperationException: Not Supported by BasicDataSource


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut UnsupportedOperationException: Not Supported by BasicDataSource
    Bonjour à tous,

    Je vous expose mon problème. Je travaille sur une appli web qui utilise une connexion à une base de données via un pool de connexions. Cette application a été déployé avec succès chez le client mais en local j'ai un problème. La première page de l'application s'affiche sans problème mais dès que je clique sur le moindre lien, il y a plantage et le log du serveur m'affiche l'erreur suivante :

    UnsupportedOperationException: Not Supported by BasicDataSource

    Puisque cette erreur n'apparaît pas chez le client, il me semble raisonnable de conclure qu'il s'agit là d'un problème d'environnement. Pour des raisons de confidentialité, je ne peux malheureusement pas vous transmettre de code. Mais je sollicite votre aide afin de me donner des pistes que j'explorerai par moi même par la suite.

    Merci d'avance pour vos réponses.

  2. #2
    Membre expérimenté Avatar de mOuLi
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2008
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2008
    Messages : 170
    Par défaut
    C'est sûr que sans code, stackTrace ou fichier de config c'est pas évident mais si jamais tu utilise un pool DBCP (ce qui est le cas avec Tomcat par exemple) et que tu tentes de te connecter avec un login/mdp alors ton erreur semble normale.

    La javadoc DBCP de la classe BasicDataSource (voir ici) précise que la méthode getConnection(String username, String password) renvoie toujours une erreur de type UnsupportedOperationException.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut
    Vérification faite pour les getConnection, je n'ai aucune occurrence de getConnection(String username, String password) je n'ai que des getConnection(). Merci de ta réponse ! D'autres idées ?

    Une autre précision, en recherchant sur google, j'ai vu des références à Spring concernant cette erreur, je précise donc que je travaille avec un autre framework, spécifique au client, basé sur struts.

  4. #4
    Membre expérimenté Avatar de mOuLi
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2008
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2008
    Messages : 170
    Par défaut
    Même quand cette erreur est présentée comme liée à Spring, on constate qu'on est toujours avec le même problème (à savoir le non support par DBCP des getConnection avec login/mdp).
    On constate qu'on a une stackTrace qui débute par (ou qui inclue) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Caused by: java.lang.UnsupportedOperationException: Not supported by BasicDataSource
        at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:899)
    Peux-tu dire si tu vois ceci dans la pile d'appel ?
    Si oui c'est bien un problème sur DBCP et sinon peux-tu dire quelle est l'origine de l'exception ? (juste l'instruction, pas besoin de ligne de code)

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut
    Bon, il semblerait que j'avance un peu sur ce sujet. Voici ce que j'ai fait (remarqué). Le client utilise un serveur sun-one alors que je travaille en local avec un serveur tomcat (pas idéal il est vrai mais on fait avec ce qu'on a !). Or dans lors de la configuration du pool de connexions avec le serveur sun-one, il est spécifié que la dataSource est de type oracle.jdbc.pool.OracleDataSource. De ce fait, j'ai modifié mon server.xml de tomcat pour indiquer ce type de DataSource. Depuis, j'ai une autre erreur dont voici les 2 premières lignes de la trace :

    javax.naming.NamingException: Cannot create resource instance
    org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:143)

    en faisant quelques recherches j'ai vu que cette erreur pouvait être due à l'absence du fichier classes12.jar dans le répertoire common/lib de tomcat. Ce n'est pas le cas ici, cette bibliothèque étant bel et bien présente dans ledit répertoire.

    Ci-dessous une partie de mon server.xml (pour des raisons de sécurité évidentes, j'ai supprimé les attributs url, username et password mais ils sont présents dans le fichier original) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
      <GlobalNamingResources>
     
        <Resource driverClassName="oracle.jdbc.driver.OracleDriver" 
    		name="jdbc/oracle_pool_dfp" 
    		type="oracle.jdbc.pool.OracleDataSource" 
        />
     
      </GlobalNamingResources>
     
    ....
     
    <Context path="/DEXP3_0_8" reloadable="true" docBase="DEXP3_0_8">
    	<ResourceLink global="jdbc/oracle_pool_dfp" name="jdbc/Datasource_DFP" type="oracle.jdbc.pool.OracleDataSource"/>
    </Context>

Discussions similaires

  1. decoding Unicode is not supported
    Par naiadeKaren dans le forum Général Python
    Réponses: 6
    Dernier message: 20/07/2011, 06h47
  2. Réponses: 7
    Dernier message: 22/02/2007, 11h29
  3. checkdnsrr is not supported
    Par the watcher dans le forum Langage
    Réponses: 14
    Dernier message: 03/02/2006, 22h19
  4. socket: Address family not supported by protocol ??
    Par innosang dans le forum Réseau
    Réponses: 5
    Dernier message: 21/12/2005, 11h32
  5. Fatal Error : OpenGL GLX extension not support
    Par kacedda dans le forum GLUT
    Réponses: 5
    Dernier message: 06/06/2005, 10h28

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