2017-02-18 142 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

该模型已经推出,所以你只是做一个混乱:\ –