It seems silly to have to duplicate the header.jsp file just because these are in different webapps.
Sorry, but silly as it may seem to you, sharing resources across webapps is not a good idea. As you have seen, the mechanisms inherent in web application containers (as outlined in the specifications) focus heavily on making web applications self-contained units.
Trying to create artificial bindings between discrete web applications is not only technically difficult (because you are bucking the intentions of the specifications), but is just bad architectural design as it creates artificial dependencies between the apps.
Rather, you can have a single source for the shared resource, but copy it to each web application as necessary during the automated build process. This way, you manage the shared resource at build time, rather than trying to do so with execution-time mechanisms. [ August 18, 2005: Message edited by: Bear Bibeault ]