Jsp URL映射不适用于servlet
我有一个奇怪的问题 使用与servlet相同的映射,一个url工作,另一个不工作:Jsp URL映射不适用于servlet,jsp,servlets,web.xml,Jsp,Servlets,Web.xml,我有一个奇怪的问题 使用与servlet相同的映射,一个url工作,另一个不工作: <servlet-mapping> <servlet-name>UL_Admin</servlet-name> <url-pattern>/universal_listings_administration/*</url-pattern> </servlet-mapping> <servle
<servlet-mapping>
<servlet-name>UL_Admin</servlet-name>
<url-pattern>/universal_listings_administration/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Create_New_Site</servlet-name>
<url-pattern>/universal_listings_administration/sites/new_site/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Create_New_Site</servlet-name>
<url_pattern>/universal_listings_administration/sites/delete_site/*</url_pattern>
</servlet-mapping>
为/universal\u listings\u administration/sites/New\u Site/*创建新站点,但不为/universal\u listings\u administration/sites/delete\u Site创建新站点/*
当转到/universal\u listings\u administration/sites/delete\u site/*时,该站点只需转到UL\u Admin
我已经更改了URL的顺序,但是得到了相同的结果。我曾在不同的浏览器上尝试过,认为这可能是缓存问题,但每次都会得到相同的结果
有人知道这里发生了什么吗
我认为它可能是我的过滤器之类的东西?我看了一下,但过滤器似乎一切正常。无论如何,这是我在web.xml中的安全和过滤器设置
<security-constraint>
<web-resource-collection>
<url-pattern>/universal_listings_administration/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<url-pattern>/jsps/admin/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<url-pattern>/stylesheets/admin/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<!-- Filters -->
<filter>
<!-- This filter defines all of the URIs on the site, to ensure easy to update URIs -->
<!-- All URIs defined here will be added to the request's Attributes -->
<!-- The URIs follow naming convention uri-name or uri-admin-name -->
<!-- For simplicity sake, do this only for client URIs (internal can be covered by eclipse!) -->
<filter-name>UriSettingFilter</filter-name>
<filter-class>nz.co.unilistings.control.UriAttributeSettingFilter</filter-class>
<init-param>
<param-name>uri-admin-portal</param-name>
<param-value>/universal_listings_administration/</param-value>
</init-param>
<init-param>
<param-name>uri-admin-new-site</param-name>
<param-value>/universal_listings_administration/sites/new_site/</param-value>
</init-param>
<init-param>
<param-name>uri-admin-delete-site</param-name>
<param-value>/universal_listings_administration/sites/delete_site/</param-value>
</init-param>
</filter>
<filter>
<filter-name>SubdomainFilter</filter-name>
<filter-class>nz.co.unilistings.control.SubdomainFilter</filter-class>
<init-param>
<description>Any subdomain with this value will go to the parent site</description>
<param-name>parent_site_subdomain</param-name>
<param-value>www</param-value>
</init-param>
<init-param>
<description>The URL of the parent site (where people can register)</description>
<param-name>parent_url</param-name>
<param-value>http://www.example.com:8888</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SubdomainFilter</filter-name>
<servlet-name>*</servlet-name>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>UriSettingFilter</filter-name>
<servlet-name>*</servlet-name>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
更新:
我做了一些调试,我确信我将从web.xml复制、粘贴到正确的URL,以下是我在请求中遇到的第一个过滤器,比较create_site和delete_site:
创建网站:
_路径信息:/
_requestURI:/universal\u listings\u administration/sites/new\u site/
_servletPath:/universal\u listings\u administration/sites/new\u site
_uri:/universal\u listings\u administration/sites/new\u site/
删除网站:
_路径信息:/sites/delete\u站点/
_requestURI:/universal\u listings\u administration/sites/delete\u site/
_servletPath:/universal\u listings\u administration
_uri:/universal\u listings\u administration/sites/delete\u site/
我想现在我必须弄清楚为什么_pathInfo和_servletPath是完全不同的…映射看起来很好。这些症状至少表明实际URL错误,或者某个过滤器或servlet在到达servlet之前或之后更改了请求/响应目标
如果不调试/记录所有servlet和过滤器以跟踪整个代码中HttpServletRequest实例的执行路径,就很难解决这个问题。由于我们无法访问您的代码/环境来重现问题,这项任务完全取决于您。我认为我的web.xml中的url映射一定出了问题。必须非常微妙,只有通过复制和粘贴另一个servlet映射并更改url才能修复
可能的原因:使用德语键盘,在英语和德语之间切换???看起来像一个简单的打字错误,应该是,而不是