jayspt EncryptionInitializationException No string encryptor registered for hibernate w
Bonsoir
Je rencontre l'erreur
Citation:
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:
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:
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:
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:
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> |