2

是否可以通过查看动作 bean 上的 @UrlBinding 注释并将这些动作 bean 转发到预编译的 JSP/servlet 而不需要定义和维护 <servlet> <servlet- web.xml 中的映射> 对?基本上,我只想维护 @UrlBinding 注释作为可用 webapp 路径的唯一决定因素。

也许有一种方法可以将 Jasper 指向我的 servlet 所在的位置并自动加载它们,而无需显式定义每一个?

实现这一点的特定方式并不重要,只是我离开了显式 servlet web.xml 依赖项。

4

1 回答 1

1

也许我不明白你的问题,但我会试一试。AFAIK 是 Stripes 应用程序的 web.xml 中唯一需要使用 @URLBinding 作为 Web 应用程序中 URL 的“真实来源”的映射:

<filter>
    <filter-name>StripesFilter</filter-name>
    <filter-class>net.sourceforge.stripes.controller.StripesFilter</filter-class>
    <init-param>
        <param-name>ActionResolver.Packages</param-name>
        <param-value>com.your.action.beans.package</param-value>
    </init-param>
    <init-param>
        <param-name>Extension.Packages</param-name>
        <param-value>com.your.extension.packages</param-value>
        </param-value>
    </init-param>
</filter>

...

<servlet>
    <servlet-name>DispatcherServlet</servlet-name>
    <servlet-class>net.sourceforge.stripes.controller.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

...

<filter-mapping>
    <filter-name>StripesFilter</filter-name>
    <servlet-name>DispatcherServlet</servlet-name>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>

<servlet-mapping>
    <servlet-name>DispatcherServlet</servlet-name>
    <url-pattern>*.do</url-pattern>
</servlet-mapping>

这样,当您添加/删除操作 bean 和/或 JSP 时,无需更改 web.xml 中的任何内容。

于 2009-06-09T03:11:50.950 回答