Ô minha gente,
Pra aprender a usar a API persistence do java resolvi criar um projetozinho no NetBeans com o banco HSQLBD e o Hibernate como implementação da JPA. Coloquei tudo certinho na biblioteca do projeto, criei o persistence.xml (e não o arquivo de configuração do Hibernate, visto que não quero ficar preso a ele) na pasta META-INF. Nesse projeto quero que o banco seja standalone (pq pretendo usar algo semelhante em outro projeto). Só que, quando executo o progarama é dado o erro:
[color=darkred]Exception in thread "main" javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Cannot open connection[/color]
e mais em baixo:
[color=darkred]
Caused by: org.hibernate.exception.GenericJDBCException: Cannot open connection[/color]
e mais em baixo ainda:
[color=darkred]
Caused by: java.sql.SQLException: File input/output error: file:data/teste.properties java.io.FileNotFoundException: file:data\teste.properties (A sintaxe do nome do arquivo, pasta ou nome do volume está incorreta)
[/color]
Mas o .properties está lá. Criei usando databaseManager.bat, inserir dados de teste, dropei as tabelas, fiz select, etc e tudo funcionou direitinho, mas não sei porque ele não é encontrado. Já tentei colocar o caminho completo e não deu certo, tentei usar ‘//’ no caminho do arquivo, ex: C:\Docum…, mas tambem não deu, tentei usar ‘’ ao invés de ‘/’ e não funcionou.
Abaixo eu coloquei o meu persistence.xml para vocês olharem para ver se fiz algo errado.
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="testePU" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>events.Event</class>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.connection.username" value="sa"/>
<property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
<property name="hibernate.connection.password" value=""/>
<property name="hibernate.connection.url" value="jdbc:hsqldb:file:data/teste"/>
<property name="hibernate.cache.provider_class" value="org.hibernate.cache.NoCacheProvider"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
</properties>
</persistence-unit>
</persistence>