2013-05-20 6 views
0

내 노새 응용 프로그램을 시작할 때 나는 다음과 같은 예외가 발생하고는 :봄/뮬 스키마 문제

SEVERE: Line 6 in XML document from mule-spring-config.xml is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 6; columnNumber: 41; cvc-elt.1: Cannot find the declaration of element 'beans'. (org.mule.api.lifecycle.InitialisationException) 
org.mule.api.config.ConfigurationException: Line 6 in XML document from mule-spring-config.xml is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 6; columnNumber: 41; cvc-elt.1: Cannot find the declaration of element 'beans'. (org.mule.api.lifecycle.InitialisationException) 
    at org.mule.config.builders.AbstractConfigurationBuilder.configure(AbstractConfigurationBuilder.java:52) 
    at org.mule.config.builders.AbstractResourceConfigurationBuilder.configure(AbstractResourceConfigurationBuilder.java:78) 
    at org.mule.context.DefaultMuleContextFactory.createMuleContext(DefaultMuleContextFactory.java:97) 
    at org.mule.config.builders.MuleXmlBuilderContextListener.createMuleContext(MuleXmlBuilderContextListener.java:169) 
    at org.mule.config.builders.MuleXmlBuilderContextListener.initialize(MuleXmlBuilderContextListener.java:98) 
    at org.mule.config.builders.MuleXmlBuilderContextListener.contextInitialized(MuleXmlBuilderContextListener.java:74) 
    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$StartChild.call(ContainerBase.java:1559) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:722) 

다음 XML 내 노새 XML 설정 파일의 시작이다. 스프링 빈에 대한 스키마가 분명히 명시되어있다. 최악의 경우는 다른 유사한 응용 프로그램에서 똑같은 헤더가 작동한다는 것입니다. 누구는 여기에 문제가 될 수있는 단서가 있습니까?

<mule xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:spring="http://www.springframework.org/schema/beans" 
    xmlns:mulexml="http://www.mulesoft.org/schema/mule/xml" xmlns:jersey="http://www.mulesoft.org/schema/mule/jersey" 
    xmlns:util="http://www.springframework.org/schema/util" 
    xsi:schemaLocation=" 
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
    http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd 
    http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd 
    http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd 
    http://www.mulesoft.org/schema/mule/xml http://www.mulesoft.org/schema/mule/xml/current/mule-xml.xsd 
    http://www.mulesoft.org/schema/mule/jersey http://www.mulesoft.org/schema/mule/jersey/current/mule-jersey.xsd 
    http://jersey.apache.org/core http://jersey.apache.org/schemas/core.xsd"> 

<endpoint name="REST" address="http://localhost:8082/system" /> 

<!-- Otds connector --> 
<spring:bean id="tokenProvider" 
    class="com.is.TokenProvider"> 
    <spring:property name="location" 
     value="http://sampleLocation.com" /> 
</spring:bean> 

<spring:bean id="credentialStoreClient" 
    class="com.is.CredentialStoreClient"> 
    <!-- Integration services protocol --> 
    <spring:constructor-arg index="0" 
     type="java.lang.String" value="http" /> 
    <!-- Integration services host --> 
    <spring:constructor-arg index="1" 
     type="java.lang.String" value="sample.com" /> 
    <!-- Integration services port --> 
    <spring:constructor-arg index="2" 
     type="java.lang.String" value="8080" /> 
    <!-- Integration services context --> 
    <spring:constructor-arg index="3" 
     type="java.lang.String" value="/server" /> 
</spring:bean> 

<!-- Authentication provider web service class --> 
<spring:bean id="authenticationProvider" 
    class="com.api.system.AuthenticationProvider"> 
    <spring:property name="tokenProvider" 
     ref="tokenProvider" /> 
    <spring:property name="credentialStoreClient" ref="credentialStoreClient" /> 
</spring:bean> 

<flow name="API"> 
    <inbound-endpoint ref="REST" /> 
    <jersey:resources> 
     <component class="com.api.system.VersionSender" /> 
     <component> 
      <spring-object bean="authenticationProvider" /> 
     </component> 
    </jersey:resources> 
</flow> 
</mule> 

은 어쩌면 이것은 내가 시스템 관리자에서 VersionSender 및 인증 프로 바이더 클래스의 패키지 이름을 변경하기 전에 모든 작업이었다 도움이됩니다!

EDIT

web.xml 파일은 API-config.xml의 위 뮬 구성 파일이다.

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> 
<web-app> 

    <context-param> 
     <param-name>org.mule.config</param-name> 
     <param-value>api-config.xml</param-value> 
    </context-param> 

    <!-- To use a Mule XML configuration file use this context listener --> 
    <listener> 
     <listener-class>org.mule.config.builders.MuleXmlBuilderContextListener</listener-class> 
    </listener> 

</web-app> 
+0

구성을 좀 더 보여줄 수 있습니까? 'beans' XML 요소는 어떻게 구성되어 있습니까? –

+0

@DavidDossot 전체 구성 파일을 추가했습니다. 나는 그것을 약간 뒤섞었지만 주된 것이있다. – Stainedart

+0

Mmmh 예외는'mule-spring-config.xml'의'beans' 엘리먼트에 대해 불평하지만 위의 설정에서 아무것도 볼 수 없습니다. 우리는 여기서 올바른 것들을보고 있습니까? –

답변

2

확인은 웹 응용 프로그램의 WEB-INF/lib 디렉토리에 포함 얻을 종속성 : 봄의 JAR 파일의 버전은 모든 뮬 3.3.0에 대한 3.1.1.RELEASE해야합니다. 또한 Spring Beans JAR 자체를 실제로 포함하고 있는지 확인하십시오.

+0

나는 그것을 조사 할 것이다. 현재 나는'lib' 폴더에 패키지 된 모든 JAR 파일을 다른 JAR의 의존성으로 가져 오는 명시적인 의존성이 없습니다. 2.5.6.SEC2 – Stainedart

+0

'2.5.6.SEC2'는 Mule에서 작동하지 않습니다. 3.3.0. –

+0

나는이 작업과 비슷한 다른 프로젝트의 스프링 의존성을 비교해 보았습니다. 그리고 여러분은 의존성이 모두 봄에 있음을 알았습니다. 3.1.1.RELEASE 방금 왜 변경되었는지 간단히 알 필요가 있습니다. 감사합니다 – Stainedart