javax.el.CompositeELResolver null pointer exception - bug?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

javax.el.CompositeELResolver null pointer exception - bug?

Michael Walz

Hi!

I’ve got a problem with “javax.el.CompositeELResolver” from "geronimo.specs" which is used by TomEE’s “javaee-api-6.0-5.jar”.

Version information and svn-repository here: http://mvnrepository.com/artifact/org.apache.geronimo.specs/geronimo-el_2.2_spec/1.0.2

Source of class CompositeELResolver here: http://svn.apache.org/viewvc/geronimo/specs/tags/geronimo-el_2.2_spec-1.0.2/src/main/java/javax/el/CompositeELResolver.java?view=log

 

In the “invoke” method I get a null pointer exception because the for-loop iterates through the whole resolvers-array which has got fields with value “null”. I suppose this is not avoidable because of the “add” method that doubles the array size if required but does not initialize any values. Shouldn’t there be a check if the resolver is “null” in the “invoke” method before using it?


For comparison I ran my application with another  javax.el implementation and it’s working properly:

<dependency>

  <groupId>javax.el</groupId>

  <artifactId>el-api</artifactId>

  <version>2.2</version>

</dependency>

 

 

Am I wrong with my supposition?


I found a similar-sounding issue here:

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

 

Is it possible that multi-threading causes my problem?

 


Best regards

Michael Walz

Reply | Threaded
Open this post in threaded view
|

Re: javax.el.CompositeELResolver null pointer exception - bug?

Jarek Gawor
Yes. See also GERONIMO-6330. This problem is already fixed in
geronimo-el_2.2_spec 1.0.4.

Jarek

On Wed, Jun 12, 2013 at 9:29 AM, Michael Walz
<[hidden email]> wrote:

> Hi!
>
> I’ve got a problem with “javax.el.CompositeELResolver” from "geronimo.specs"
> which is used by TomEE’s “javaee-api-6.0-5.jar”.
>
> Version information and svn-repository here:
> http://mvnrepository.com/artifact/org.apache.geronimo.specs/geronimo-el_2.2_spec/1.0.2
>
> Source of class CompositeELResolver here:
> http://svn.apache.org/viewvc/geronimo/specs/tags/geronimo-el_2.2_spec-1.0.2/src/main/java/javax/el/CompositeELResolver.java?view=log
>
>
>
> In the “invoke” method I get a null pointer exception because the for-loop
> iterates through the whole resolvers-array which has got fields with value
> “null”. I suppose this is not avoidable because of the “add” method that
> doubles the array size if required but does not initialize any values.
> Shouldn’t there be a check if the resolver is “null” in the “invoke” method
> before using it?
>
>
> For comparison I ran my application with another  javax.el implementation
> and it’s working properly:
>
> <dependency>
>
>   <groupId>javax.el</groupId>
>
>   <artifactId>el-api</artifactId>
>
>   <version>2.2</version>
>
> </dependency>
>
>
>
>
>
> Am I wrong with my supposition?
>
>
> I found a similar-sounding issue here:
>
> https://issues.apache.org/bugzilla/show_bug.cgi?id=50293
>
>
>
> Is it possible that multi-threading causes my problem?
>
>
>
>
> Best regards
>
> Michael Walz