【发布时间】:2018-08-16 18:55:48
【问题描述】:
我正在使用带有@MountPath 的 Apache Wicket 注释,下面的页面路径为“/#{id}/#{action}”,在 /webapp 中我具有以下结构: css/style.css img/logo.png
当我尝试访问页面时出现错误,因为 Wicket 尝试将 style.css 和 logo.png 解析为页面而不是静态文件。
我必须绕过资源文件夹 /css 和 /img,我该怎么做?
【问题讨论】:
-
如果您尝试在此级别操作路径,您确定 Wicket 是适合您的框架吗?您可以尝试为此创建自己的
IRequestMapper,但#{action}位只是向我尖叫“安全漏洞” -
@JeroenSteenbeeke 我试图创建一个请求映射器来解决,但没有成功。我解决了这个问题,在 web.xml 中创建了一个过滤器,并将 /css 和 /img 文件移动到 /commons 文件夹,现在过滤器绕过对 /commons/* 文件夹的请求。您如何看待这个解决方案?
-
这将是解决它的一种方法,但这并不能解决您为什么首先需要此设置?您的页面将处理具有 0-2 段路径的每个 URL,这意味着您将页面用作控制器,并且是一个非常广泛的控制器。这不是页面的用途。它可以工作,但您可能通过使用 Wicket 来使事情变得过于复杂,所以我很想知道您的用例是什么以及您打算如何使用它。