3

JBoss AS 7.1.1 を使用していますが、データベースに問題があります。サーバーを再起動するたびにデータベースが消去されます。以下に、永続化ファイルの内容を示します。

<?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="wyklad2"> 
        <provider>org.hibernate.ejb.HibernatePersistence</provider> 
        <jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source> 
        <properties> 
            <property name="hibernate.hbm2ddl.auto" value="update" /> 
            <property name="hibernate.show_sql" value="false" /> 
        </properties> 
    </persistence-unit> 
 </persistence>

データソース構成:

    <subsystem xmlns="urn:jboss:domain:datasources:1.0"> 
            <datasources> 
                <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true"> 
                    <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url> 
                    <driver>h2</driver> 
                    <security> 
                        <user-name>sa</user-name> 
                        <password>sa</password> 
                    </security> 
                </datasource> 
                <drivers> 
                    <driver name="h2" module="com.h2database.h2"> 
                        <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> 
                    </driver> 
                </drivers> 
            </datasources> 
        </subsystem>

この問題を解決するのに役立つ手がかりがあれば、とても感謝しています。

4

1 に答える 1

10

使用しているデータソースは、インメモリh2データベースです。サーバーがダウンすると、このDBは存在しなくなります。

代わりに、実際のデータベースに切り替えてください。

h2の場合、構文は次のようになりますjdbc:h2:~/mydb;DB_CLOSE_DELAY=-1。〜/mydbにあるデータベースの場合。任意のパスを使用します(書き込みアクセス権が必要です)。

于 2012-04-05T13:48:50.067 に答える