0

我从 Tomcat 运行我的项目时遇到问题。我以前使用过 IDE,直到现在从未遇到过这个问题。我的 jsp 带有指向 css 的链接,如下所示:

<%@page import="data.PageData"%>
<%@page import="dao.pageDao"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="pagedata" class="data.PageData" scope="request"></jsp:useBean>
<html lang="en">
<head>
    <meta charset="utf-8"/>
    <title><jsp:getProperty name="pagedata" property="title" /></title>
    <link rel="stylesheet" href="main.css"> 
</head>
<body>
<div id="big_wrapper">
    <header id=top_header>
      <h1>Site Header</h1>
    </header>
 <div id="new_div">
  <section id="main_section">
  <jsp:getProperty property="maintext" name="pagedata"/> 

  </section>
  <aside id="side_menu">
    <%= request.getAttribute("pagemenu") %>
  </aside>
  </div>
  <footer id="the_footer">
    Copyright  2012 &copy;
  </footer>
  </div>
</body>
</html>;

我把它放在我的tomcat的项目根目录中,就在我有我的jsp的地方。但是每当我尝试运行它时,它都会显示我的 jsp 页面,但没有样式(它看不到 main.css)。我应该怎么做才能用样式显示它?ps我应该把smth放在web.xml中吗?

4

2 回答 2

2

什么是 URL 映射?您的 main.css 没有指定路径,因此它与您的 URL 映射中的路径相关,这就是您应该放置 main.css 文件的位置。

要测试您是否能够访问 main.css,请在 Firefox 中查看 html 源代码并单击 main.css。Firefox 将引导您找到 main.css 的来源。如果您看不到您期望的 css 代码,那么您的路径是错误的。你可能想做类似的事情

<link rel="stylesheet" href="/my/url/mapping/path/main.css"> 

或者

<link rel="stylesheet" href="../../my/relative/path/main.css">

如果在您使用 IDE 运行它之前它可以工作,则可能是您的 IDE 在没有上下文路径的情况下启动了您的 web 应用程序,而当您在 tomcat 下运行它时,它具有上下文路径。您需要确保 css 或其他资源的路径正确。

于 2012-05-25T20:46:41.483 回答
0

Sorry guy for disturbing you, i found the mistake, it was in xml mapping, i shouldn't have put "/" in the very end of url-pattern

于 2012-05-25T23:02:14.613 回答