Java 包括一个具有自己CSS的JSP文件
我有一个简单的JSP文件,它应该显示一个横幅/标题和一行文本。 由于横幅将在整个网站上复制,我更愿意将其与其CSS属性分开,因此我做了以下工作: index.jspJava 包括一个具有自己CSS的JSP文件,java,css,jsp,model-view-controller,jersey,Java,Css,Jsp,Model View Controller,Jersey,我有一个简单的JSP文件,它应该显示一个横幅/标题和一行文本。 由于横幅将在整个网站上复制,我更愿意将其与其CSS属性分开,因此我做了以下工作: index.jsp <body> <jsp:include page="header.jsp" /> <p>The service is running and accessible <a href="/rest">here</a></p> <div&
<body>
<jsp:include page="header.jsp" />
<p>The service is running and accessible <a href="/rest">here</a></p>
<div></div>
</body>
<head>
<link href="style/header.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="container">
<div id="banner_container" class="center">
<h1 id="title">Title</h1>
</div>
<div id="menu_container" class = "center">
<div id="menu_content">
<ul>
<li><a>Home</a></li>
</ul>
</div>
</div>
</div>
</body>
<head>
<titleTitle</title>
<link href="style/header.css" rel="stylesheet" type="text/css">
</head>
<body>
<head>
<link href="style/header.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="container">
<div id="banner_container" class="center">
<h1 id="title">Title</h1>
</div>
<div id="menu_container" class = "center">
<div id="menu_content">
<ul>
<li><a>Home</a></li>
</ul>
</div>
</div>
</div>
</body>
<p>The service is running and accessible <a href="/rest">here</a></p>
<div></div>
</body>
当我在浏览器中加载该端点时,我得到的只是index.jsp,没有横幅或任何css样式(见下文)。我错过了什么
为index.jsp输出HTML
<body>
<jsp:include page="header.jsp" />
<p>The service is running and accessible <a href="/rest">here</a></p>
<div></div>
</body>
<head>
<link href="style/header.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="container">
<div id="banner_container" class="center">
<h1 id="title">Title</h1>
</div>
<div id="menu_container" class = "center">
<div id="menu_content">
<ul>
<li><a>Home</a></li>
</ul>
</div>
</div>
</div>
</body>
<head>
<titleTitle</title>
<link href="style/header.css" rel="stylesheet" type="text/css">
</head>
<body>
<head>
<link href="style/header.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="container">
<div id="banner_container" class="center">
<h1 id="title">Title</h1>
</div>
<div id="menu_container" class = "center">
<div id="menu_content">
<ul>
<li><a>Home</a></li>
</ul>
</div>
</div>
</div>
</body>
<p>The service is running and accessible <a href="/rest">here</a></p>
<div></div>
</body>
试试看:
。这就是我使用的,它将所有的CSS和所有东西都拉进去,输出的HTML是什么样子的?当然这是无效的,因为include的头和体都在index.jsp输出的body标记中?@AlanHay如果你是对的,那么输出的HTML都是错误的。如何使用两个JSP修复此问题?我用输出htmlMy更新了这个问题,我猜Jersey servlet与提供静态内容的默认servlet冲突。查看上一篇文章,您看到Jersey servlet的servlet映射为/*
。这是用于默认servlet的映射。呈现页面后,浏览器将在看到
后再次请求css页面。当它试图访问css页面时,将遇到Jersey servlet而不是默认servlet。我相信如果你使用Firefox的Firebug这样的工具,你会看到另一个css页面的请求,并且。。。。。。未找到报告。如果是这种情况,我想解决方案是对Jersey servlet使用不同的映射,比如/rest/*
,而不是/*