2016-09-23 110 views
0

当我必须设置为在XML属性文件配置弹簧的应用,因为禁用JndiProperty源使用Spring @Value注释

<context:property-placeholder location="classpath:app.properties"/> 

我有一个查找从这里使用@Value注释值类。 但是,每次运行我的junit测试时,如果没有Java应用程序服务器(Websphere),查找该值需要一段时间,如每个字段1秒。打开DEBUG模式的 显示它是造成它的JNDI查找。

2016-09-23 17:50:29,462{ISO8601 [P=25904:O=0:CT] org.springframework.core.env.PropertySourcesPropertyResolver DEBUG - Searching for key 'spring.liveBeansView.mbeanDomain' in [servletConfigInitParams] 
2016-09-23 17:50:29,462{ISO8601 [P=25904:O=0:CT] org.springframework.core.env.PropertySourcesPropertyResolver DEBUG - Searching for key 'spring.liveBeansView.mbeanDomain' in [servletContextInitParams] 
2016-09-23 17:50:29,462{ISO8601 [P=25904:O=0:CT] org.springframework.core.env.PropertySourcesPropertyResolver DEBUG - Searching for key 'spring.liveBeansView.mbeanDomain' in [jndiProperties] 
2016-09-23 17:50:29,462{ISO8601 [P=25904:O=0:CT] org.springframework.jndi.JndiTemplate DEBUG - Looking up JNDI object with name [java:comp/env/spring.liveBeansView.mbeanDomain] 
Sep 23, 2016 5:50:29 PM null null 
**SEVERE: javaAccessorNotSet** 
2016-09-23 17:50:29,463{ISO8601 [P=25904:O=0:CT] org.springframework.jndi.JndiLocatorDelegate DEBUG - Converted JNDI name [java:comp/env/spring.liveBeansView.mbeanDomain] not found - trying original name [spring.liveBeansView.mbeanDomain]. javax.naming.ConfigurationException: Name space accessor for the java: name space has not been set. Possible cause is that the user is specifying a java: URL name in a JNDI Context method call but is not running in a J2EE client or server environment. 
2016-09-23 17:50:29,463{ISO8601 [P=25904:O=0:CT] org.springframework.jndi.JndiTemplate DEBUG - Looking up JNDI object with name [spring.liveBeansView.mbeanDomain] 
2016-09-23 17:50:30,474{ISO8601 [P=25904:O=0:CT] org.springframework.jndi.JndiPropertySource DEBUG - JNDI lookup for name [spring.liveBeansView.mbeanDomain] threw NamingException with message: Could not obtain an initial context due to a communication failure. Since no provider URL was specified, the default provider URL of "corbaloc:iiop:[email protected]:2809/NameService" was used. Make sure that any bootstrap address information in the URL is correct and that the target name server is running. Possible causes other than an incorrect bootstrap address or unavailable name server include the network environment and workstation network configuration.. Returning null. 

没有问题从属性文件中获取值。

我需要帮助找到来配置应用程序跳过JNDI查找

回答