2012-06-08 5 views
12

Ich verwende Spring 3.0.6-RELEASE für eine grundlegende formularbasierte Webanwendung und beim Start mit PropertyPlaceHolderConfigurer wird der folgende Fehler angezeigt. Nicht sicher, was das verursacht, da das Injizieren der Eigenschaft pre-mvc3 über Beans erfolgte und jetzt Annotation verwendet und es zumindest aus den Docs/anderen Posts ziemlich einfach erscheint.Was ist die Beziehung zwischen Feld 'SYSTEM_PROPERTIES_MODE_ENVIRONMENT' und PropertyPlaceHolderConfigurer?

jedoch die Ausnahme während Tomcatbediener Inbetriebnahme org.springframework.core.ConstantException klagt: Feld ‚SYSTEM_PROPERTIES_MODE_ENVIRONMENT‘ nicht in der Klasse gefunden [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer]

ist hier, was ich haben im Frühjahr servlet.xml

<context:property-placeholder location="/WEB-INF/classes/spring.properties"/> 

und mein Controller-Klasse

@Controller 
@RequestMapping("/home") 

public class HomeController { 

    // @Resource(name="broomManager") 
    @Autowired 
    private broomManager broomManager; 
    private @Value("${spring.broom.maxFileSize}") String inMemoryMaxFileSize; 
    private @Value("${spring.broom.fileDestination}") String destFilePath; 

..

spring.properties

broom.maxFileSize=100000 
broom.fileDestination=/Users/foobar/broom/files/ 

Ausnahme während

Start
2012-06-08 02:51:31,900 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] ERROR org.springframework.web.servlet.DispatcherServlet - Context initialization failed 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.beans.factory.config.PropertyPlaceholderConfigurer#0': Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are: 
PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'systemPropertiesModeName' threw exception; nested exception is org.springframework.core.ConstantException: Field 'SYSTEM_PROPERTIES_MODE_ENVIRONMENT' not found in class [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1361) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) 
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293) 
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196) 
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:626) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:467) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:483) 
    at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:358) 
    at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:325) 
    at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:127) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:212) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3956) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4230) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544) 
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:831) 
    at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:720) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490) 
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1217) 
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) 
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1306) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1570) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1579) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1559) 
    at java.lang.Thread.run(Thread.java:680) 
Caused by: org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are: 
PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'systemPropertiesModeName' threw exception; nested exception is org.springframework.core.ConstantException: Field 'SYSTEM_PROPERTIES_MODE_ENVIRONMENT' not found in class [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] 
    at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:102) 
    at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:58) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1358) 
    ... 33 more 
+2

Können Sie das versuchen? ''. Können Sie übrigens den Header Ihrer spring-servlet.xml-Datei anzeigen? – Dani

+0

Gute Frage, sehr hilfreich, aber keine Verbesserung von mir, wenn Sie keine Antworten akzeptieren. –

Antwort

28

Folgenden wird auf Wahrscheinlich:

  • Ihre Frühlings-Konfigurationsdateien an den 3.1-Schemata zeigen.
  • Sie verwenden 3.0.6 JARs.

Sie müssen übereinstimmen.

+3

@ESD Listen, akzeptieren Sie diese Antwort, wenn Sie vorbeikommen. Das ist genau die Lösung. –

Verwandte Themen