2014-04-16 4 views
4

스프링 프레임 워크 4.0.3의 새 릴리스를 사용해 보았습니다. 컨텍스트 사용 중 이상한 동작을 발견했습니다.Spring Framework 4.0.3 BeanDefinitionStoreException ServletContext 리소스에서 XML 문서를 구문 분석하는 예기치 않은 예외가 발생했습니다.

컨텍스트를 차단하려고합니다 : 구성 요소 스캔, 광고 사용 <context:annotation-config> 태그, 모두 잘됩니다. 그래서 내 applicationContext.xml에 <context:component-scan base-package="org.example"/>을 사용하는 이유를 알고 싶습니다 BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is java.lang.ExceptionInInitializerError.

XSD 스키마 위치에 4.0 버전을 추가하려고했지만 문제가 남아 있습니다. 나는 이것이 버그인지 또는 스프링 프레임 워크 공식 사이트에 대한 조언이 아닌 내 applicationContext에 추가하는 것이 무엇인지 알고 싶습니다.

덕분에.

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>/WEB-INF/applicationContext.xml</param-value> 
    </context-param> 

    <listener> 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 
    <listener> 
     <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> 
    </listener> 

그리고 내 applicationContext.xml은 다음과 같습니다 : 내 web.xml 파일에

난이

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans.xsd 
     http://www.springframework.org/schema/context 
     http://www.springframework.org/schema/context/spring-context.xsd"> 


     <context:component-scan base-package="com.my.service"></context:component-scan> 

    </beans> 

내 폼은 정의 : 내가 JBoss에서 배포 시작

<dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
      <version>4.0.3.RELEASE</version> 

     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>4.0.3.RELEASE</version> 

     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-context</artifactId> 
      <version>4.0.3.RELEASE</version> 

     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-instrument</artifactId> 
      <version>4.0.3.RELEASE</version> 

     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-aop</artifactId> 
      <version>4.0.3.RELEASE</version> 

     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-beans</artifactId> 
      <version>4.0.3.RELEASE</version> 

     </dependency> 

5.1, 나는 다음과 같은 예외를 발견 :

org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is java.lang.ExceptionInInitializerError 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:413) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:335) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:216) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:187) 
    at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124) 
    at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:93) 
    at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129) 
    at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:540) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:454) 
    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:3910) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4393) 
    at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(TomcatDeployment.java:310) 
    at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeployment.java:142) 
    at org.jboss.web.deployers.AbstractWarDeployment.start(AbstractWarDeployment.java:461) 
    at org.jboss.web.deployers.WebModule.startModule(WebModule.java:118) 
    at org.jboss.web.deployers.WebModule.start(WebModule.java:97) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157) 
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96) 
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) 
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) 
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668) 
    at org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:206) 
    at $Proxy38.start(Unknown Source) 
    at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:42) 
    at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:37) 
    at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62) 
    at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71) 
    at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51) 
    at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348) 
    at org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:286) 
    at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631) 
    at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934) 
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082) 
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984) 
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822) 
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553) 
    at org.jboss.system.ServiceController.doChange(ServiceController.java:688) 
    at org.jboss.system.ServiceController.start(ServiceController.java:460) 
    at org.jboss.system.deployers.ServiceDeployer.start(ServiceDeployer.java:163) 
    at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:99) 
    at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46) 
    at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62) 
    at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50) 
    at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171) 
    at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439) 
    at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157) 
    at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1178) 
    at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098) 
    at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348) 
    at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631) 
    at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934) 
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082) 
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984) 
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822) 
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553) 
    at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781) 
    at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702) 
    at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117) 
    at org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70) 
    at org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53) 
    at org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:361) 
    at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348) 
    at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631) 
    at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934) 
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082) 
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984) 
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822) 
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553) 
    at org.jboss.system.server.profileservice.repository.AbstractProfileService.activateProfile(AbstractProfileService.java:306) 
    at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:271) 
    at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461) 
    at org.jboss.Main.boot(Main.java:221) 
    at org.jboss.Main$1.run(Main.java:556) 
    at java.lang.Thread.run(Thread.java:662) 
Caused by: java.lang.ExceptionInInitializerError 
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver$VfsResourceMatchingDelegate.findMatchingResources(PathMatchingResourcePatternResolver.java:652) 
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findPathMatchingResources(PathMatchingResourcePatternResolver.java:347) 
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:269) 
    at org.springframework.context.support.AbstractApplicationContext.getResources(AbstractApplicationContext.java:1170) 
    at org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.findCandidateComponents(ClassPathScanningCandidateComponentProvider.java:268) 
    at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:242) 
    at org.springframework.context.annotation.ComponentScanBeanDefinitionParser.parse(ComponentScanBeanDefinitionParser.java:85) 
    at org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:74) 
    at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1424) 
    at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1414) 
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:187) 
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:141) 
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:110) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:508) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391) 
    ... 82 more 
Caused by: java.lang.IllegalStateException: Could not detect JBoss VFS infrastructure 
    at org.springframework.core.io.VfsUtils.<clinit>(VfsUtils.java:92) 
+0

전체 스택 추적입니까? –

+0

예, 다른 정보는 중요하지 않습니다. 새 릴리스 4.0.3을 사용해 보셨습니까 ?? – Bomberlatinos9

+0

:-) 예, 있습니다. 다른 정보가 중요하지 않다면 행운을 빈다. –

답변

2

JBoss 5의 VFS에 대한 지원이 제거되었습니다. This은이 문제와 관련된 Github의 커밋입니다. 이것은 또한 Spring forum에서 제기되었습니다.

+0

스프링 프레임 워크 4.0.3을 사용 해본 적이있는 응용 프로그램 서버는 무엇입니까 ?? Jboss 7 ?? – Bomberlatinos9

+0

Jboss EAP 6.2에서 테스트했습니다. –

+0

Thnx, EAP 6.2를 사용해 보겠다.하지만 스프링 그룹이 수정 사항을 추가하기를 희망한다. – Bomberlatinos9