APAR status
Closed as program error.
Error description
This problem is caused by WebSphere 'escape sequence decoding'
the URL before it has removed the parameters for a JSP. So, if
a JSP has some parameters where values have a '%' in them, the
decode escape code is trying to un-encode the next two
characters following the '%'. Since the '%' is actually part
of the JSP parameter, it may not have two characters following
it, causing the decodeUriEscape method to get an index out of
range exception.
[6/24/04 15:01:04:095 EDT] 425d5e60 TraceNLS u No
message text associated with key
Unexpected.internal.engine.error.while.processing.request:.{0}
in bundle com.ibm.ejs.resources.seriousMessages
.
[6/24/04 15:01:04:088 EDT] 425d5e60 WebAppInvoker E Unexpected
internal engine error while processing request:
.
java.lang.StringIndexOutOfBoundsException: String index out of
range: 39
at java.lang.String.charAt(String.java(Compiled Code))
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcherInfo.
decodeUriEscape(WebAppRequestDispatcherInfo.java:292)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcherInfo.
decodeURL(WebAppRequestDispatcherInfo.java:253)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcherInfo.
calculateInfo(WebAppRequestDispatcherInfo.java:178)
Sample URL:
/Sample.jsp?tableWidth=90%&c3=63%&c1=24%
This will cause an index out of range, as there is no string
after the
last '%', and the code is looking for the next 2 characters.
The solution is to have the JSP parameters extracted out of the
URL before the escape sequences are decoded. This was fixed with
defect 202694, which should be in the WAS 5.1.0.5 & 5.0.2.7.
Local fix
no local fix available
Problem summary
****************************************************************
* USERS AFFECTED: Users having JSP parameters that include *
* a % (percent) sign. *
****************************************************************
* PROBLEM DESCRIPTION: When a % (percent) sign is part of the *
* value of a jsp:param tag, we get an *
* array index out of bounds exception. *
****************************************************************
* RECOMMENDATION: *
****************************************************************
When a % sign is part of the value of a jsp:param tag, we get
an array index out of bound exception. This is because the
query string string gets parsed before the uri is decoded.
Problem conclusion
The uri will be decoded first.
Temporary fix Comments
APAR information |
APAR number |
PQ89535 |
Reported component name |
WAS BASE 5.0 |
Reported component ID |
5630A3600 |
Reported release |
10A |
Status |
CLOSED PER |
PE |
NoPE |
HIPER |
NoHIPER |
Special Attention |
NoSpecatt |
Submitted date |
2004-05-28 |
Closed date |
2004-06-14 |
Last modified date |
2004-08-06 |
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
Publications Referenced
Applicable component levels |
R00A PSY |
UP |
R00H PSY |
UP |
R00S PSY |
UP |
R00W PSY |
UP |
R10A PSY |
UP |
R10H PSY |
UP |
R10S PSY |
UP |
R10W PSY |
UP |
|