<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<base href="https://hibernate.atlassian.net">
<title>Message Title</title>
</head>
<body class="jira" style="color: #333333; font-family: Arial, sans-serif; font-size: 14px; line-height: 1.429">
<table id="background-table" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; background-color: #f5f5f5; border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt" bgcolor="#f5f5f5">
<!-- header here -->
<tbody>
<tr>
<td id="header-pattern-container" style="padding: 0px; border-collapse: collapse; padding: 10px 20px">
<table id="header-pattern" cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td id="header-avatar-image-container" valign="top" style="padding: 0px; border-collapse: collapse; vertical-align: top; width: 32px; padding-right: 8px" width="32"> <img id="header-avatar-image" class="image_fix" src="cid:jira-generated-image-avatar-00a0e851-7d92-4444-975a-1c6ebbe4e119" height="32" width="32" border="0" style="border-radius: 3px; vertical-align: top"> </td>
<td id="header-text-container" valign="middle" style="padding: 0px; border-collapse: collapse; vertical-align: middle; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 1px"> <a class="user-hover" rel="gavenkoa" id="email_gavenkoa" href="https://hibernate.atlassian.net/secure/ViewProfile.jspa?name=gavenkoa" style="color:#6c797f;; color: #3b73af; text-decoration: none">Oleksandr Gavenko</a> <strong>updated</strong> an issue </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td id="email-content-container" style="padding: 0px; border-collapse: collapse; padding: 0 20px">
<table id="email-content-table" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; border-spacing: 0; border-collapse: separate">
<tbody>
<tr>
<!-- there needs to be content in the cell for it to render in some clients -->
<td class="email-content-rounded-top mobile-expand" style="padding: 0px; border-collapse: collapse; color: #ffffff; padding: 0 15px 0 16px; height: 15px; background-color: #ffffff; border-left: 1px solid #cccccc; border-top: 1px solid #cccccc; border-right: 1px solid #cccccc; border-bottom: 0; border-top-right-radius: 5px; border-top-left-radius: 5px; height: 10px; line-height: 10px; padding: 0 15px 0 16px; mso-line-height-rule: exactly" height="10" bgcolor="#ffffff"> </td>
</tr>
<tr>
<td class="email-content-main mobile-expand " style="padding: 0px; border-collapse: collapse; border-left: 1px solid #cccccc; border-right: 1px solid #cccccc; border-top: 0; border-bottom: 0; padding: 0 15px 0 16px; background-color: #ffffff" bgcolor="#ffffff">
<table class="page-title-pattern" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td class="page-title-pattern-first-line " style="padding: 0px; border-collapse: collapse; font-family: Arial, sans-serif; font-size: 14px; padding-top: 10px"> <a href="https://hibernate.atlassian.net/browse/HHH" style="color: #3b73af; text-decoration: none">Hibernate ORM</a> / <a href="https://hibernate.atlassian.net/browse/HHH-10391" style="color: #3b73af; text-decoration: none"><img src="cid:jira-generated-image-avatar-14465bac-0541-4a16-b922-b7933c057d97" height="16" width="16" border="0" align="absmiddle" alt="Bug" style="vertical-align: text-bottom"></a> <a href="https://hibernate.atlassian.net/browse/HHH-10391" style="color: #3b73af; text-decoration: none">HHH-10391</a> </td>
</tr>
<tr>
<td style="vertical-align: top;; padding: 0px; border-collapse: collapse; padding-right: 5px; font-size: 20px; line-height: 30px; mso-line-height-rule: exactly" class="page-title-pattern-header-container"> <span class="page-title-pattern-header" style="font-family: Arial, sans-serif; padding: 0; font-size: 20px; line-height: 30px; mso-text-raise: 2px; mso-line-height-rule: exactly; vertical-align: middle"> <a href="https://hibernate.atlassian.net/browse/HHH-10391" style="color: #3b73af; text-decoration: none">org.hibernate.ejb.Ejb3Configuration.scanForClasses error trying to scan <jar-file></a> </span> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td class="email-content-main mobile-expand wrapper-special-margin" style="padding: 0px; border-collapse: collapse; border-left: 1px solid #cccccc; border-right: 1px solid #cccccc; border-top: 0; border-bottom: 0; padding: 0 15px 0 16px; background-color: #ffffff; padding-top: 10px; padding-bottom: 5px" bgcolor="#ffffff">
<table class="keyvalue-table" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<th style="color: #707070; font: normal 14px/20px Arial, sans-serif; text-align: left; vertical-align: top; padding: 2px 0">Change By:</th>
<td style="padding: 0px; border-collapse: collapse; font: normal 14px/20px Arial, sans-serif; padding: 2px 0 2px 5px; vertical-align: top"> <a class="user-hover" rel="gavenkoa" id="email_gavenkoa" href="https://hibernate.atlassian.net/secure/ViewProfile.jspa?name=gavenkoa" style="color:#6c797f;; color: #3b73af; text-decoration: none">Oleksandr Gavenko</a> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td class="email-content-main mobile-expand issue-description-container" style="padding: 0px; border-collapse: collapse; border-left: 1px solid #cccccc; border-right: 1px solid #cccccc; border-top: 0; border-bottom: 0; padding: 0 15px 0 16px; background-color: #ffffff; padding-top: 5px; padding-bottom: 10px" bgcolor="#ffffff">
<table class="text-paragraph-pattern" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 2px">
<tbody>
<tr>
<td class="text-paragraph-pattern-container mobile-resize-text " style="padding: 0px; border-collapse: collapse; padding: 0 0 10px 0"> <span class="diffcontext">During development I use Tomcat 8 deploy descriptor:<br><br>{{</span> <span class="diffaddedchars" style="background-color:#ddfade;"><br></span> <span class="diffcontext"><Context docBase="/home/user/devel/app/src/main/webapp"<br> reloadable="true"><br> <Resources><br> <!-- To override application.properties, logback.xml, etc. --><br> <PreResources className="org.apache.catalina.webresources.DirResourceSet"<br> base="/home/user/devel/app/.config"<br> internalPath="/"<br> webAppMount="/WEB-INF/classes" /><br> <!-- To load compiled classes. --><br> <PostResources className="org.apache.catalina.webresources.DirResourceSet"<br> base="/home/user/devel/app/target/classes"<br> webAppMount="/WEB-INF/classes" /><br> <!-- To load *.jar. --><br> <PostResources className="org.apache.catalina.webresources.DirResourceSet"<br> base="/home/user/devel/app/target/app-1.1-SNAPSHOT/WEB-INF/lib"<br> webAppMount="/WEB-INF/lib" /><br> </Resources><br></Context><br>}}<br><br>I extend classpath in order to load development version of config/auth files.<br><br>Tomcat detect changes in specified paths and try to reload context. Tomcat 8 checks for changes of class/web.xml files.<br><br>Sometimes changes triggered by NetBeans IDE. Sometimes I do "{{mvn package}}".<br><br>My editor (Emacs) create temporary file which name look like: .{{#liquibase.properties}}<br><br>After file saving this file disappear.<br><br>For some strange reason {{org.hibernate.ejb.Ejb3Configuration.scanForClasses}} call {{org.hibernate.ejb.packaging.ExplodedJarVisitor.getClassNamesInTree}} for each individual file in classpath:<br><br>{{ private void getClassNamesInTree(File jarFile, String header) throws IOException {<br> File[] files = jarFile.listFiles();<br> header = header == null ? "" : header + "/";<br> for ( File localFile : files ) {<br> if ( !localFile.isDirectory() ) {<br> String entryName = localFile.getName();<br> addElement(<br> header + entryName,<br> new BufferedInputStream( new FileInputStream( localFile ) ),<br> new BufferedInputStream( new FileInputStream( localFile ) )<br> );<br> }<br> else {<br> getClassNamesInTree( localFile, header + localFile.getName() );<br> }<br> }<br> }<br>}}<br><br>Because editor remove unnecessary temp file, Hibernate fail with following stacktrace:<br><br>{{</span> <span class="diffaddedchars" style="background-color:#ddfade;"><br></span> <span class="diffcontext">2015-12-20 00:01:20,569 ERROR org.springframework.web.context.ContextLoader<br> Caller+0 at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:319)<br> => Context initialization failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in ServletContext resource [/WEB-INF/root-context.xml]: Invocation of init method failed; nested exception is java.lang.RuntimeException: error trying to scan <jar-file>: file:/home/user/devel/</span> <span class="diffremovedchars" style="background-color: #ffe7e7; text-decoration:line-through;">lombardsvn</span> <span class="diffaddedchars" style="background-color:#ddfade;">app</span> <span class="diffcontext">/.config/<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1482) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1117) ~[spring-context-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:922) ~[spring-context-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479) ~[spring-context-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389) ~[spring-web-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294) ~[spring-web-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112) [spring-web-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4738) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5181) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3755) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:292) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:5542) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1377) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1381) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1381) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1349) [tomcat8-catalina-8.0.28.jar:8.0.28]<br> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_91]<br>Caused by: java.lang.RuntimeException: error trying to scan <jar-file>: file:/home/user/devel/</span> <span class="diffremovedchars" style="background-color: #ffe7e7; text-decoration:line-through;">lombardsvn</span> <span class="diffaddedchars" style="background-color:#ddfade;">app</span> <span class="diffcontext">/.config/<br> at org.hibernate.ejb.Ejb3Configuration.scanForClasses(Ejb3Configuration.java:864) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:606) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:75) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:288) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:310) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1541) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1479) ~[spring-beans-3.2.4.RELEASE.jar:3.2.4.RELEASE]<br> ... 23 common frames omitted<br>Caused by: java.lang.RuntimeException: Error while reading file:/home/user/devel/</span> <span class="diffremovedchars" style="background-color: #ffe7e7; text-decoration:line-through;">lombardsvn</span> <span class="diffaddedchars" style="background-color:#ddfade;">app</span> <span class="diffcontext">/.config/<br> at org.hibernate.ejb.packaging.NativeScanner.getFilesInJar(NativeScanner.java:195) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.hibernate.ejb.Ejb3Configuration.addScannedEntries(Ejb3Configuration.java:506) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.hibernate.ejb.Ejb3Configuration.scanForClasses(Ejb3Configuration.java:861) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> ... 29 common frames omitted<br>Caused by: java.io.FileNotFoundException: /home/user/devel/</span> <span class="diffremovedchars" style="background-color: #ffe7e7; text-decoration:line-through;">lombardsvn</span> <span class="diffaddedchars" style="background-color:#ddfade;">app</span> <span class="diffcontext">/.config/.#liquibase.properties (No such file or directory)<br> at java.io.FileInputStream.open(Native Method) ~[na:1.7.0_91]<br> at java.io.FileInputStream.<init>(FileInputStream.java:146) ~[na:1.7.0_91]<br> at org.hibernate.ejb.packaging.ExplodedJarVisitor.getClassNamesInTree(ExplodedJarVisitor.java:126) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.hibernate.ejb.packaging.ExplodedJarVisitor.doProcessElements(ExplodedJarVisitor.java:92) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.hibernate.ejb.packaging.AbstractJarVisitor.getMatchingEntries(AbstractJarVisitor.java:149) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> at org.hibernate.ejb.packaging.NativeScanner.getFilesInJar(NativeScanner.java:192) ~[hibernate-entitymanager-4.2.2.Final.jar:4.2.2.Final]<br> ... 31 common frames omitted<br>}}<br><br>I think that Hibernate do wrong in:<br><br>{{new BufferedInputStream( new FileInputStream( localFile ) )}}<br><br>on files that are not .class or .jar<br><br>This lead to application crashes during development.<br><br>Also it is obviously have performance impact - Hibernate just open</span> <span class="diffremovedchars" style="background-color: #ffe7e7; text-decoration:line-through;"> any file</span> <span class="diffaddedchars" style="background-color:#ddfade;"> all files</span> <span class="diffcontext"> in classpath</span> <span class="diffaddedchars" style="background-color:#ddfade;"> during initialization</span> <span class="diffcontext">!!</span> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td class="email-content-main mobile-expand " style="padding: 0px; border-collapse: collapse; border-left: 1px solid #cccccc; border-right: 1px solid #cccccc; border-top: 0; border-bottom: 0; padding: 0 15px 0 16px; background-color: #ffffff" bgcolor="#ffffff">
<table id="actions-pattern" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 1px">
<tbody>
<tr>
<td id="actions-pattern-container" valign="middle" style="padding: 0px; border-collapse: collapse; padding: 10px 0 10px 24px; vertical-align: middle; padding-left: 0">
<table align="left" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td class="actions-pattern-action-icon-container" style="padding: 0px; border-collapse: collapse; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 0px; vertical-align: middle"> <a href="https://hibernate.atlassian.net/browse/HHH-10391#add-comment" target="_blank" title="Add Comment" style="color: #3b73af; text-decoration: none"> <img class="actions-pattern-action-icon-image" src="cid:jira-generated-image-static-comment-icon-0396196a-6bbe-4e57-be9c-5df42dc7bcb2" alt="Add Comment" title="Add Comment" height="16" width="16" border="0" style="vertical-align: middle"> </a> </td>
<td class="actions-pattern-action-text-container" style="padding: 0px; border-collapse: collapse; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 4px; padding-left: 5px"> <a href="https://hibernate.atlassian.net/browse/HHH-10391#add-comment" target="_blank" title="Add Comment" style="color: #3b73af; text-decoration: none">Add Comment</a> </td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table> </td>
</tr>
<!-- there needs to be content in the cell for it to render in some clients -->
<tr>
<td class="email-content-rounded-bottom mobile-expand" style="padding: 0px; border-collapse: collapse; color: #ffffff; padding: 0 15px 0 16px; height: 5px; line-height: 5px; background-color: #ffffff; border-top: 0; border-left: 1px solid #cccccc; border-bottom: 1px solid #cccccc; border-right: 1px solid #cccccc; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; mso-line-height-rule: exactly" height="5" bgcolor="#ffffff"> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td id="footer-pattern" style="padding: 0px; border-collapse: collapse; padding: 12px 20px">
<table id="footer-pattern-container" cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td id="footer-pattern-text" class="mobile-resize-text" width="100%" style="padding: 0px; border-collapse: collapse; color: #999999; font-size: 12px; line-height: 18px; font-family: Arial, sans-serif; mso-line-height-rule: exactly; mso-text-raise: 2px"> This message was sent by Atlassian JIRA <span id="footer-build-information">(v7.1.0-OD-02-030#71001-<span title="2ba8c0f6d804dd6099ab1d311f328e634649726f" data-commit-id="2ba8c0f6d804dd6099ab1d311f328e634649726f}">sha1:2ba8c0f</span>)</span> </td>
<td id="footer-pattern-logo-desktop-container" valign="top" style="padding: 0px; border-collapse: collapse; padding-left: 20px; vertical-align: top">
<table style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td id="footer-pattern-logo-desktop-padding" style="padding: 0px; border-collapse: collapse; padding-top: 3px"> <img id="footer-pattern-logo-desktop" src="cid:jira-generated-image-static-footer-desktop-logo-be762862-3b67-4746-84df-4aa8017d48fa" alt="Atlassian logo" title="Atlassian logo" width="169" height="36" class="image_fix"> </td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table>
</body>
</html>