Bug 46471 - Compiled tag files from different tag libraries share the same package
Summary: Compiled tag files from different tag libraries share the same package
Alias: None
Product: Tomcat 6
Classification: Unclassified
Component: Jasper (show other bugs)
Version: 6.0.18
Hardware: PC Windows XP
: P2 normal (vote)
Target Milestone: default
Assignee: Tomcat Developers Mailing List
Depends on:
Reported: 2009-01-04 16:12 UTC by Konstantin Kolinko
Modified: 2014-02-17 13:57 UTC (History)
0 users

webapp that reproduces the issue (2.55 KB, application/zip)
2009-01-04 16:22 UTC, Konstantin Kolinko

Note You need to log in before you can comment on or make changes to this bug.
Description Konstantin Kolinko 2009-01-04 16:12:40 UTC
When in web application there are several tag libraries packed in jar files that have tag files in them, when those files are compiled they share the same package:


As a result, if there are tags with the same name in different libraries, only one of them survives.

I encountered it while investigating bug #37084. See comment #13 there.
Comment 1 Konstantin Kolinko 2009-01-04 16:22:36 UTC
Created attachment 23083 [details]
webapp that reproduces the issue

To reproduce:

1. Deploy the web application
2. Access http://localhost:8080/bug46471/

3. The page emits some text/plain text
Expected result:
tag from mylibA
tag from mylibB

Actual result:
tag from mylibB
tag from mylibB

4. Check the generated files in the work folder. It is expected to have one jsp page and three tags been generated (one from the WEB-INF/tags and two from the different tag libs), but only two tags are generated.

Reproduced in the current tc6.0.x, but I expect it to also be in TC 6.0.18.
Comment 2 Mark Thomas 2009-01-05 11:22:00 UTC
I have fixed this in trunk and proposed the patch for 6.0.x. The patch is fairly invasive so there may be some reluctance to back port this to 6.0.x (although all the TCK tests do pass).
Comment 3 Mark Thomas 2009-01-31 01:43:07 UTC
This has been fixed in 6.0.x and will be in 6.0.19 onwards.