Addresses different jar protocols ("jar", "zip", "wsjar" and "vfszip") the same way Spring does (code borrowed from org.springframework.util.ResourceUtils) - fixes #808