سؤال

أحاول إعداد تدفق الويب الربيعي. أنا أستخدم JRING 2.5 JARS و SWF 2.0.8 Jar هنا هو ملف التكوين الخاص بي:

u003Cbean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">u003Cproperty name="order" value="1" />u003Cproperty name="mappings">u003Cprops>u003Cprop key="index.htm"> indexcontroller.u003C/prop>u003C/props>u003C/property>u003C/bean>

u003Cbean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/jsp/" p:suffix=".jsp" />nu003Cbean name="indexController" class="org.springframework.web.servlet.mvc.ParameterizableViewController" p:viewName="index" />

u003Cflow:flow-registry id="flowRegistry">u003Cflow:flow-location path="/WEB-INF/flows/flow.xml"/>u003C/flow:flow-registry>

u003Cflow:flow-executor id="flowExecutor" flow-registry="flowRegistry" />

u003Cbean id="flowMappings" class="org.springframework.webflow.mvc.servlet.FlowHandlerMapping">nu003Cproperty name="order" value="0" />nu003Cproperty name="flowRegistry" ref="flowRegistry" />nu003C/bean>

u003Cbean class="org.springframework.webflow.mvc.servlet.FlowHandlerAdapter">nu003Cproperty name="flowExecutor" ref="flowExecutor" />nu003C/bean>

وعندما أبدأ الخادم (Tomcat 6.0)، أحصل على الخطأ التالي:

javax.servlet.ServletException: Servlet.init() for servlet webapp threw exception
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
    java.lang.Thread.run(Thread.java:619)
root cause

org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/webapp-servlet.xml]; nested exception is java.lang.NoSuchMethodError: org.springframework.beans.factory.support.BeanDefinitionBuilder.genericBeanDefinition(Ljava/lang/String;)Lorg/springframework/beans/factory/support/BeanDefinitionBuilder;
    org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:385)
    org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:313)
    org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:290)
    org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:142)
    org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:158)
    org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124)
    org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:92)
    org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:97)
    org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:411)
    org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:338)
    org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:332)
    org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:266)
    org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:236)
    org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:126)
    javax.servlet.GenericServlet.init(GenericServlet.java:212)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
    java.lang.Thread.run(Thread.java:619)
هل كانت مفيدة؟

المحلول

لا يمكن العثور على BeanDefinitionBuilder.genericBeanDefinition(String). وبعد تم تقديم هذه الطريقة في الربيع 2.5

أنت تقول أنك تستخدم الربيع 2.5، ولكن هذا الخطأ يقترح أنك تستخدم بالفعل 2.0 (أو سابقا). تأكد من عدم وجود نسخ متعددة من الربيع في Classpath الخاص بك.

نصائح أخرى

السبب الكلاسيكي هو وجود ربيع Uber القديم الكلوي - 2.0.jar أو بعضها من هذا القبيل.

إذا كان استخدام Maven، تحقق من إخراج MVN Temessency: قائمة واعتمادا: شجرة للجرار الربيعية مع إصدارات مختلفة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top