<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=el_schalo" rel="nofollow">Alexander Schäl</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-6481?redirect=false" rel="nofollow">SPR-6481</a></strong> and commented</p>
<p dir="auto">When started via Java6 WebStart, the Spring PathMatchingResourcePatternResolver tries to handle the URLConnection (wich is in a WebStart context actually an JNLPCachedJarURLConnection) just like a normal file URL. The PathMatchingResourcePatternResolver checks the resources only for a JarURLConnection, any other is handled as a path on the local file system.</p>
<p dir="auto">So the resource request for "<a href="http://service.ACME.com:42/webstart/ressources.jar" rel="nofollow">http://service.ACME.com:42/webstart/ressources.jar</a>" (which would be propperly handled by the com.sun.jnlp.JNLPClassLoader) is crippled to "http:\service.ACME.com:42\webstart\ressources.jar", which of course can't be handled by any class loader and logically ends up in an FileNotFoundException due to the destroyed URL syntax.</p>
<p dir="auto">A solution COULD be to extend the URLConnection type checking at the method doFindPathMatchingJarResources of org.springframework.core.io.support.PathMatchingResourcePatternResolver from JarURLConnection to an JNLPCachedJarURLConnection in order to treat this connection not as a "file:"</p>
<p dir="auto">Java WebStart 5 used to cache all resources (especially the JAR files listed as resources in the JNLP file) on the local file system and the PathMatchingResourcePatternResolver could access these JAR files using a local path like "file://path/on/local/system". Java WebStart 6 has got another (obfuscated) cache structure - there are no longer any plain JAR files. That's why the JNLPClassLoader returns JNLPCachedJarURLConnection for any JAR resource instead of JarURLConnection like WebStart 5 did.</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 2.5.4</p>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398100182" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/11146" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/11146/hovercard" href="https://github.com/spring-projects/spring-framework/issues/11146">#11146</a> Spring fails to load ressources via Java Network Launching Protocol (WebStart) since Java6 (<em><strong>"duplicates"</strong></em>)</li>
</ul>
<p dir="auto">2 votes, 2 watchers</p>
<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=tnine" rel="nofollow">Todd Nine</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-792?redirect=false" rel="nofollow">SPR-792</a></strong> and commented</p>
<p dir="auto">I have added support for the Hibernate event listener interceptors.  It is not the prettiest, since the only way to add the property in the Hibernate configuration is by the event name, then the intercepting class.  This simply uses a Properties object for the name value pair.</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 1.2 RC1</p>
<p dir="auto"><strong>Attachments:</strong></p>
<ul dir="auto">
<li><a href="https://jira.spring.io/secure/attachment/10593/LocalSessionFactory.zip" rel="nofollow">LocalSessionFactory.zip</a> (<em>10.77 kB</em>)</li>
<li><a href="https://jira.spring.io/secure/attachment/10594/LocalSessionFactory2.zip" rel="nofollow">LocalSessionFactory2.zip</a> (<em>10.80 kB</em>)</li>
</ul>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398056044" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/5560" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/5560/hovercard" href="https://github.com/spring-projects/spring-framework/issues/5560">#5560</a> No way to set listeners on the SessionFactory (<em><strong>"duplicates"</strong></em>)</li>
</ul>