Eclipse中使用JSP的Include指令的格式问题

来源:互联网 发布:final draft mac 中文 编辑:程序博客网 时间:2024/06/07 08:54

关于JSP的Include指令的用法,一般是以下两种情况举个例子:
第一种情况
 <jsp:include page="scripts/login.jsp" />
第二种情况
 <jsp:include page="scripts/login.jsp">
  <jsp:param name="username" value="island" />
 </jsp:include>
当然了,include指令可以包含动态文件也可以包含静态文件,我们这里不讨论这些.

我们会发现include的这些语法,在Eclipse里似乎格式需要变换一下.
我的运行环境是eclipse3.2_Callisto+jdk1.5.0_03+Tomcat v5.5,原本是测试以下的程序
includeEx.jsp与time.jsp这两个文件是不是共享一个request对象的.

--------------------------------------------------------------------------------------------------------

includeEx.jsp
<%@ page language="java" contentType="text/html;charset=GB2312" %>
<%@ page buffer="8kb" autoFlush="true"%>
<%@ page import="java.util.*"%>
<html>
<head>
 <title>include的使用</title>
</head>
<body>

<jsp:include page="time.jsp" flush="true">
<jsp:param name="now" value="<%=new String((new java.util.Date()).toLocaleString())%>"/>
</jsp:include>

</body>
</html>

--------------------------------------------------------------------------------------------------------

time.jsp
<%@ page language="java" contentType="text/html;charset=GB2312" %>
<%String time=request.getParameter("now");%>
现在的时刻为:<%=time%>

-----------------------------------------------------------------------------------------------------

于是我们不准备使用<jsp:param>子句去参数的,而是选择将includeEx.jsp该为
<%@ page language="java" contentType="text/html;charset=GB2312" %>
<%@ page buffer="8kb" autoFlush="true"%>
<%@ page import="java.util.*"%>
<html>
<head>
 <title>include的使用</title>
</head>
<body>

<%request.getParameter("now"); %> 
<jsp:include page="time.jsp" ></jsp:include>

</body>
</html>

------------------------------------------------------------------------------------------------------------
当然了现在给的程序是可以运行的,可当时新的includeEx.jsp中<body>标签中的
<jsp:include page="time.jsp" ></jsp:include>这个程序片断的格式是有讲究的,
至少在我所运行的环境中是必须这样的.
我们在eclipse3.2_Callisto+jdk1.5.0_03+Tomcat v5.5
运行环境中反复试验得知这么一个结论:
 如果不想在include指令中运用<jsp:param>子句传参,那么最好运用这种格式:

<jsp:include page="scripts/login.jsp" />


 如果一定要用<jsp:include page="scripts/login.jsp">
                                        <jsp:param name="username" value="island" />
                        </jsp:include>
这种格式的话,就请按照这种格式:
   <jsp:include page="scripts/login.jsp"></jsp:include>标签中间不可以加空格.

同样我们把服务器该成JBOSS 3.2.3结论仍然成立.
试验证明运用include指令所涉及的两个文件公用一个request对象.
我们认为这可能与Eclipse的编译扫描的规则有关系.但在深层就不得而知了.希望大家可以一起讨论.

 

 

原创粉丝点击