将样式表链接到Servlet

时间:2016-09-08 08:05:24

标签: tomcat servlets

我需要将我的stylesheet与名称'stylesheet.css'链接到我的servlet。

我已经尝试使用谷歌搜索解决方案,但没有解决我的问题。

我的index.html的目录路径如下所示: /usr/share/tomcat/webapps/ROOT/WEB-INF/classes/index.html

我的样式表在这里: /usr/share/tomcat/webapps/ROOT/stylesheet.css

在我的index.html中,我有以下行来获取样式表:

   out.println("<LINK REL='StyleSheet' HREF='/usr/share/tomcat/webapps/ROOT/stylesheet.css' TYPE='text/css'>");

我的错误在哪里?

2 个答案:

答案 0 :(得分:1)

href属性中提供的“网址”实际上是服务器文件系统stylesheet.css的路径 - 但浏览器通常无法访问此FS,除了在开发之外 - 可能在与servlet引擎不同的机器上运行。

这意味着您必须提供一个URL,浏览器可以使用该URL来联系服务器(通常通过HTTP(S)协议)并请求资源。在此特定情况下 href='/stylesheet.css'应该足够了,因为您使用ROOT webapp,因此上下文为空(或/)。默认情况下,我会使用

out.println("<LINK REL='StyleSheet' HREF='" + request.getContextPath() + "/stylesheet.css' TYPE='text/css'>");

警告

尽量避免在servlet中生成HTML输出。虽然它从一开始就很有用,只是为了理解工作原理,将MVC或类似架构用于实际项目,并使用JSP来定义视图(或者像Freemarker这样的模板引擎)。

答案 1 :(得分:1)

找到解决方案,只需将其更改为sort

即可

同时仍保持与上述相同的目录路径