Thomas Schmitz created TOBAGO-1295:
--------------------------------------
Summary: Loading themes on JBoss 7.x.x with vfs protocol
Key: TOBAGO-1295
URL: https://issues.apache.org/jira/browse/TOBAGO-1295
Project: MyFaces Tobago
Issue Type: Bug
Components: Core
Affects Versions: 2.0.0-alpha-2
Environment: Jboss 7.1.1, Jboss 7.2.0
Reporter: Thomas Schmitz
JBoss seemingly has changed its VFS scheme name from vfszip to vfs in version
7.x.x. Therefore it is not possible to deploy a tobago application on it as
tobago does not know how to handle it.
I tried to fix it in ResourceLocator by simply changing the part where the old
vfszip protocol is handled from 'protocol.equals("vfszip")' to
'protocol.startsWith("vfs").
But it seems that vfszip and vfs must be handled in different ways as the part
where the jar or zip file is loaded with the ZipInputStream does not work:
zipStream = new ZipInputStream(stream);
while (zipStream.available() > 0) {
ZipEntry nextEntry = zipStream.getNextEntry();
if (nextEntry == null || nextEntry.isDirectory()) {
continue;
}
String name = "/" + nextEntry.getName();
if (name.startsWith(prefix)) {
addResource(resources, name, skipPrefix);
}
}
In fact it produces an infinite loop because zipStream.available always returns
>0 but zipStream.getNextEntry is always null.
I found out that if I disclaim on the theme-jars and unzip them next to my
WEB-INF directory they will be loaded correct. So my workaround is to comment
out the part with the infinite loop.
I am sad that I can't propose a good patch for this. The only way I found out
is to use jboss-vfs API to handle the vfs scheme correct.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira