2017-02-18 123 views
0

模型驅動攔截器工作不正常。模型驅動攔截器不工作

Action類:

 public class CampusManagerEditAction extends ActionSupport implements ModelDriven<RegistrationForm> 

    { 
     RegistrationForm registrationForm = new RegistrationForm(); 
     public RegistrationForm getModel(){return registrationForm;} 
     public String execute(){ 
      //incoming request is coming from Hyperlink and I pass one variable in that url 
      sysot(regisForm.getId());//Working fine 
      registrationFrom = DaoLayer.getFormObject(id); 
      //I can see the data here.tooo 
     } 
     } 

我呼籲行動在鏈接的錨鏈接我通過id,我可以從爲from.getId(),但是當我嘗試提交響應與格式值形式的新值retireve在我的JSP中不可見

** JSP頁面*

 <s:property value="class"/> 

我試圖<s:property value="%{registrationForm.class}"/>也 但無法正常工作。

struts.xml的

 <action name="campusManagerEditLink" class="com.brainybunch.campusmanager.status.action.CampusManagerEditAction" >   
     <interceptor-ref name="modelDriven"></interceptor-ref> 
     <interceptor-ref name="basicStack"></interceptor-ref> 
     <result name="success">/editCampusManagerStudentReport.jsp</result> 
    </action> 

如果你要我發表我的圖書館,我可以張貼。

回答

0

class是一個從Struts標籤中發生的OGNL處理中排除的單詞。您可以閱讀有關默認實現ExcludedPatternsChecker中使用的安全機制的文檔。

用於不同的攔截器來檢查給定的字符串是否與排除的模式之一匹配。


而且一般這種方法被稱爲

isExcluded(java.lang.String)

檢查是否值匹配任何的模式上排除列表


+0

但是當我用' '標籤在水庫ultant jsp,我可以看到模型對象狀態,因爲它處於請求狀態,我認爲我的新表單對象沒有被推到'value stack' – Babel

+0

但是當我做了這個手動pust時,我可以看到窗體被設置了新的值'ActionContext。 getContext()。getValueStack()。push(model);' – Babel

+0

該模型已經推出,所以你只是做一個混亂:\ –