• Post Reply Bookmark Topic Watch Topic
  • New Topic

From 2.4 to 2.3 . -- Errors

 
Ram Gokul
Ranch Hand
Posts: 85
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I developed a small apllciation and it is working fine but later found out that client's production server is still in 2.3 .

I changed the libraries . ( JSTL 1.0 / Servlet.jar etc to 2.3 spec ).
I get this error when forwarded to one of the pages..

===========
Request URI:/Contractreply/WEB-INF/jsps/success.jsp

Exception:
java.lang.NoClassDefFoundError: javax/servlet/jsp/SkipPageException

======

Have i left anything unchanged ?


Thanks.
Ram

The source code for success.jsp is

===
<%@ page contentType="text/html;charset=UTF-8" language="java"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
<jsp:useBean id="bci" class="com.beans.BeanContractinfo" scope="session"/>
<jsp:useBean id="msg" class="com.utlities.MessageLocal" scope="session"/>
<html>
<HEAD>
<TITLE>Hotel </TITLE>
<LINK href="css/leadreply.css" rel="stylesheet" type="text/css" >
</HEAD>

<BODY LINK="#E9F13F" VLINK="#AEAEAE" ALINK="#F1256C">
</body>
</html>
 
Stefan Evans
Bartender
Posts: 1822
10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The class javax/servlet/jsp/SkipPageException was added with J2EE1.4 (ie Servlet2.4/JSP2.0.
It is an exception thrown by a Custom Tag implementing the SimpleTag interface.

Are you using any custom tags like that in your application?
Were you using any .tag files?

Your JSP example only shows the struts and JSTL taglibs being used.

Have you downloaded JSTL1.0 to use with the container?
What version of the struts tag are you using?
Are there any other tags/taglibraries declared on this page?
 
Ben Souther
Sheriff
Posts: 13411
Firefox Browser Redhat VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
There are quite a few differences between 2.3 and 2.4 as well as between JSTL1.0 and JSTL1.1.

I woundn't expect the back-port to be as easy as swapping out the libraries.
 
Ram Gokul
Ranch Hand
Posts: 85
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks All.

I had a script which was included in my file which had a code like this

=====
<c:choose>
<c:when test="${bci.SDomain eq 'PEL'}" >
</c:choose>

Why <c:choose> is not working out in 2.3 ? I thought in 2.3 you can call EL in a <c:xxx> tag.
======

One of the things I have used often is direct EL in JSP like
${bean.accountname}. My idea now is to change these direct embedding to something like <cut value="${bean.accountname}/>/
Is this not enough to run in JSTL 1.0 ? Do I need to look out for more...

Thanks again
 
Bear Bibeault
Author and ninkuma
Marshal
Posts: 65524
105
IntelliJ IDE Java jQuery Mac Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One of the things I have used often is direct EL in JSP like ${bean.accountname}.


Right, EL in template text will not work without JSP 2.0. You'll need to wrap it in <cut>'s.

How hard would it be to drag the customer kicking and screaming into 2006 and get them to upgrade their server?
 
Stefan Evans
Bartender
Posts: 1822
10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The <c:choose> tag should work in a Servlet2.3/JSP1.2 container.
What actual server are you using?

Another thing to watch out for is the use of EL function. They are not supported by JSTL1.0.

Also, seeing as you are using struts, you might look into the struts-el tag library that lets you use EL Expressions with the struts tags under a 2.3 server.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!