【发布时间】:2016-05-25 16:05:36
【问题描述】:
样式表未发送到浏览器。
Windows 7 Eclipse 4.5.2(动态 Web 项目) tomcat 7.0.69(实例在工作站本地)
[Eclipse 工作区屏幕截图][1]
网站由 servlet 支持。我试过了... -- XHTML
out.println("<?xml-stylesheet href="/style/mystyle.css" type="text/css"?>");
-- XHTML
out.println("<?xml-stylesheet href="style/mystyle.css" type="text/css"?>");
-- 从 XHTML 转换为 HTML
-- 使用
out.println("<base href=' http://localhost:8080/My_Website03/'>");
*(This method is not scalable to a server, I know. Just trying things.)*
-- 使用 request.getContextPath()
out.println("<link rel='stylesheet' href='" + request.getContextPath()
+ "/style/style.css' type='text/css' />");
out.println("<link rel='stylesheet' href='" + request.getContextPath()
+ "/style/blue.css' type='text/css' />");
-- 不使用前导正斜杠
out.println("<link rel='stylesheet' href='style/style.css' type='text/css' />");
out.println("<link rel='stylesheet' href='style/blue.css' type='text/css' />");
-- 使用前导正斜杠
out.println("<link rel='stylesheet' href='/style/style.css' type='text/css' />");
out.println("<link rel='stylesheet' href='/style/blue.css' type='text/css' />");
-- 使用前导点斜杠
out.println("<link rel='stylesheet' href='./style/style.css' type='text/css' />");
out.println("<link rel='stylesheet' href='./style/blue.css' type='text/css' />");
-- 使用前导双点斜杠
out.println("<link rel='stylesheet' href='../style/style.css' type='text/css' />");
out.println("<link rel='stylesheet' href='../style/blue.css' type='text/css' />");
没有办法将 .css 文件传送到浏览器。
为了让 servlet 正常工作,需要修复日志记录问题,并且必须让 Eclipse 控制 TomEE-Plume conf。我不知道为什么,但只修复两者中的一个并不能解决问题。我在 Eclipse 和 TomEE 方面的技能很弱,无法理解原因。
修复日志记录问题已写在此 wiki 页面上。更多信息:http://wiki.eclipse.org/WTP_Tomcat_FAQ#How_do_I_enable_the_JULI_logging_in_a_Tomcat_5.5_Server_instance.3F 尽管 wiki 部分是为 Tomcat 5.5 编写的,但它仍然适用于 Tomcat 7.0.69。如果您问我,很长时间没有修复错误。
http://tomee.apache.org/tomee-and-eclipse.html 页面在“高级安装”部分的第 9 步中,给人的印象是配置 Eclipse 以获取控制权是可选的。如上所述,要让 TomEE-Plume 为 servlet 工作,此步骤不是可选的。我不得不让 Eclipse 控制 TomEE 的安装。
关于第 9 步的另一个说明。说明说“使用工作区元数据”,但所需的选项称为“添加外部 Web 模块...”而不是“使用工作区元数据”。
还有最后一个差异需要提及。不再有 /webapps/tomee 目录。我想这在编写文档后发生了变化。我改用“\host-manager”。我希望这不会回来咬我。
哦,是的,另一件事是,Web 模块或概览页面上没有“保存”按钮。执行 CTL+S 以保存更改。
希望对其他人有所帮助。
【问题讨论】:
-
Web 服务器对这些请求返回了哪些错误?普通的非生成 HTML 页面是否有效?
-
我无法让 Tomcat 生成除 Eclipse 默认显示的启动日志之外的日志。我更改了 logging.properties 没有任何效果。
-
您是否将您的servlet 映射到
/的URL 模式上?要排除一个和另一个,直接在 webbrowser 中打开这些 CSS 文件并检查它们的输出。 -
Eclipse IDE 显示来自 / -> HomeServlet 的 Servlet 映射,但我在 web.xml 中看不到映射。不知道 Eclipse 将映射存储在哪里。
-
有你的问题的原因。基本上,您将使用
HomeServlet覆盖所有未命中任何特定servlet 的请求。这些 CSS 文件将代表HomeServlet的输出。映射 servlet 的另一种方法是@WebServlet。
标签: html css eclipse tomcat servlets