You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2014/04/09 13:06:43 UTC

[Bug 56372] New: Which API is referenced in comment above public Iterator getFeatureDescriptors in javax.el.ResourceBundleELResolver

https://issues.apache.org/bugzilla/show_bug.cgi?id=56372

            Bug ID: 56372
           Summary: Which API is referenced in comment above public
                    Iterator getFeatureDescriptors in
                    javax.el.ResourceBundleELResolver
           Product: Tomcat 7
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Servlet & JSP API
          Assignee: dev@tomcat.apache.org
          Reporter: christian.skarby@met.no

javax.el.ELResolver changed method signature for getFeatureDescriptors in svn
r426537, but javax.el.ResourceBundleELResolver was not updated accordingly.
ResourceBundleELResolver extends ELResolver and does not implement any other
interfaces as far as I can read from the source file.

$ svn log -c 426537
------------------------------------------------------------------------
r426537 | remm | 2006-07-28 15:57:53 +0200 (Fri, 28 Jul 2006) | 1 line

- JSP 2.1 API fixes.
------------------------------------------------------------------------

Change in javax.el.ELResolver svn r426537, see:
http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ELResolver.java?r1=423920&r2=426537&pathrev=884913&diff_format=h

See signature for getFeatureDescriptors in abstract class on line 65:
http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ELResolver.java?revision=426537&view=markup&pathrev=884913#l65

See signature for getFeatureDescriptors in subclass on line 97:
http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ResourceBundleELResolver.java?revision=426537&view=markup&pathrev=884913#l97





In svn r884913 a comment appeared above getFeatureDescriptors that says "Can't
use Iterator<FeatureDescriptor> because API needs to match specification":
$ svn log -r 884913
------------------------------------------------------------------------
r884913 | markt | 2009-11-27 18:14:16 +0100 (Fri, 27 Nov 2009) | 3 lines

Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48267
Generics
Patch provided by sebb
------------------------------------------------------------------------

Change in javax.el.ResourceBundleELResolver in svn r884913, see:
http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ResourceBundleELResolver.java?r1=832955&r2=884913&pathrev=884913&diff_format=h



The latter comment is still present in trunk for tomcat7. I am curious which
API spesification that we try to satisfy in javax.el.ResourceBundleELResolver
as it is different from the implementation in the parent class
javax.el.ELResolver. Could we either update the comment with an url to the API
or some other hint about which API we would break if we return
Iterator<FeatureDescriptor> instead of Iterator, or simply remove the comment
and align the signature with that in the parent class?

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56372] Which API is referenced in comment above public Iterator getFeatureDescriptors in javax.el.ResourceBundleELResolver

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56372

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID

--- Comment #1 from Mark Thomas <ma...@apache.org> ---
The comment already states that the method declaration must match the
specification which is clearly referring to the EL 2.2 specifcation where the
method signature for javax.el.ResourceBundleELResolver#getFeatureDescriptors()
is:

public java.util.Iterator getFeatureDescriptors(javax.el.ELContext52 context,
java.lang.Object base)

It is not an issue of API breakage but one of specifcation compliance. In order
to pass the TCK the API definitions must match those of the specification
exactly.

This was fixed in the EL 3.0 specification so generics were correctly used in
this case.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org