Как узнать конкретную технологию JSP из исходного кода? - PullRequest
1 голос
/ 22 января 2011

Я сейчас "оцениваю" приложение JSP.Я не эксперт JSP, у меня есть некоторый опыт в JSP только с разработкой JSF.Я подозревал, что технология этого приложения была в очень старом j2ee.Есть ли способ узнать подробные версии, технологии или платформы из исходного кода?Или примерно сколько лет версии jsp это приложение?Ниже приведен код пользовательского интерфейса.Пожалуйста, посмотрите, я считаю, что это нелепо сложно по сравнению с текущей платформой 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>

1 Ответ

3 голосов
/ 22 января 2011

То, с чем вы сталкиваетесь, действительно является плохим дизайном .Весь этот HTML должен быть помещен plain в файл JSP.Эти бобы должны быть подготовлены сервлетом или, в конечном итоге, <jsp:useBean> и доступны EL (те вещи ${}).Управление потоком должно выполняться JSTL taglib.

Что касается конкретного вопроса, версия JSP в основном определяется в корневом объявлении web.xml, в котором должна указываться версия сервлета.Версия JSP связана с версией сервлета.Вот краткий обзор:

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 2.4 или выше всякий раз, когда рассматриваемый контейнер-сервлет поддерживает это.Если это, например, Tomcat 5.5, то вы можете переопределить его как Servlet 2.4 и использовать JSP 2.0.Или, если это, например, Tomcat 6.0, то Servlet 2.5 / JSP 2.1.Или Tomcat 7.0 с сервлетом 3.0 / JSP 2.2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...