You are viewing a plain text version of this content. The canonical link for it is here.
Posted to taglibs-dev@jakarta.apache.org by bu...@apache.org on 2005/06/04 01:12:27 UTC
DO NOT REPLY [Bug 35216] -
x:forEach causes session scope exception
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=35216>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=35216
------- Additional Comments From akolkar@us.ibm.com 2005-06-04 01:12 -------
Seems, to me, that XPathUtil#getVariableQNames() misses checking whether the
session should be accessed. Inlining a patch, given its size, I'm not too
worried about losing the diff formatting.
Index: XPathUtil.java
===================================================================
RCS file: /usr/local/cvsroot/apache/jakarta-taglibs-standard-1.1.2-
src/standard/src/org/apache/taglibs/standard/tag/common/xml/XPathUtil.java,v
retrieving revision 1.1
diff -c -r1.1 XPathUtil.java
*** XPathUtil.java 3 Jun 2005 22:47:11 -0000 1.1
--- XPathUtil.java 3 Jun 2005 22:58:59 -0000
***************
*** 97,112 ****
variableVector.addElement( new QName(null, varName ) );
globalVarSize++;
}
! enum_ = pageContext.getAttributeNamesInScope(
! PageContext.SESSION_SCOPE );
! while ( enum_.hasMoreElements() ) {
! String varName = (String)enum_.nextElement();
! QName varQName = new QName ( SESSION_NS_URL, SESSION_P,varName);
! //Adding both namespace qualified QName and just localName
! variableVector.addElement( varQName );
! globalVarSize++;
! variableVector.addElement( new QName(null, varName ) );
! globalVarSize++;
}
enum_ = pageContext.getAttributeNamesInScope(
PageContext.APPLICATION_SCOPE );
--- 97,117 ----
variableVector.addElement( new QName(null, varName ) );
globalVarSize++;
}
! if (pageContext.getSession() != null) {
! // we may have a page directive preventing session
creation/access
! // do not attempt to retrieve attribute names in session scope
! // @see [ http://issues.apache.org/bugzilla/show_bug.cgi?
id=35216 ]
! enum_ = pageContext.getAttributeNamesInScope(
! PageContext.SESSION_SCOPE );
! while ( enum_.hasMoreElements() ) {
! String varName = (String)enum_.nextElement();
! QName varQName = new QName ( SESSION_NS_URL,
SESSION_P,varName);
! //Adding both namespace qualified QName and just localName
! variableVector.addElement( varQName );
! globalVarSize++;
! variableVector.addElement( new QName(null, varName ) );
! globalVarSize++;
! }
}
enum_ = pageContext.getAttributeNamesInScope(
PageContext.APPLICATION_SCOPE );
--
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
---------------------------------------------------------------------
To unsubscribe, e-mail: taglibs-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: taglibs-dev-help@jakarta.apache.org