[ 
http://jira.jboss.com/jira/browse/JBAS-1602?page=comments#action_12316718 ]
     
Scott M Stark commented on JBAS-1602:
-------------------------------------

Yes, please commit the patched jar.

> Can't use container level taglibs
> ---------------------------------
>
>          Key: JBAS-1602
>          URL: http://jira.jboss.com/jira/browse/JBAS-1602
>      Project: JBoss Application Server
>         Type: Bug
>   Components: Web (Tomcat) service
>     Reporter: Stan Silvert
>     Assignee: Scott M Stark
>     Priority: Critical
>      Fix For: JBossAS-4.0.2 Final
>  Attachments: EmbeddedServletOptions.java, TldLocationsCache.java
>
>
> JBoss/Tomcat needs a way to install tag libraries globally so they are 
> available to all web applications.  This functionality is mentioned in the 
> JSP 2.0 spec section 7.3.5.  In Tomcat standalone, you can do this, but it 
> doesn?t work in JBoss/Tomcat.
> The way this works is that the Jasper TldLocationsCache ?Scans all JARs 
> accessible to the webapp's classloader and its parent classloaders for TLDs.?
> If I put my jar into Tomcat standalone?s common/lib directory then the tag 
> library will be shared across all web apps.  I?ve tried putting the jar in 
> several ?well known? locations in JBoss/Tomcat and nothing seems to work.
> For Reference, I?ve attached the TldLocationsCache source code from Tomcat 
> 5.5.8.
> Concerning TldLocationsCache, Scott Stark says:
> "This class is useless for non-URLClassLoaders and URLClassLoaders that do 
> not expose their classpath via getURLs which is what we currently do because 
> of an old bad behavior with annotated codebases of rmi classes. "
> Remy Maucherat offered this as a possible solution:
> Would it be possible to have the ENCLoader facade return more interesting 
> things ?
>    /**
>     * A trival extension of URLClassLoader that uses an empty URL[] as its
>     * classpath so that all work is delegated to its parent.
>     */
>    static class ENCLoader extends URLClassLoader
>    {
>       private URL[] urllist = new URL[0];
>       ENCLoader(ClassLoader parent)
>       {
>          super(new URL[0], parent);
>       }
>       void addURLInternal(URL url)
>       {
>          URL[] result = new URL[urllist.length + 1];
>          for (int i = 0; i < urllist.length; i++)
>             result[i] = urllist[i];
>          result[urllist.length] = url;
>          urllist = result;
>       }
>       public URL[] getURLs()
>       {
>          return urllist;
>       }
>    }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.jboss.com/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
JBoss-Development mailing list
JBoss-Development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to