2013-02-13 93 views
1

我正在使用Spring MVC的Web應用程序項目,我試圖避免使用註釋。如何爲MultiActionController的Delegate方法設置默認方法?

我碰到只要MultiActionController和委託工作。

問題是,我如何在MultiActionController的委託中設置默認方法?

通過MultiActionController的,我的意思是這樣

public class TestController1 extends MultiActionController{ 

    public TestController1(){ 
     System.out.println("TestController1 initialising..."); 
    } 
} 

我的XML設置...

<bean id="multiactionController1" class="test.TestController1"> 
    <property name="delegate" ref="testDelegater1"/>  
    <property name="methodNameResolver" ref="paramResolver"/> 
</bean> 

<!-- Delegaters --> 
<bean id="testDelegater1" class="test.TestController1Delegator"/> 

<!-- param method name resolver --> 
<bean id="paramResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"> 
    <property name="paramName" value="action"/> 
</bean> 
<!-- Simple Url Handler Mapping --> 
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> 
     <property name="mappings"> 
      <map> 
      <entry key="/multiaction1/**" value-ref="multiactionController1"/> 
      <entry key="/item/**" value-ref="itemController"/> 
      </map> 
     </property> 
    </bean> 

所以,當我把喜歡 '* /項目' 的請求時,發現它不」 t有一個動作參數,而不是給我一個錯誤,我想有一個默認的方法。

回答

0

使用下面的MethodNameResolver實現,它具有defaultMethodName屬性。

org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver