`
fireflyjava
  • 浏览: 188547 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

配置MultiActionController两种方法

阅读更多
<bean id="paramResolver"
		class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
		<property name="paramName">
			<value>method</value>
		</property>
	</bean>


方法一:OutlineAction继承MultiActionController,那么无需配制属性<property name="delegate">
因为MultiActionController在构造对象时,做了如下操作
public MultiActionController() {
                this.delegate = this;
                registerHandlerMethods(this.delegate);
                // We'll accept no handler methods found here - a delegate might be set later on.
        }

         <bean name="outlineAction"   class="com.mdd.web.springMvc.crawl.OutlineAction">   
    <property name="methodNameResolver"><ref bean="paramResolver"/></property>      
    </bean>


方法二:OutlineAction没有继承MultiActionController
  <bean name="outlineActionDelegate" class="com.mdd.web.springMvc.crawl.OutlineAction"></bean>
    <bean name="outlineAction"   class="org.springframework.web.servlet.mvc.multiaction.MultiActionController">
    <property name="delegate"><ref bean="outlineActionDelegate"/></property>
    <property name="methodNameResolver"><ref bean="paramResolver"/></property>      
    </bean> 


注意OutlineAction的格式为:
public ModelAndView queryOutlineByUser(HttpServletRequest request, HttpServletResponse response){}
而且必需为public ,否定反射调用时加载不到!
会报错误IllegalStateException:No handler methods in class [ClassName]

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics