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

Sécurité Java Discussion :

jayspt EncryptionInitializationException No string encryptor registered for hibernate w


Sujet :

Sécurité Java

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut jayspt EncryptionInitializationException No string encryptor registered for hibernate w
    Bonsoir

    Je rencontre l'erreur
    No string encryptor registered for hibernate with name "myHibernateStringEncryptor"
    Mais pourtant cela me semble bien defini ou est mon problème ?
    Il me semble defini le "myHibernateStringEncryptor" dans le application-context-spring.xml qui utilise le persistence.xml ??
    Merci d'avance

    1 log
    Code x : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    2019-11-19 16:51:04.115 - ASYNC - ERROR      : Erreur lors de l'exécution du batch 
    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'myEmf' defined in class path resource [config/test/application-context-spring.xml]: 
    Invocation of init method failed; nested exception is org.jasypt.exceptions.EncryptionInitializationException: 
    No string encryptor registered for hibernate with name "myHibernateStringEncryptor"
            at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1553)
            at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
            at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
            at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:302)
            at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
            at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)

    2 application-context-spring.xml
    Code XML : 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
    28
    29
    <bean id="stringEncryptor"
        class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">
        <property name="algorithm">
            <value>PBEWithMD5AndDES</value>
        </property>
        <property name="password">
            <value>ZZZZZ</value>
        </property>
      </bean>
     
      <bean id="hibernateEncryptor"
        class="org.jasypt.hibernate.encryptor.HibernatePBEStringEncryptor">
        <property name="registeredName">
            <value>myHibernateStringEncryptor</value>
        </property>
        <property name="encryptor">
            <ref bean="stringEncryptor" />
        </property>
      </bean>
     
    <!-- application-context-spring call persistence.xml -->
      <bean id="persistenceUnitManager"
                  class="org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitManager">
            <property name="persistenceXmlLocations">
                <list>
                    <value>classpath:META-INF/persistence.xml</value>
                </list>
            </property>
        </bean>

    3 persistence.xml
    Code XML : 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
    	<persistence-unit name="myPersistenceUnit"
    		transaction-type="RESOURCE_LOCAL">
    		<provider>org.hibernate.ejb.HibernatePersistence</provider>
    		<properties>
    			<property name="hibernate.show_sql" value="false" />
    			<property name="hibernate.connection.url" value="${ENV-DATABASE-URL}" />
    			<property name="hibernate.connection.username" value="${ENV-DATABASE-USERNAME}" />
    			<!-- Only uncomment for test purpose , to re create the schema -->
                            <property name="hibernate.hbm2ddl.auto" value="validate" />
    			<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect" />
    			<property name="hibernate.connection.driver_class" value="oracle.jdbc.driver.OracleDriver" />
    			<property name="hibernate.connection.provider_class"
    				value="org.hibernate.connection.C3P0ConnectionProvider" />
    			<property name="hibernate.c3p0.min_size" value="5" />
    			<property name="hibernate.c3p0.max_size" value="20" />
    			<property name="hibernate.c3p0.timeout" value="1800" />
    			<property name="hibernate.c3p0.max_statements" value="50" />
     
    			<property name="hibernate.connection.provider_class" value="org.jasypt.hibernate3.connectionprovider.EncryptedPasswordC3P0ConnectionProvider" />
                <property name="hibernate.connection.encryptor_registered_name" value="myHibernateStringEncryptor" />
    			<property name="hibernate.connection.password" value="ENC(xxxxxxxxxx)" />
     
     
    		</properties>
     
    	</persistence-unit>


    le pom.xml

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
       <dependency>
          <groupId>org.jasypt</groupId>
        	<artifactId>jasypt</artifactId>
        	<!-- <version>1.9.2</version> -->
       		<version>1.9.3</version>
    	</dependency>
    	<dependency>
             <groupId>org.jasypt</groupId>
           <artifactId>jasypt-hibernate3</artifactId>
            <!--     <version>1.9.2</version> -->
          <version>1.9.3</version>
      </dependency>

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut
    le "depends-on" dans le xml resoud le probleme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     <bean id="myEmf" depends-on="hibernateEncryptor"
                  class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
            <property name="persistenceUnitManager" ref="persistenceUnitManager" />
            <property name="persistenceUnitName" value="myPersistenceUnit" />
        </bean>

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

Discussions similaires

  1. [WD-2007] Variable string et boucle for
    Par maxetune dans le forum VBA Word
    Réponses: 6
    Dernier message: 16/02/2014, 01h12
  2. Réponses: 2
    Dernier message: 29/03/2012, 18h13
  3. [2.x] No authentication listener registered for pattern
    Par boscovicious dans le forum Symfony
    Réponses: 0
    Dernier message: 27/04/2011, 10h31
  4. [MySQL] Incorrect string value: '\xE9sireu...' for column
    Par ETVigan dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 15/07/2010, 13h36
  5. Réponses: 1
    Dernier message: 19/11/2008, 17h47

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