当前位置: 首页 > 面试题库 >

除了一个servlet之外,还过滤所有映射到Struts2的内容吗?

贲培
2023-03-14
问题内容

我有一个Struts2(2.1.8.1)Web应用程序。我的web.xml看起来像

  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>

  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

它被配置为将所有请求映射到struts过滤器。我想在我的Web应用程序中添加一个servlet。我想将所有带有特定url模式的请求发送到该servlet。我希望其他所有内容都进入我的struts
servlet。

我知道我只能将“ * .action”映射到struts servlet,但是我讨厌.action位于所有URL的末尾。


问题答案:

在您的struts.xml中添加:

<constant name="struts.action.excludePattern" value="/ServletToExcludeFromStruts*"/>

对于多个排除项,该值也应以逗号分隔。参见http://struts.apache.org/2.2.1/docs/webxml.html



 类似资料:
  • 我试图返回所有元素,除了中的最后一个元素,如果tuple中只有两个元素,则返回第一个。由于有很多编译时工具,所以应该可以使用双返回类型。以下是我目前掌握的情况: 如果我能以c 17友好的方式来做这件事,那就太好了。我在上述实现中遇到以下错误: /元组。cpp:36:55:错误:包扩展不包含任何未扩展的参数包 返回std::tuple_cat(std::make_tuple(std::get)。。。

  • 我想知道如何使用正则表达式删除除所有图像标记之外的所有内容。 我已经试过了: (?s)^[^ (?s)^([^ 有谁知道如何将这 2 个组合为多个图像? 下面是我想应用它的内容示例: 我期望的结果应该是:

  • 我希望创建一个正则表达式来提取第一个斜杠之前的所有内容,除非它是单引号或双引号。目前,我有: 现在,我迷路了。根据下面的不同文本,我只想要下面粗体部分: 文本 abc,def,ghi,jkl,mno/123 /abc,def,ghi,jkl,mno 123 abc,/def,“/ghi”,jkl,mno/123 abc,def,“/ghi”,jkl,mno/123 abc,def,“/ghi”,j

  • 问题内容: 我一直在使用Web API在ASP.NET MVC内从事 AngularJS 项目。它非常有用,除非您尝试直接转到有角度的路由URL或刷新页面。我认为可以使用 MVC的路由引擎 来处理服务器配置,而不是胡闹。 当前的WebAPIConfig: 当前的RouteConfig: 当前的Global.asax.cs: 目标: / api / *继续转到WebAPI,/ partials /

  • servlet过滤器映射中的url模式能否指向另一个域中的servlet? 在url模式中,put/*将使此筛选器应用于应用程序中的所有servlet。有没有办法在另一个域/应用程序中为servlet应用过滤器?如果是这样,我应该使用什么样的url模式。 我尝试把完整的路径到域名和servlet,但抛出一个错误,我的应用程序没有启动。

  • 问题内容: 我有两个mysql表。 第一个称为“选择”,由id,user_id和widget_id字段组成。 另一个称为“小部件”,包括widget_id等几项内容。 我创建了一个过滤器,以便用户可以显示他/她选择的小部件,也可以显示他/她没有选择的小部件。对于他选择的人,我使用以下方法: 但是,我不知道如何显示他/她没有选择的内容。这不起作用(显示所有内容): 我该怎么做呢? 问题答案: 使用N