Anonymous | Login | Signup for a new account | 12-17-2024 08:51 PST |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ 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 | ||||||
Status | closed | Product Version | 4.0.0 | ||||||
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. |
||||||||
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 | |||||||||
|
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
29 total queries executed. 26 unique queries executed. |