我正在尝试学习Spring MVC 2.0和Spring Web Flow 1.0。
我收到以下错误(可能是调度程序委托流程请求时):
配置问题:找不到元素[executor]
的BeanDefinitionParser
我在应用程序的构建路径中使用Spring 2.0和Web Flow 1.0 jar文件。
下面是我的Spring MVC 2.0配置文件:
<bean name="/phonebook.htm"
class="org.springframework.webflow.executor.mvc.FlowController">
<property name="flowExecutor" ref="flowExecutor"/>
</bean>
<!-- Resolves flow view names to .jsp templates -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp">
</bean>
我的Spring Web Flow 1.0配置:
<flow:executor id="flowExecutor" registry-ref="flowRegistry"/>
<!-- Creates the registry of flow definitions for this application -->
<flow:registry id="flowRegistry"> <flow:location path="/WEB-INF/flows/**-flow.xml"/>
</flow:registry>
答案 0 :(得分:1)
当eclipse将Web应用程序部署到tomcat时,它也将这些jar文件部署到lib目录中,而不是在构建路径中。所以现在当tomcat执行时...它可能会找到两个用于Web流的jar文件,即webflow 1.0和webflow 2.0并给我错误..即当webflow的两个不同版本的jar文件都在lib director中时。
我还要感谢skaffman的支持..
答案 1 :(得分:0)
好的,所以看起来问题出在你的webflow配置中的<flow:executor>
元素。 Spring抱怨它不明白这意味着什么,这可能是因为你错过了配置文件中的命名空间声明。这看起来像这样:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:flow="http://www.springframework.org/schema/webflow-config"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/webflow-config
http://www.springframework.org/schema/webflow-config/spring-webflow-config-1.0.xsd">
你的根元素必须是这样的。请参阅文档here。