[jboss-jira] [JBoss JIRA] (WFLY-2690) JSP/JSPX tags doesn't work with Wildfly CR1

Matus Zamborsky (JIRA) issues at jboss.org
Fri Jan 3 10:10:32 EST 2014


    [ https://issues.jboss.org/browse/WFLY-2690?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12933604#comment-12933604 ] 

Matus Zamborsky commented on WFLY-2690:
---------------------------------------

Hello,
I have one (will upload it shortly). It really is a problem of weld. I went a little bit deeper and even find the problem. The problem is in 
[org.jboss.weld.annotated.slim.AnnotatedTypeIdentifier | https://github.com/weld/core/blob/master/impl/src/main/java/org/jboss/weld/annotated/slim/AnnotatedTypeIdentifier.java]. Deep down it is used as a key in caching Annotated types and as you can see from sources of this class, it uses only className (and other attributes) to distinguish between classes. But Wildfly uses different class loaders for every JSP (and included tags). 

The problem manifests as casting exception from class A1 to class A2 (where A1 and A2 have the same class name but are loaded with different classloaders).

I rewrote AnnotatedTypeIdentifier so it uses the class object instead of className and it looks promising (no exceptions). But I am not a weld developer, and don't really know if it wont have any other consequences.
                
> JSP/JSPX tags doesn't work with Wildfly CR1
> -------------------------------------------
>
>                 Key: WFLY-2690
>                 URL: https://issues.jboss.org/browse/WFLY-2690
>             Project: WildFly
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Web (Undertow)
>    Affects Versions: 8.0.0.CR1
>         Environment: OpenJDK Runtime Environment (fedora-2.4.3.0.fc18-x86_64 u45-b15)
> OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)
>            Reporter: Otávio Garcia
>            Assignee: Stuart Douglas
>
> My app works fine on JBoss AS 7.1. When I migrate to Wildfly 8.0.0 CR1, my JSP tags don't work as expected. My project is a EAR with WAR module.
> When app starts, in the 1st access to page A, tag file is compiled and the page are rendered fine. But when I access another page (B in example), I got this error: org.apache.jasper.JasperException: java.lang.ClassCastException: org.apache.jsp.tag.web.default_tagx cannot be cast to org.apache.jsp.tag.web.default_tagx
> If I restart Wildfly and try to access page B, works fine. But when I access page A, I got the same error.
> My default.tagx is bellow:
> <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:html="http://www.w3.org/1999/xhtml" version="2.2">
>     <jsp:output doctype-root-element="HTML" doctype-system="about:legacy-compat" omit-xml-declaration="yes" />
>     some code
>     <jsp:doBody />
>     more code
> </jsp:root>
> And the pages are somethink like this:
> <tags:default xmlns:tags="urn:jsptagdir:/WEB-INF/tags" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:html="http://www.w3.org/1999/xhtml">
>     <jsp:output omit-xml-declaration="yes" />
>     my code here
> </tags:default>
> I was created a new empty project with two pages and one tagfile. The error don't occurs. But when I add CDI capabilities, the error occurs. There are something in CDI that confuses Jastow?
> As discussed here: https://community.jboss.org/message/850730

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the jboss-jira mailing list