2011-12-14 13 views
35

Ho appena migrato da Spring 3.0.5 a 3.1 GA. Ho riscontrato errori di runtime durante l'inizializzazione:Spring 3.1 entityManagerFactory java.lang.NoSuchFieldError: NULL Errore

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in ServletContext resource [/WEB-INF/spring/infrastructure-config.xml]: Initialization of bean failed; nested exception is java.lang.NoSuchFieldError: NULL 
... 
Caused by: java.lang.NoSuchFieldError: NULL 
    at org.springframework.expression.TypedValue.<clinit>(TypedValue.java:32) 
    at org.springframework.expression.spel.support.StandardEvaluationContext.setRootObject(StandardEvaluationContext.java:85) 
    at org.springframework.expression.spel.support.StandardEvaluationContext.<init>(StandardEvaluationContext.java:74) 
    at org.springframework.context.expression.StandardBeanExpressionResolver.evaluate(StandardBeanExpressionResolver.java:124) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.evaluateBeanDefinitionString(AbstractBeanFactory.java:1299) 
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.evaluate(BeanDefinitionValueResolver.java:210) 
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:182) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1360) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1118) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) 
    ... 39 more 

Ecco il mio xml.

<bean id="entityManagerFactory" 
    class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean"> 
    <property name="persistenceUnitName" value="MyPersistenceUnit" /> 
    </bean> 

A cosa serve questo java.lang.NoSuchFieldError: NULL? Nessun problema con 3.0.5.

risposta

55

Ciò significa che c'è una mancata corrispondenza della versione, molto probabilmente con le classi primaverili. Quindi assicurati che tutti i tuoi vasi primaverili siano 3.1.0. Soprattutto spring-expression. (Aggiorna anche il tuo provider JPA (ibernazione?) Se non funziona dopo il fissaggio della molla)

+2

Sì, hai ragione. Io uso Spring Flex che si riferisce a tutte le versioni. Dopo che mi sarò assicurato che tutti i vasi Spring sono 3.1.0, l'errore è sparito. A proposito, come fai a sapere * java.lang.NoSuchFieldError: NULL * è un problema di versione non corrispondente? –

+4

significa che una classe è stata compilata con il campo sul posto, ma in fase di esecuzione non lo trova – Bozho

+3

Grazie, anche questo mi ha aiutato, ho avuto il problema dopo l'utilizzo di Spring 3.1.0. Uno sguardo nelle dipendenze di maven in netbeans 7.1 ha mostrato che la versione 3.0.6 di espressioni primaverili era lì! Forzare la dipendenza corretta aggiungendolo al file pom.xml ha risolto il problema. –

1

Potrebbe aiutarti. Upgrading from Spring 3.0.3.RELEASE results in: java.lang.NoSuchFieldError: USER_DECLARED_METHODS

prima avevo come questo

<dependencies> 
<!-- Spring 3 dependencies --> 
<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-core</artifactId> 
    <version>3.1.2.RELEASE</version> 
</dependency> 
... 
</dependencies> 

Poi ho aggiunto

<dependencies> 
<!-- Spring 3 dependencies --> 
<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-core</artifactId> 
    <version>3.1.2.RELEASE</version> 
    <exclusions> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 
... 

</dependencies> 
Problemi correlati