Spring / Java error: namespace element ‘annotation-config’… on JDK 1.5 and above

Ho Spring / Java App che è compilata con Comstackr 1.5 compliance level.

Ho una nuova configurazione di Linux dove ho scaricato Apache Tomcat 8.0.8 .

  • Come si fa a inserire una proprietà Enum nel file di configurazione di Spring?
  • Riutilizzare il contesto dell’applicazione spring nelle classi di test di junit
  • Applicazione Spring Boot.il valore delle proprietà non si riempie
  • Come evitare che le variabili di Spring 3.0 MVC @ModelAtsortingbute appaiano nell’URL?
  • Spring 4 vs Jersey per servizi web REST

Ho scaricato JDK 8u5.

Ho messo il percorso in bash come segue:

PATH=$PATH:$HOME/jdk1.8.0_05/bin export PATH 

La versione Java riporta:

 java version "1.8.0_05" Java(TM) SE Runtime Environment (build 1.8.0_05-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode) 

E impostato in setnenv.sh (per Tomcat):

 JDK_HOME=/home/userid/jdk1.8.0_05 

Quando distribuisco il mio file WAR, ottengo l’errore. Mi sembra che Tomcat non usi il Java che ho installato. Ho seguito le istruzioni di configurazione. PS: ho anche provato JRE invece di JDK e stesso problema.

 22-May-2014 11:34:54.070 INFO org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext 22-May-2014 11:34:54.512 SEVERE org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from file ; nested exception is **java.lang.IllegalStateException: Context namespace element 'annotation-config' and its parser class are only available on JDK 1.5 and higher** at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:420) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149) at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124) at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:92) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:423) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:353) at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4750) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5170) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1270) at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:673) at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:221) at javax.servlet.http.HttpServlet.service(HttpServlet.java:644) at javax.servlet.http.HttpServlet.service(HttpServlet.java:725) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:301) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:213) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:615) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:78) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:526) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1033) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:652) at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1566) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1523) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.IllegalStateException: Context namespace element 'annotation-config' and its parser class are only available on JDK 1.5 and higher at org.springframework.context.config.ContextNamespaceHandler$1.parse(ContextNamespaceHandler.java:65) at org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:69) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1253) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1243) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:135) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:92) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:507) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:398) ... 49 more 22-May-2014 11:34:54.518 INFO org.apache.catalina.core.ApplicationContext.log Closing Spring root WebApplicationContext 
  • Proprietà Spring (property-space)
  • File Spring.proprietà: ottenere l’elemento come array
  • Utilizzare solo @JsonIgnore durante la serializzazione, ma non la deserializzazione
  • Ecco l’oggetto UserDetails dal contesto di sicurezza nel controller Spring MVC
  • Come registrare la classe annotata Spring @Configuration invece di applicationContext.xml in web.xml?
  • AOP di spring vs AspectJ
  • Spring 3.1 eccezione Hibernate 4 per l’ereditarietà
  • Passare più variabili in @RequestBody a un controller Spring MVC usando Ajax

La classe che lancia l’eccezione usa questo codice per controllare la versione Java:

 static { javaVersion = System.getProperty("java.version"); // version Ssortingng should look like "1.4.2_10" if (javaVersion.indexOf("1.7.") != -1) { majorJavaVersion = JAVA_17; } else if (javaVersion.indexOf("1.6.") != -1) { majorJavaVersion = JAVA_16; } else if (javaVersion.indexOf("1.5.") != -1) { majorJavaVersion = JAVA_15; } else { // else leave 1.4 as default (it's either 1.4 or unknown) majorJavaVersion = JAVA_14; } } 

Quindi quando Spring 2.5 è stato rilasciato per la prima volta, il codice non presupponeva che sarebbe stato eseguito in una versione Java successiva alla 1.7. Per Java 8 e oltre, il codice di cui sopra presuppone la versione 1.4 per impostazione predefinita. Per questo motivo, la parte delle annotazioni si lamenterà.

Credo che tu debba aggiornare la tua versione di Spring o usare Java 7. In ogni caso, Spring 2.5 è in produzione da un po’.

Ho lo stesso problema. La vecchia applicazione Spring MVC / Spring Faces 2.5.5 non funziona in Java 8.

Ho passato alcuni giorni a cercare una soluzione, dato che abbiamo bisogno di eseguire Java 8.

La prima idea era: aggiornare l’intero pacchetto Spring alla 4.1.6. Ho usato Maven. Problema con questo metodo, dopo il quale è necessario rielaborare quasi l’intero progetto. Questo perché, per esempio, nella primavera 4, l’implementazione JSF è stata rimossa e alcuni taglib speciali completamente rimossi, come è…

èàèé

‘èé’é

‘éà’éééç

ê’é’ùéàéééé

‘éé

‘éé

  1. éé
  2. “”
  3. é’è””
  4. êé’锑é”

Proprietà

”é’é”éèé’ééé

ee”e

e

é’

é

éé

ééé’

é

‘èéé’àééééé’ééàé

‘éù”

  1. ééàéé

  2. à

  3. ê

    Ajouter un nouveau JRE

  4. éêé

è

éé

à”

àà

é

êèèéè’ééûà”éàé

êééé’à

à’éà

à

‘éééé’é’

  • é
  • é
  • é

‘è’

àèè

éèé

‘é-é

éé

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *