求教高手JSP中引用CSS样式问题!!!

w287656329 2012-06-11 05:36:57
我在login.jsp中引用了这个css样式,<link rel="stylesheet" type="text/css" href="css/style.css" />
在浏览器输入http://localhost:8080/cxt_hams/login.jsp会先执行我定义的登录过滤器主要代码如下:
// 得到路径名
String url = request.getRequestURI();
// 得到用户执行的操作命令
String path = url.substring(url.lastIndexOf("/") + 1, url
.lastIndexOf("."));
if (path.equals("login")) {// 如果为登录页面则让用户登录
arg2.doFilter(arg0, arg1);
} else if (!path.equals("login")
&& session.getAttribute("employee") == null) {// 如果session过期则跳到登陆页面
response.sendRedirect("login.jsp");// 重定向到登陆页面
} else {
arg2.doFilter(arg0, arg1);// 继续执行操作
}
跳到登录页面样式不能显示,但是当我登录成功后再推出系统返回到login.jsp,这时又有样式,但是再刷新页面,样式又没了,意思就是需要每次登录系统再推出,登录页面才会有样式,请教大神们这css样式究竟是什么问题!!!!
...全文
278 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
w287656329 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
明显是过滤器把css给过滤了


Java code


// 得到路径名
String url = request.getRequestURI();
[color=#FF0000]if(!url.endWith(".jsp")){//大概是这么写,让不是jsp的文件,比如.css .js .png等通过
arg2.doFilter(arg0, arg1);
return;
……
[/Quote]
可以了哈 谢谢
  • 打赏
  • 举报
回复
直接用绝对路径!!
在jsp页面
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
在link href="<%=path%>/css/style.css"
w287656329 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
明显是过滤器把css给过滤了


Java code


// 得到路径名
String url = request.getRequestURI();
[color=#FF0000]if(!url.endWith(".jsp")){//大概是这么写,让不是jsp的文件,比如.css .js .png等通过
arg2.doFilter(arg0, arg1);
return;
……
[/Quote]

写了这个后,假如我直接在url输入welcome.jsp的地址,都可以不通过登录就到达欢迎页面了,后面的业务代码不起作用了呢?
你好毒你好毒 2012-06-13
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

明显是过滤器把css给过滤了

Java code

// 得到路径名
String url = request.getRequestURI();
if(!url.endWith(".jsp")){//大概是这么写,让不是jsp的文件,比如.css .js .png等通过
arg2.doFilter(arg0, arg1);
return;
}
……
[/Quote]

说对了,我今天也随便写的一个过滤器结果把图片神马的都过滤掉了

我建议只拦截action和jsp或者没有后缀的
asia_deng 2012-06-12
  • 打赏
  • 举报
回复
明显是过滤器把css给过滤了


// 得到路径名
String url = request.getRequestURI();
if(!url.endWith(".jsp")){//大概是这么写,让不是jsp的文件,比如.css .js .png等通过
arg2.doFilter(arg0, arg1);
return;
}


// 得到用户执行的操作命令

}
w287656329 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
引用 3 楼 的回复:
明显就是样式的路径问题
css/style.css作为一个相对路径,灰常的不稳定
推荐使用绝对路径,/css/style.css ->根目录下的css的文件夹里的css文件
使用JSTL的话可以是${ctx}/css/style.css


我使用过绝对路径 一样存在这个问题 不是路径问题
[/Quote]
我知道是我写的这个过滤器的问题了,因为我不使用这个过滤器的话就有样式,请大神些帮我看下我写的这个过滤器有啥问题。
web.xml配置
<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>com.cxt.hr.model.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
过滤器代码实现:
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
// 获取request,response,session对象
HttpServletRequest request = (HttpServletRequest) arg0;
HttpServletResponse response = (HttpServletResponse) arg1;
HttpSession session = request.getSession();
// 得到路径名
String url = request.getRequestURI();
// 得到用户执行的操作命令
String path = url.substring(url.lastIndexOf("/") + 1, url
.lastIndexOf("."));
if (path.equals("login")) {// 如果为登录页面则让用户登录
arg2.doFilter(arg0, arg1);
} else if (!path.equals("login")&& session.getAttribute("employee")== null) {// 如果session过期则跳到登陆页面,session保存当前登录的用户。
response.sendRedirect("login.jsp");// 重定向到登陆页面
} else {
arg2.doFilter(arg0, arg1);// 继续执行操作
}
}
w287656329 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
明显就是样式的路径问题
css/style.css作为一个相对路径,灰常的不稳定
推荐使用绝对路径,/css/style.css ->根目录下的css的文件夹里的css文件
使用JSTL的话可以是${ctx}/css/style.css
[/Quote]

我使用过绝对路径 一样存在这个问题 不是路径问题
jackson_fighting 2012-06-11
  • 打赏
  • 举报
回复
用绝对路径。。。
phh1989 2012-06-11
  • 打赏
  • 举报
回复
明显就是样式的路径问题
css/style.css作为一个相对路径,灰常的不稳定
推荐使用绝对路径,/css/style.css ->根目录下的css的文件夹里的css文件
使用JSTL的话可以是${ctx}/css/style.css
w287656329 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
是不是缓存的问题。

你页面跳来跳去跟你页面引入的css没多大关系吧
[/Quote]
我其他页面也是引用的这个样式 都没问题啊,就只有这个登录页面有问题,我退出系统也是直接重定向到这个登录页面的,这种情况都有样式啊,我把tomcat下面的工程都删了的,work下面的也删除了的,应该不存在缓存的问题吧。
你好毒你好毒 2012-06-11
  • 打赏
  • 举报
回复
是不是缓存的问题。

你页面跳来跳去跟你页面引入的css没多大关系吧

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧