cancel
Showing results for 
Search instead for 
Did you mean: 

Error by parsing an JSP Site

Former Member
0 Kudos

Hello!

First - sorry for my english.

I have an webapp that perfectly work in tomcat and jetty but fails in WAS6.40 SP9. The important part of the jsp looks like this:

<%@ page import="de.cdiag.skills.web.resources.Constants" %>

[...]

<%@ taglib uri="/WEB-INF/displaytag-11.tld" prefix="display" %>

[...]

<%-- this ist the line 38 --%>

<display:table id="skills" class="smTable test" name="<%= Constants.SKILL_LIST_KEY %>">

[...]

</display:table>

if i start the application that throws following exception:

Date : 05/17/2005

Time : 10:59:57:046

Category :

Message ID : 000C29EF20BA337A00000001000002980003F74998B5C26B

Severity : Error

Location : com.sap.engine.services.servlets_jsp.Deploy

Source Name : com.sap.engine.services.servlets_jsp.Deploy

Thread : SAPEngine_Application_Thread[impl:3]_10

Message : Runtime error in compiling of the JSP file <C:/usr/sap/J2E/JC00/j2ee/cluster/server0/apps/sap.com/SkillsEar/servlet_jsp/skills/root/lists/listAssignedSkills.jsp> ! The error is: com.sap.engine.services.servlets_jsp.lib.jspparser.exceptions.JspParseException: Expecting [ = ] instead of [ . ].

Error in file C:/usr/sap/J2E/JC00/j2ee/cluster/server0/apps/sap.com/SkillsEar/servlet_jsp/skills/root/lists/listAssignedSkills.jsp; line: 38; position: 74.

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.Attribute.parse(Attribute.java:84)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.JspTag.readAttributes(JspTag.java:62)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.xmlsyntax.CustomJspTag.parse(CustomJspTag.java:209)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.ElementCollection.parseTo(ElementCollection.java:157)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.xmlsyntax.CustomJspTag.parse(CustomJspTag.java:241)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.ElementCollection.parseTo(ElementCollection.java:157)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.xmlsyntax.CustomJspTag.parse(CustomJspTag.java:241)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.ElementCollection.parse(ElementCollection.java:89)

at com.sap.engine.services.servlets_jsp.lib.jspparser.syntax.ParserImpl.parse(ParserImpl.java:525)

at com.sap.engine.services.servlets_jsp.server.jsp.JSPParser.initParser(JSPParser.java:307)

at com.sap.engine.services.servlets_jsp.server.jsp.JSPParser.parse(JSPParser.java:74)

at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.getClassName(JSPServlet.java:205)

at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.compileAndGetClassName(JSPServlet.java:369)

at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:164)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.doWork(RequestDispatcherImpl.java:290)

at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.include(RequestDispatcherImpl.java:424)

at com.sap.engine.services.servlets_jsp.server.jsp.PageContextImpl.include(PageContextImpl.java:138)

at org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:101)

at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:137)

at org.apache.struts.taglib.tiles.InsertTag.doInclude(InsertTag.java:758)

at org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTag(InsertTag.java:890)

at org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java:460)

at jsp_smOptions1116320391000._jspx_method_tiles_insert_4(jsp_smOptions1116320391000.java:65535)

at jsp_smOptions1116320391000._jspService(jsp_smOptions1116320391000.java:36)

at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:467)

at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:181)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.doWork(RequestDispatcherImpl.java:290)

at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:346)

at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056)

at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:261)

at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:237)

at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:300)

at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231)

at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)

at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:385)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:263)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:340)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:318)

at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:821)

at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:239)

at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)

at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:147)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)

at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)

Datasource : 6463850:C:\usr\sap\J2E\JC00\j2ee\cluster\server0\log\defaultTrace.trc

Application : sap.com/SkillsEar

Argument Objs :

Arguments :

Dsr Component :

Dsr Transaction : 0ab82960c6b211d9b07e000c29ef20ba

Dsr User :

Indent : 0

Level : 0

Message Code :

Message Type : 0

Relatives :

Resource Bundlename :

Session : 0

Source : com.sap.engine.services.servlets_jsp.Deploy

ThreadObject : SAPEngine_Application_Thread[impl:3]_10

Transaction :

User : Guest

whats wrong in this code?

thanks!

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hi Dimitri,

i got the same problem as described on :

Did you already found a solution how to deal with this displaytag-tld problem?

hope to hear from you. thx in advance,

lars

detlev_beutner
Active Contributor
0 Kudos

Hi Dimitri,

as Astrid said, it is more than probable that the problem comes from the expression within the tag.

If this works on Tomcat, carefully analyse the tab library, check against which JSP version it is developed and should run on, on which server you are and which JSP version there is supported.

In the end, if you are "lucky", you maybe will have determined that it is a bug in SAP's JSP processor. In this case, please open an OSS message to report it.

Hope it helps

Detlev

Message was edited by: Detlev Beutner

Ooops, just saw you gave the info WAS 6.40, that means J2EE 1.3, and that again means JSP 1.2.

Former Member
0 Kudos

dimitri.

You have imported the class Constants. But you did not create an object of class Constants.

So accessing the Variable of Constants using Constants.SKILL_LIST_KEY return an error message. So you create an object of class Constant and use that object using the .(dot operator) to access the SKILL_LIST_KEY variable.

Ravi Dasari

Former Member
0 Kudos

The Constants.java looks as following:

package .....;

public final class Constants {

public static final String SKILL_LIST_KEY = "skillList";

public static final String SKILL_TREE_KEY = "skillTree";

public static final String SKILL_LEVEL_BOX_KEY = "skillLevelBox";

public static final String SKILL_ID_KEY = "skillId";

public static final String SKILL_KEY = "skill";

}

That's not required to create an instance of this class.

Former Member
0 Kudos

Hi,

did you try to replace <%= Constants.SKILL_LIST_KEY %> with the actual value ("skillList")?

Some tags cannot be filled with java variables, i.e. they won't be translated to the actual values. In general, that is something you define in the tag settings, but I have had tags where the settings were correct but the still couldn't be substituted.

Regards, Astrid

SidBhattacharya
Product and Topic Expert
Product and Topic Expert
0 Kudos

What is the value of SKILL_LIST_KEY...