I think we've put all the jars or wars that could have this file in them in the bundle class path, so I would expect bundle.getResources() to provide all the possiblilites. I haven't tried it in this context, but it seems to work for something similar -- finding META-INF/resources directories in jars in WEB-INF/lib in wars.
thanks david jencks On Oct 8, 2010, at 9:15 AM, Vamsavardhana Reddy wrote: > The ValidatorFactoryGBean uses Bundle.getEntry() to get to > META-INF/validation.xml and WEB-INF/validation.xml files in EJB and Web > archives. This works fine for standalone modules. When the JAR or WAR is > packaged in an EAR file, > Bundle.getEntry("<war-modulename>.war/WEB-INF/validation.xml") gets me to the > file as WAR file is exploded and repackaged in the EAR whereas > Bundle.getEntry("<ejb-modulename>.jar/META-INF/validation.xml") does not work > since the EJB jar is stored as is in the EAR. One option I can think of is > to get the EJB jar entry, store it to a temporary file, open it with Jar APIs > to get to "META-INF/validation.xml". > > myapp.ear > my-ejb.jar (EJB jar is stored as is) > +--META-INF > +-- validation.xml > +--my-web.war (WAR file is exploded, so WEB-INF is a directory in the > repackaged EAR) > +--WEB-INF > +-- validation.xml > > Is there any Bundle API that will allow to access the content in the nested > archives? Or any other way to get to the file of interest without creating > temporary files? > > -- > Vamsi