当前位置: 首页 > 知识库问答 >
问题:

web.xml中html文件的url模式

上官飞
2023-03-14

我们知道如何为servlet设置url模式,但我无法在web中为html设置url模式。xml,你能帮我找到解决方案吗?我搜索了一下,但找不到,请在下面找到我的问题。

<servlet>
    <servlet-name>Login</servlet-name>
    <servlet-class>auth.Login</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>Login</servlet-name>
    <url-pattern>/login</url-pattern>
</servlet-mapping>

在上面的代码中,我正在为Web中的**Login**servlet类设置url模式.xml,就像明智的,我可以为web中的html文件设置url模式.xml请帮助找到解决方案,提前感谢您

共有3个答案

姚智
2023-03-14

URL模式用于servlet和过滤器。对于servlet

<servlet-mapping>
    <servlet-name>Servlet-name</servlet-name>
    <url-pattern>/< Pattern ></url-pattern>
</servlet-mapping>

过滤器

<filter-mapping>
    <filter-name>Filter-Name</filter-name>
    <url-pattern>/< Pattern ></url-pattern>
    <dispatcher>REQUEST</dispatcher>
</filter-mapping>

这些不适用于Html文件。事实上,JSP也没有模式配置。

卫寒
2023-03-14

如果您不介意将HTML页面更改为JSP,则可以为其设置url模式,如下所示:

<servlet>
    <servlet-name>Error</servlet-name>
    <jsp-file>/pages/error.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>Error</servlet-name>
    <url-pattern>/error</url-pattern>
</servlet-mapping>
叶德运
2023-03-14

如果你想保护*。通过直接访问html文件(通过将*.html文件放在WEB-INF下),您可以使用Servlet,它只负责将所有此类请求转发到预期的html文件。

<servlet>
    <servlet-name>HTMLServlet</servlet-name>
    <servlet-class>my.package.HTMLServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>HTMLServlet</servlet-name>
    <url-pattern>/somepath/*.html</url-pattern>
</servlet-mapping>

servlet类中的代码可能如下所示

...
protected void doGet(HttpServletRequest request,
                      HttpServletResponse response)
        throws ServletException, IOException {
  String requestedPath = //... code for getting requested HTML path
  request.getRequestDispatcher(requestedPath).forward(request, response);
}
...
 类似资料:
  • 在符合J2EE web app 2.4版的web.xml中,可以在元素中包含多个元素吗,如下所示: 我从http://java.sun.com/xml/ns/j2ee/web-app_2_4.XSD中查找了XSD“web-app_2_4.XSD”文件,其定义如下所示: URL模式定义如下所示: 所以我认为,我们可以在元素中有多个元素。但是,我的Eclipse IDE似乎不同意我的观点,并且需要一个

  • 问题内容: 我正在为JEE5 Web服务编写单元测试。Web服务的行为取决于文件中设置的属性。因此,我想将我分成一个恒定的部分和一个在两次测试之间更改的部分。 为了查看是否确实可行,我尝试查看是否可以拆分该属性。根据一些说明,我发现了以下几点: web.xml fragment.xml 但是,我在文件上收到验证错误: 必须为元素类型“ web-app”声明属性“ version”。[7] 必须为元

  • 我知道这可以在Servlet3.0中通过@Webservlet注释实现,在这里您只需分配url模式,而不必在web.xml中进行任何配置。是否有一种方法可以通过编程方式为运行Servlet2.5的应用程序分配servlets url模式? 我正在创建一个库,多个应用程序将依赖于它,并试图使它,以便这些应用程序中的每一个都不必显式配置任何servlet url映射,我正在创建的库中的servlet在

  • 在Web服务器中运行Servlet的部分被称为Servlet容器。Servlet要想在Servlet容器中正常运行,必须要使用web.xml(在WEB-INF目录中)文件进行配置(虽然使用Java IDE在大多数情况下是不需要手工配置web.xml的,但理解和掌握web.xml的常用配置将会有助于更进一步学习Java Web技术)。web.xml是一个标准的XML格式文件。下面是一个标准的web.

  • 我对java servlet很陌生。我对为什么我们在web中使用servlet映射感到非常困惑.xml我已经制作了一个使用两个servlet的项目,如果我不使用servlet映射,那么项目也会以正确的方式执行。那么为什么使用 servlet 映射..???

  • 问题内容: 我有一个内容为web.xml的文件: 我尝试过要求 这两个请求都由Servlet2处理。为什么? 更新 谢谢你们的帮助。我意识到行为取决于servlet映射声明的顺序。我尝试了这个web.xml 结果: 问题答案: 从Servlet 3.0 规范开始,这是Web容器在收到请求后必须定位servlet的方式(重点是我的): 用于映射到servlet的路径是来自请求对象的请求URL减去上下