Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0003598 [Resin] block always 07-15-09 03:05 08-24-09 09:29
Reporter rymsha View Status public  
Assigned To ferg
Priority normal Resolution fixed Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version 4.0.2 Product Version 4.0.0
  Product Build
Summary 0003598: javax.el.ELException: java.lang.IllegalAccessException
Description in BeanELResolver.java

code
if (descriptor.getReadMethod() != null)
    descriptor.getReadMethod().setAccessible(true);

behaves not as expected because PropertyDescriptor stores SoftReference
after some GC JVM cleans SoftReferences and we loose .setAccessible(true) setting.
Steps To Reproduce
Additional Information This means, we can't use JSTL on Resin 4.0.0, as after a while application throws

javax.el.ELException: java.lang.IllegalAccessException: Class javax.el.BeanELResolver can not access a member of class java.util.HashMap$Entry with modifiers "public final" at javax.el.BeanELResolver.getValue(BeanELResolver.java:201) at com.caucho.jsp.el.PageContextELResolver.getValue(PageContextELResolver.java:181) at com.caucho.el.ArrayResolverExpr.getValue(ArrayResolverExpr.java:148) at com.caucho.el.PathExpr.getValue(PathExpr.java:142) at com.caucho.el.Expr.evalString(Expr.java:276) at com.caucho.el.Marshall$8.marshall(Marshall.java:116) at com.caucho.el.StaticMethodExpr.evalMethod(StaticMethodExpr.java:128) at com.caucho.el.FunctionExpr.getValue(FunctionExpr.java:69) at com.caucho.el.Expr.print(Expr.java:416) at jsp._WEB_22dINF._tags._common._pageIndextag.doTag(_pageIndextag.java:131) at _jsp._WEB_22dINF._jsp._company._searchResultsjsp._jspService(_searchResultsjsp.java:288) at

Resin 3.2.1 was not affected because it also stored hard reference to the readMethod (in the same BeanELResolver.java)

private void initDescriptor()
    {
      Method readMethod = _descriptor.getReadMethod();

      if (readMethod != null)
    _descriptor.setValue(ELResolver.TYPE, readMethod);
...
Attached Files

- Relationships

- Notes
(0004131)
rymsha
08-19-09 04:41

4.0.1 still affected
 

- Issue History
Date Modified Username Field Change
07-15-09 03:05 rymsha New Issue
08-19-09 04:41 rymsha Note Added: 0004131
08-24-09 09:29 ferg Assigned To  => ferg
08-24-09 09:29 ferg Status new => closed
08-24-09 09:29 ferg Resolution open => fixed
08-24-09 09:29 ferg Fixed in Version  => 4.0.2


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
29 total queries executed.
26 unique queries executed.
Powered by Mantis Bugtracker