2013-10-24 82 views
1

我從來沒有用過春天,甚至沒有學到它,在我的工作場所,當我在tomcat運行的應用程序,我得到以下錯誤。我不明白,這是什麼意思。佔位符在$ {}中的值。 。還有應用程序沒有錯誤,我得到的日誌文件中此錯誤春天,無法解決的地方持有人,有人可以解釋我

org.springframework.beans.factory.BeanDefinitionStoreException:無效的bean定義名稱爲」「,在類路徑資源[SpringIntegration.xml]定義:莫非無法解決佔位符 「」

日誌文件:

Oct 25, 2013 10:40:23 AM org.apache.catalina.core.ApplicationContext log 
INFO: Initializing Spring root WebApplicationContext 
Oct 25, 2013 10:40:26 AM org.apache.catalina.core.ApplicationContext log 
INFO: StartupServlet: Executing StartupServlet.init() 
Oct 25, 2013 10:40:26 AM org.apache.catalina.core.ApplicationContext log 
INFO: StartupServlet: StartupServlet.init() successfully executed 
Oct 25, 2013 10:40:29 AM org.apache.catalina.core.ApplicationContext log 
INFO: Initializing Spring root WebApplicationContext 
Oct 25, 2013 10:40:30 AM org.apache.catalina.core.StandardContext listenerStart 
SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener 
org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean definition with name 'CWSJMSClient' defined in class path resource [SpringIntegration.xml]: Could not resolve placeholder 'VHF.CWS.Hybrid.Contract.RequestQueue' 
    at org.springframework.beans.factory.config.PropertyPlaceholderConfigurer.processProperties(PropertyPlaceholderConfigurer.java:287) 
    at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:75) 
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:663) 
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:638) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407) 
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276) 
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197) 
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47) 
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4791) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633) 
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:968) 
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1646) 
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 

2013年10月25日上午10點40分30秒org.apache.catalina.core.ApplicationContext登錄 信息:關閥彈簧根WebApplicationContext的

+0

請提供完整的堆棧跟蹤。您的問題似乎很模糊 – KyelJmD

回答

2

這聽起來像你正在嘗試在你的spring配置中使用外部屬性,但沒有正確配置的PropertyPlaceholderConfigurer bean。請參閱本教程:http://www.mkyong.com/spring/spring-propertyplaceholderconfigurer-example/

在那裏,你會發現如何聲明包含您的變量CONFIGS,如屬性文件的詳細說明:

database.username=myusername 
database.password=mypassword 
... 

然後,您引用使用PropertyPlaceholderConfigurer該文件:

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="location"> 
     <value>database.properties</value> 
    </property> 
</bean> 
+1

請注意,您也可以使用上下文命名空間中提供的短手。 –

+1

+1但是在使用名稱空間之前,請試着瞭解這些名稱空間在幕後爲您做的事情。 (聽起來像OP是春天很新。) – MattSenter

+0

啊,好點@kungfuters。學習基礎架構組件的工作原理可在您需要做一些不是開箱即用的功能時派上用場。 。 Spring提供的所有魔法都建立在幾個簡單的核心組件之上。 –

0

把下面一行在屬性文件

VHF.CWS.Hybrid.Contract.RequestQueue=jms://localhost:636