我目前正在“评估”JSP应用程序。我不是jsp专家,我在jsp和jsf开发方面有一些经验。我怀疑这个应用程序的技术是在非常古老的j2ee。无论如何,从源代码中找出详细的版本,技术或平台?或者大概这个应用程序的jsp版本有多大?以下是一些ui代码。请看一下,我发现与当前的jsp和jsf平台相比,这是非常复杂的。
<jsp:include page='header.jsp'></jsp:include>
<%
StringBuffer htmlBuffer = new StringBuffer();
// get viewbean interface and cast it to view bean object accordingly
com.nihb.mtrd.bean.AdminVB vb =
(com.nihb.mtrd.bean.AdminVB)session.getAttribute(com.nihb.mtrd.bean.AbstractBean.VIEW_BEAN);
//display message if there is any
String message = vb.getMessage();
if(message == null){
message = new String("");
}
htmlBuffer.append("<p><b><font face='Verdana' size='1' color='#cc0000'>");
htmlBuffer.append( message );
htmlBuffer.append("</font></b></p>");
htmlBuffer.append("<div align='center'>");
htmlBuffer.append("<center>");
htmlBuffer.append("<table border='3' cellspacing='0' style='border-collapse: collapse' width='800 ' cellpadding='0' id='AutoNumber7' height='9' bgcolor='#E8F3FF' bordercolor='#E8F3FF'>");
htmlBuffer.append("<TR><td width='800' height='7' colspan='8'>");
htmlBuffer.append("<br>");
if( vb.getIndicator() != 0){
htmlBuffer.append("<a href='MtrdHome.jsp?mysubmit=");
htmlBuffer.append(com.nihb.mtrd.bean.AbstractBean.ACTION_HYPERLINK_CHANGE_PASSWORD);
htmlBuffer.append("' >");
}
htmlBuffer.append("<b><font face='Verdana' size='2'>Change Password</font></b>");
if( vb.getIndicator() != 0){
htmlBuffer.append("</a>");
}
htmlBuffer.append("</td></TR>");
谢谢大家!
更新:以下是我web.xml
的第一行:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app id="WebApp">
<!-- snip -->
</web-app>
答案 0 :(得分:3)
你所面对的确是一个bad design。所有HTML都必须放在JSP文件中 plain 。这些bean只需要由servlet或最终<jsp:useBean>
准备,并由EL(那些${}
事物)访问。流控制必须由JSTL taglib完成。
关于具体问题,JSP版本基本上是在web.xml
的根声明中定义的,它必须指示Servlet版本。 JSP版本与Servlet版本耦合。这是一个概述:
Servlet JSP J2EE/Java EE (releasedate) 3.0 2.2 Java EE 6 (Dec 2009) 2.5 2.1 Java EE 5 (May 2006) 2.4 2.0 J2EE 1.4 (Nov 2003) 2.3 1.2 J2EE 1.3 (Sep 2001)
更新:根据您的编辑,这显然是Servlet 2.3。无论何时,只要有问题的servlet容器支持它,就可以将它重新声明为Servlet 2.4或更高版本,这是很好的。如果它是例如Tomcat 5.5,那么您可以将其重新声明为Servlet 2.4并使用JSP 2.0。或者,如果它是例如Tomcat 6.0,那么Servlet 2.5 / JSP 2.1。或者使用Servlet 3.0 / JSP 2.2的Tomcat 7.0。