struts 2 Bean 未填充到操作类中

发布于 2024-12-07 20:36:18 字数 242 浏览 4 评论 0原文

我在作业中使用 Struts 2-Spring 框架。

我在 struts 2 操作类中定义了一个 bean

一个拦截器,用于在执行每个操作之前检查授权。

该bean用于在jsp页面上定义文本字段、单选按钮等控件。

提交此页面时,控件会正确转到定义的操作类,但在操作类中发现 bean 对象为 null。因此无法执行进一步的操作。

删除拦截器效果很好。

任何指针将不胜感激。

I am using Struts 2-Spring framework in my assignment.

I have defined a bean in struts 2 action class

One interceptor for checking authorisation before executing every action.

The bean is used for defining controls like textfield, Radio button, etc on jsp page.

On submit of this page control goes properly to defined action class, but finds bean object as null in action class. Hence unable to perform futher operations.

Removing interceptors works fine.

Any pointer will be appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

只想待在家 2024-12-14 20:36:18

我还没有为 struts.xml 中定义的拦截器定义堆栈。

在 struts.xml 中定义以下堆栈后,它可以正常工作:

<interceptors>
<interceptor-stack name="applicationStack">
    <interceptor-ref name="exception"/>
    <interceptor-ref name="alias"/>
    <interceptor-ref name="servletConfig"/>
    <interceptor-ref name="i18n"/>
    <interceptor-ref name="prepare"/>
    <interceptor-ref name="chain"/>
    <interceptor-ref name="scopedModelDriven"/>
    <interceptor-ref name="modelDriven"/>
    <interceptor-ref name="fileUpload"/>
    <interceptor-ref name="checkbox"/>
    <interceptor-ref name="multiselect"/>
    <interceptor-ref name="staticParams"/>
    <interceptor-ref name="actionMappingParams"/>
    <interceptor-ref name="params">
      <param name="excludeParams">dojo\..*,^struts\..*</param>
    </interceptor-ref>
    <interceptor-ref name="conversionError"/>
    <interceptor-ref name="validation">
        <param name="excludeMethods">input,back,cancel,browse</param>
    </interceptor-ref>
    <interceptor-ref name="workflow">
        <param name="excludeMethods">input,back,cancel,browse</param>
    </interceptor-ref>
    <interceptor-ref name="debugging"/>

    <!-- User defined interceptor -->
    <interceptor-ref name="contextSecurityInterceptor"/>
</interceptor-stack>

I haven't defined stack for interceptors defined in struts.xml.

After defining below stack in struts.xml its works fine:

<interceptors>
<interceptor-stack name="applicationStack">
    <interceptor-ref name="exception"/>
    <interceptor-ref name="alias"/>
    <interceptor-ref name="servletConfig"/>
    <interceptor-ref name="i18n"/>
    <interceptor-ref name="prepare"/>
    <interceptor-ref name="chain"/>
    <interceptor-ref name="scopedModelDriven"/>
    <interceptor-ref name="modelDriven"/>
    <interceptor-ref name="fileUpload"/>
    <interceptor-ref name="checkbox"/>
    <interceptor-ref name="multiselect"/>
    <interceptor-ref name="staticParams"/>
    <interceptor-ref name="actionMappingParams"/>
    <interceptor-ref name="params">
      <param name="excludeParams">dojo\..*,^struts\..*</param>
    </interceptor-ref>
    <interceptor-ref name="conversionError"/>
    <interceptor-ref name="validation">
        <param name="excludeMethods">input,back,cancel,browse</param>
    </interceptor-ref>
    <interceptor-ref name="workflow">
        <param name="excludeMethods">input,back,cancel,browse</param>
    </interceptor-ref>
    <interceptor-ref name="debugging"/>

    <!-- User defined interceptor -->
    <interceptor-ref name="contextSecurityInterceptor"/>
</interceptor-stack>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文