我有一个名为BookShopWeb的动态Web项目,我在eclipse中创建,具有以下目录结构
/BookShopWeb/|
|--src
|---WebContent
|
|---META-INF
|----WEB-INF---web.xml
|
|--css--styles.css
|--jsp---index.jsp
Run Code Online (Sandbox Code Playgroud)
在web.xml中,我将起始页面设置为
<welcome-file-list>
<welcome-file>/WEB-INF/jsp/index.jsp</welcome-file>
Run Code Online (Sandbox Code Playgroud)
在index.jsp中,我将css包括在内
<head>
<link rel="stylesheet" type="text/css" href="../css/styles.css" />
</head>
Run Code Online (Sandbox Code Playgroud)
加载时索引页面不会显示css信息.我使用firebug检查了元素,它显示错误报告
Apache Tomcat/6.0.29 - Error report..
The requested resource (/css/styles.css) is not available.
Run Code Online (Sandbox Code Playgroud)
知道为什么会这样吗?我怎么能纠正这个?谢谢你
在Eclipse中,我在WebContent文件夹下创建了一个Dynamic Web Project和一个JSP文件.我还在WebContent文件夹下创建了一个CSS文件.然后我<link rel="stylesheet" type="text/css" href="XXX.css">在JSP中使用链接到CSS文件,但是当我在Web服务器(Tomcat)上运行时,CSS不适用.有人可以告诉我为什么吗?
我想检索webapplication的根路径,然后我想追加到根路径的链接.我尝试了request.context,但它返回"http:// localhost:8080/webapp/web-inf".
例如,我的根文件夹路径是
path = http://localhost:8080/webapp/
Run Code Online (Sandbox Code Playgroud)
我想追加到此路径的剩余链接
helpPath= /help/page/help.htm
<a href="${path} + ${helpPath}" target="_blank">name</a>
Run Code Online (Sandbox Code Playgroud)
任何帮助或指针真的很感激.
我正在使用ibm websphere并创建一个动态Web项目.我的所有JSP文件都在我的WEB-INF文件夹中,我在我的web.xml文件中使用servlet映射 使它们可以访问.到目前为止这个工作得很好.但是我的CSS有问题.与往常一样,我的CSS文件位于WebContent名为css的文件夹中.继承我的链接jsp
<link rel="stylesheet" href = "css/styles.css">
Run Code Online (Sandbox Code Playgroud)
我没有运气让我的CSS显示......
我错过了什么?
我的java webapp中有以下结构
-- main
-- java
-- resources
-- lib
-- css
-- style.css
-- webapp
-- WEB-INF
-- web.xml
--index.jsp
Run Code Online (Sandbox Code Playgroud)
如何将style.css链接到我的索引jsp?
<link rel="stylesheet" href="???">
Run Code Online (Sandbox Code Playgroud)
这应该是什么?
提前致谢
我安装了SpringSource Tool Suite 2.8.0.我正在尝试在JSP中包含一个JS文件,使用Spring MVC模板作为起点.我的JSP看起来像这样:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
<html>
<head>
<title>Home</title>
<script type="text/javascript" src="/a.js"></script>
</head>
<body>
Hello world!
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
a.js位于src\main\resources下,如下所示:
window.alert("A");
Run Code Online (Sandbox Code Playgroud)
结果是"你好世界!" 得到打印没有警报:-(
我尝试将JS文件放在不同的位置,将src更改为带/不带"/",甚至在web.xml中添加servlet-mapping以使用"*.js"的"default"servlet.似乎没什么用.
我究竟做错了什么?
问题:我的带有web.xml的index.jsp一直进入HTTP 404和500
我正在使用Tomcat6。
这是来自index.jsp:
<legend>Registration</legend>
<form action="./register"> <%-- Address from web.xml --%>
First name: <input type="text" name="firstName"><br>
Last name: <input type="text" name="lastName"><br>
<input type="submit" value="Register">
</form>
Run Code Online (Sandbox Code Playgroud)
当我在注册时:

然后输入名称和姓氏,然后输入404,消息为:
HTTP状态404-Servlet注册Servlet不可用
类型状态报告
消息 Servlet注册Servlet不可用
描述所请求的资源(Servlet RegistrationServlet不可用)不可用。
Apache Tomcat / 6.0.35
您认为该错误的原因是什么?
该类RegistrationServlet在文件RegistrationServlet.java夹中的文件下src/coreservlets/
我检查了web.xml,但似乎还可以,但是在这里(如果有帮助的话):
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
<servlet>
<servlet-name>ShowBalance</servlet-name>
<servlet-class>coreservlets.ShowBalance</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ShowBalance</servlet-name>
<url-pattern>/show-balance</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>RandomNumberServlet</servlet-name>
<servlet-class>coreservlets.RandomNumberServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>RandomNumberServlet</servlet-name>
<url-pattern>/random-number</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>RegistrationServlet</servlet-name>
<servlet-class>coreservlets.RegistrationServlet</servlet-class>
</servlet>
<servlet-mapping> …Run Code Online (Sandbox Code Playgroud) 我有一个名为Main.jsp的文件,位于"http://Mywebpage.com/Open/This/Folder/Main.jsp"的绝对URL路径.
在Main.jsp里面,有一个jsp包括:
<%@ include file="../../Top.jsp" %>
Run Code Online (Sandbox Code Playgroud)
现在,在Top.jsp页面中,我有其他jsp和javascript语句引用文件:
<%@ taglib uri="emonogram.tld" prefix="em" %>
...
<script type="text/javascript" src="HL.js"></script>
Run Code Online (Sandbox Code Playgroud)
emonogram.tld和HL.js存储在与Top.jsp相同的目录中,即"http://Mywebpage.com/Open/".
我需要Top.jsp足够灵活,这样任何文件都可以引用它,无论它在目录树中的哪个位置.这里的问题是我收到错误,因为无法找到Top.jsp中引用的文件.为什么?jsp包含路径将是Main.jsp的相对路径.所以,Top.jsp会失败,因为当我打电话给emonogram.tld时,我想要"http://Mywebpage.com/Open/emonogram.tld",但它实际上是"http://Mywebpage.com/Open" /This/Folder/emonogram.tld".
我尝试查看一些jsp选项,如getRequestURL,getServletPath,getRealPath和getContextPath,但这些方法似乎没有返回我想要的内容.
我当前的逻辑是检索Top.jsp的相对路径,并将其分别添加到emonogram.tld和HL.js.但我不知道该怎么做; 我想弄明白这一点.
更新:根据BalusC的答案,我安装了标签和Tomcat 5.5.我按照链接和web.xml包含相应的信息.我甚至更新到JSP 1.2,没有.如果${}它只相当于在<% %>标签内部进行,那么它不是一个成败的情况,在我得到原始问题后我可以担心它.但是谢谢你.
我按照这个链接尝试了所有以"get ..."开头的方法,但似乎都没有.
getContextPath()/Open即使Main.jsp位于/ Open/This/Folder /中,我也可以同时使用Top.jsp和Main.jsp."emonogram.tld"遗憾的是,这个问题正在影响加载,这是一个标记库,而不仅仅是javascript文件.
再次感谢你.
Update2:道歉,拼写错误; 我的意思是JSTL 1.2,而不是JSP 1.2.我在Tomcat 5.5.28,JSP 2.0和JSTL 1.2.
顺便说一句,谢谢你的帮助和知识.虽然不鼓励使用scriptlet,但它是相同的,这是好的.有了getcontextPath(),我期待/Open/This/Folder/Main.jsp和/Open/Top.jsp,但它会返回/Open/两个文件,这很奇怪.我会继续调查,希望能够解决问题,再次感谢你.
我正在编写一个servlet(特别是Scalatra).在servlet中,我在每个页面都包含的目录中有许多链接.我希望这些链接与应用程序库相关.如果我使用链接,如"/ foo"的,当servlet被从根(本地主机:8080 /)担任一切工作正常,但如果我为它服务,从码头/ Tomcat的与其他servlet(本地主机:8080/servlet的)沿着链接servlet之外的点.
对这个问题有什么好处?
我正在使用Eclipse Europa IDE和Tomcat服务器 在Spring MVC Framework中开发Web应用程序
我的目录结构是(部分):
- WebContent
- WEB-INF
- pages
- CSS
- images
- login.html
- dispatcher-servlet.xml
- web.xml
Run Code Online (Sandbox Code Playgroud)
在我的login.html中,我有一个指向css文件的链接
<link rel="stylesheet" type="text/css" href="CSS/loginregister.css" media="screen">
Run Code Online (Sandbox Code Playgroud)
由于我的login.html和CSS文件夹位于同一文件夹"pages"中,我认为这样可行.
但不.css文件未加载(login.html显示顺利)
我也尝试过:
<href ="/ CSS/loginregister.css">
<href ="pages/CSS/loginregister.css">
我通过我的控制器类访问login.html .
我的网址是这样的:http://localhost:8080/AccountCreation/login.htm
谁能告诉我问题出在哪里?