如何找到服务给定资源的servlet?

时间:2013-08-22 09:01:00

标签: java servlets weblogic

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

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

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

修改

换句话说,我有:

SERVLET_1  ==> [resource] SERVLET_2

出于某种原因,当SERVLET_2设置内容类型时,它会被忽略。因此,我需要在SERVLET_1中进行设置,但需要SERVLET_2生成的响应内容。因此,要做出正确的决定SERVLET_1需要了解SERVLET_2将会是什么。能以某种方式从resource找到它吗?

1 个答案:

答案 0 :(得分:1)

您可以通过getMimetype()

获取myme类型的文件
String mimeType = getServletContext().getMimeType(resourcePath);
  

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