Mantis - Resin
|
|||||
Viewing Issue Advanced Details | |||||
|
|||||
ID: | Category: | Severity: | Reproducibility: | Date Submitted: | Last Update: |
5936 | block | always | 08-17-15 17:21 | 09-24-15 14:07 | |
|
|||||
Reporter: | libor | Platform: | |||
Assigned To: | ferg | OS: | |||
Priority: | normal | OS Version: | |||
Status: | closed | Product Version: | 4.0.45 | ||
Product Build: | Resolution: | fixed | |||
Projection: | none | ||||
ETA: | none | Fixed in Version: | 4.0.46 | ||
|
|||||
Summary: | 0005936: JspTagSupport cannot be cast to javax.servlet.jsp.tagext.Tag | ||||
Description: |
With upgrade to 4.0.45 many pages started failing with errors XYZ cannot be cast to javax.servlet.jsp.tagext.Tag I compared one of the failing fragments in generated by 4.0.40 with equivalent fragment compiled in 4.0.45 Fragment from 4.0.40, notice the use of TagAdapter: _jsp__xyz__tag_26 = new _jsp._WEB_22dINF._tags._xyz__tag(); _jsp__xyz__tag_26.setJspContext(pageContext); _jsp__xyz__tag_26_adapter = new javax.servlet.jsp.tagext.TagAdapter(_jsp__xyz__tag_26); _jsp__xyz__tag_26.setActiveTest(_caucho_expr_2.evalString(_jsp_env)); _jsp__xyz__tag_26.setJspBody(_jsp_fragment_0 = createFragment_0(null, _jsp_parentContext, pageContext, _jsp__xyz__tag_26_adapter, getJspBody(), _jsp_state, _jsp_pageManager)); Fragment from 4.0.45: _jsp__xyz__tag_26 = _jsp_state.get_jsp__xyz__tag_26(); com.caucho.jsp.PageContextWrapper _jsp_context42 = _jsp_pageManager.createPageContextWrapper(pageContext); _jsp_context42.setAttribute("activeTest", _caucho_expr_2.evalString(_jsp_env)); _jsp__xyz__tag_26.setActiveTest(_caucho_expr_2.evalString(_jsp_env)); _jsp__xyz__tag_26.setJspBody(_jsp_fragment_0 = createFragment_0(_jsp_fragment_0, _jsp_parentContext, pageContext, _jsp__xyz__tag_26, getJspBody(), _jsp_state, _jsp_pageManager));} ... private _jsp._WEB_22dINF._tags._xyz__tag _jsp__xyz__tag_26; final _jsp._WEB_22dINF._tags._xyz__tag get_jsp__xyz__tag_26() throws Throwable { if (_jsp__xyz__tag_26 == null) { _jsp__xyz__tag_26 = new _jsp._WEB_22dINF._tags._xyz__tag(); } return _jsp__xyz__tag_26; } In both cases the _jsp._WEB_22dINF._tags._xyz__tag extends com.caucho.jsp.java.JspTagSupport, in 4.0.45 it is not wrapped before the attempt to cast it as javax.servlet.jsp.tagext.Tag I don't see a way we can work around this issue, thus it is blocking us from upgrading to 4.0.45 ----- A side note/question seems like the SimpleTag instances are now cached, but the documentation https://docs.oracle.com/javaee/5/api/javax/servlet/jsp/tagext/SimpleTag.html [^] states "Unlike classic tag handlers, simple tag handlers are never cached and reused by the JSP container." Is this going to cause problems??? |
||||
Steps To Reproduce: | |||||
Additional Information: | |||||
Relationships | |||||
Attached Files: | 0005936.tar.bz2 [^] (363,006 bytes) 09-21-15 17:07 |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|