-1

如果我想将请求重定向到其他资源,我可以做某事。喜欢:

request.getRequestDispatcher (resource).forward (request, response);

但是有没有办法提前找出将使用哪个 servlet 来提供服务resource?我问是因为在我的设置中重定向之前,我似乎需要在响应中设置内容类型,否则(如果目标 servlet 尝试设置它)它会被忽略。所以,我想知道我要重定向到什么来提前确定正确的内容类型。

编辑:

换句话说,我有什么:

SERVLET_1  ==> [resource] SERVLET_2

出于某种原因,当SERVLET_2设置内容类型时,它会被忽略。因此,我需要将其设置为SERVLET_1,但对于SERVLET_2将生成的响应内容。所以,要做出正确的决定,SERVLET_1需要知道SERVLET_2会发生什么。它可以以某种方式从 中找到它resource吗?

4

1 回答 1

1

您可以通过getMimetype()获取文件的 myme 类型

String mimeType = getServletContext().getMimeType(resourcePath);

返回指定文件的 MIME 类型,如果 MIME 类型未知,则返回 null。MIME 类型由 servlet 容器的配置确定,并且可以在 Web 应用程序部署描述符中指定。常见的 MIME 类型包括 text/html 和 image/gif。

于 2013-08-22T09:02:53.703 回答