was服务器下修改jsp无效果

使用了jsp静态导入,修改了导入的jsp页面,但是目标页面没出现效果。先说下静态导入和动态导入的区别:

include指令用于引入其它JSP页面,如果使用include指令引入了其它JSP页面,那么JSP引擎将把这两个JSP翻译成一个servlet其内容在源文件级别进行合并。所以include指令引入通常也称之为静态引入。

而动态引入则是分别翻译成单独的servlet;在执行的时候进行合并。例如<jsp:include>标签

<%@ include file=”relativeURL”%>include指令引入通常也称之为静态引入。

pageContext.include()和<jsp:include>标签都是动态引入

上面的意思也就是说如果采用静态导入的话,被引入的页面和目标页面只会被编译为一个.class文件。(我的被引入页面后缀为.jspf)。

关于.jspf文件:

在jsp页面中要如果要单独引入一个jspf文件,必须要采用 <@include file="...">指令形式静态引入,jspf文件的内容才会被解析并执行其中的jsp指令和tag,使用"jsp:include"和 JSTL的"c:import"都没有用,jspf文件被当作纯文本文件处理了。比如:

view plaincopy to clipboardprint?
<%@ include file="include/script/jquery.jspf"%> 
<%@ include file="include/script/jquery.jspf"%>

在was下jsp页面不出现效果,大部分都是因为缓存的问题。

解决方式:第一种方式  >>>>>>>找到class文件删掉,重启服务器(这里我删除的是引入jspf页面的jsp的class文件)              第二种方式  >>>>>>>也可以修改jsp页面名字,访问服务器会出错,然后在把名字改回之前的,这样会刷新缓存。如果页面比较多的话,这不是一个好方法,推荐还是采用第一种方式。

原文地址:https://www.cnblogs.com/xiaoblog/p/4235339.html