利用Stripes、Apache Derby和Eclipse进行无配置的J2EE开发(二) - 编程入门网
正确的 ActionBean,用于管理请求。然后 Stripes 利用诸如 @DefaultHandler 或 @HandlesEvent("myEvent") 之类的注释,来确定在 ActionBean 上 调用一次哪个事件。如果没有事件传递给 ActionBean 进行处理,则会调用 @DefaultHandler() 方法,如 清单 4 所示。
清单 4. @DefaultHandler() 方法被调用
子类化 ActionBeanContext Stripes 文档建议子类化 ActionBeanContext,以便为应用程序提供上下文状态的方 面(facade)。 ActionBean 类必须提供一个 ActionBeanContext。ActionBeanContext 提供对 Servlet API 的访问,并且包含关于当前请求的信息。具有对 Servlet API 的访问使得 您可以调用诸如 getRequest() 和 setRequest(HttpServletRequest request) 之类的方 法,如 清单 5 所示。 清单 5. Servlet API 允许您调用方法
事件映射到处理程序方法。Stripes 首先确定 ActionBean,然后确定处理程序。可以 将 HTML 标记(比如 <image> 和 <button>)的名称属性与事件处理程序相 关联。在 GlossaryActionBean 中,save() 方法类似于 清单 6。 清单 6. GlossaryActionBean 中的 save() 方法
当您编辑一个术语表术语时,单击 Save 按钮提交表单和调用 save() 方法。该按钮 类似于: <![CDATA[<stripes:submit name="save" class="btn" value="Save" />]]> 注意 Save 按钮的 name 值与 GossaryActionBean 类中的 <![CDATA [@HandlesEvent("save")]]> 注释相关。 Stripes 为处理服务器端转发或客户端重定向分别提供了 ForwardResolution 和 RedirectResolution 类。ForwardResolution 类允许只转发到相同 Web 应用程序中的另 一个路径。可以用以下三种方式之一构造 ForwardResolution 类: <![CDATA[ForwardResolution(Class<? extends ActionBean> beanType)]]> 提供一个 ActionBean 来转发到所需的 URL。 <![CDATA[ForwardResolution(Class<? extends ActionBean> beanType, String event)]]> 提供一个 ActionBean 来转发到所需的 URL 并调用一个事件。 <![CDATA[ForwardResolution(String path)]]> 提供一个简单的 URL 路径用 于转发到。 RedirectResolution 可以在 Web 上下文之中或者之外进行转发,您可以用以下四种 方式之一构造它: <![CDATA[RedirectResolution(Class<? extends ActionBean> beanType)]]> 提供一个 ActionBean 来转发到所需的 URL。 <![CDATA[RedirectResolution(Class<? extends ActionBean> beanType, String event)]]> 提供一个 ActionBean 来转发到所需的 URL 并调用一个事件。 <![CDATA[RedirectResolution(String url)]]> 提供一个简单的 URL 路径用 于转发到。 <![CDATA[RedirectResolution(String url, boolean prependContext)]]> 提 供一个简单的 URL 路径用于转发到。它也提供一个 Boolean 值来指定上下文是否应该被 添加到请求。如果是对外部 URL 进行调用的话,该值应该设置为 false。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |