Stiamo cercando di aggiornare da Hibernate 3.6.7 a 4.1.2 e Hibernate Tools 3.2.0 a 3.5.0Hibernate Tools: errore di nome JNDI analisi
Generiamo uno script di creazione DB usando Ant:
<hibernatetool destdir="${target}">
<jpaconfiguration persistenceunit="stdcmpOrderPersistenceUnit" propertyfile="@{propertyfile}"/>
<classpath refid="@{classpathid}"/>
<!-- the file name is relative to $destdir -->
<hbm2ddl outputfilename="@{output}" format="true" export="false" drop="false"/>
</hibernatetool>
il nostro sguardo unità di persistenza in questo modo:
<persistence-unit name="stdcmpOrderPersistenceUnit" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>jdbc/lakshmi_stdcmp</jta-data-source>
<mapping-file>META-INF/stdcmpOrderNamedQueries.xml</mapping-file>
<class>ch.ethz.id.wai.lakshmi.stdcmp.persistency.PersistentOrder</class>
<exclude-unlisted-classes>true</exclude-unlisted-classes>
<properties>
<property name="hibernate.show_sql" value="false"/>
<property name="hibernate.format_sql" value="false"/>
</properties>
</persistence-unit>
Dopo l'aggiornamento otteniamo il seguente errore:
[hibernatetool] org.hibernate.service.jndi.JndiException: Error parsing JNDI name [jdbc/lakshmi_stdcmp]
[hibernatetool] javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
Perché Hibernate tenta di risolvere il nome JNDI poiché tutte le informazioni su PersistenceUnit sono disponibili? Non abbiamo avuto problemi con la vecchia versione.
E in ogni caso come possiamo specificare un NamingFactory? (e quale?)
Benvenuti in Stack Overflow! Mentre questo può teoricamente rispondere alla domanda, [sarebbe preferibile] (http://meta.stackexchange.com/q/8259) includere qui le parti essenziali della risposta e fornire il link per riferimento. – Spontifixus
Grazie per la segnalazione. –
Qualche idea perché il letargo non è così? – webber