First, I am not sure whether that method only returns the bundle content entries...you might need to verify that and create an issue if it is returning fragment entries too.

If I remember correctly, getEntryPaths() works like typing "ls", in that it shows you the contents of the requested directory. Then you need to recurse downward for each subdirectory, which are the names ending with "/".

If the JAR does not have directory entries, then you will not see them in the output, which will make it difficult to traverse. This is mentioned in the spec.

-> richard

On 6/7/09 12:59 AM, Sahoo wrote:
[Please ignore the earlier mail where I had incorrectly set the Reply-To header to some other address.]

Hi,

Can anyone tell me how I can iterate over all the entries of a bundle
jar? I don't want any entries from the fragment. So, I thought
Bundle.getEntryPaths() would do the job, but I don't see the desired
behavior. For testing purpose, I am using the following code:

   void printEntryPaths(Bundle b, String s) {
       Enumeration e = b.getEntryPaths(s);
       if (e!=null) {
           while (e.hasMoreElements()) {
               String next = (String)e.nextElement();
               System.out.println(next);
               printEntryPaths(b, next);
           }
       }
   }

   If I call printEntryPaths(someBundle, "/"), it should print all the
entries, right? But, it does not. I test it for a bundle for which "jar"
command prints the following:
jar tf /tmp/someBundle.jar

META-INF/MANIFEST.MF
WEB-INF/web.xml
index.html

For this bundle, the above code only prints:
index.html

I think it is related to the fact that there are no directory entries
for META-INF and WEB-INF in the jar.

Thanks,
Sahoo

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to