[
https://jira.jboss.org/jira/browse/JBVFS-143?page=com.atlassian.jira.plug...
]
John Bailey commented on JBVFS-143:
-----------------------------------
This can be caused by one of two problems:
1. The 3rd party library is calling URL.getFile, which just dumps the path of the URL and
assumes it is a file
2. Or it is caused because the example-http.jar has not been fully expanded in VFS temp
directory.
If it is the former, then we need a hack to make it work since the URLs path does not
reflect the real filesystem. If it is the latter, then you can always test by calling
mountZipExpanded in place of mountZip.
We are looking into the root of this issue. We need to have a discussion on the best
approach here.
file:// protocol URL might not work with 3rd party libraries
------------------------------------------------------------
Key: JBVFS-143
URL:
https://jira.jboss.org/jira/browse/JBVFS-143
Project: JBoss VFS
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 3.0.0.CR3
Reporter: Thomas Diesler
Assignee: John Bailey
Priority: Critical
Fix For: 3.0.0.CR4
A URL like this
file:/home/tdiesler/svn/jboss-osgi/trunk/testsuite/example/target/test-libs/example-http.jar/res/message.txt
gets passed to a 3rd party library (i.e. Jetty)
which does stuff like this
public static Resource newResource(URL url, boolean useCaches)
{
if (url==null)
return null;
String url_string=url.toExternalForm();
if( url_string.startsWith( "file:"))
{
try
{
FileResource fileResource= new FileResource(url);
return fileResource;
}
catch(Exception e)
{
Log.debug(Log.EXCEPTION,e);
return new BadResource(url,e.toString());
}
}
else if( url_string.startsWith( "jar:file:"))
{
return new JarFileResource(url, useCaches);
}
else if( url_string.startsWith( "jar:"))
{
return new JarResource(url, useCaches);
}
return new URLResource(url,null,useCaches);
}
As a consequence, content access does not work.
This seems to be a general issue caused by the reuse of the well known file:// protocol
which may be processed explicitly by 3rd party libs.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira