2
respostas

Falha ao instanciar LIVRARIA usando HSQLDB, no WildFly12

Olá, Estou utilizando o banco HSQLDB, no lugar no mysql, porem da erro ao instanciar o projeto Livraria, podem ajudar?

19:09:50,970 ERROR [org.jboss.as.controller.management-operation] (ServerService Thread Pool -- 36) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "datasources"),
    ("jdbc-driver" => "org.hsqldb")
]) - failure description: "WFLYJCA0041: Failed to load module for driver [org.hsqldb]"

...
19:09:56,068 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "livraria.war")]) - failure description: {
    "WFLYCTL0412: Required services that are not installed:" => [
        "jboss.deployment.unit.\"livraria.war\".component.UsuarioDao.WeldInstantiator",
....
19:09:56,068 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "datasources"),
    ("data-source" => "livrariaDS")
]) - failure description: {
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.jdbc-driver.org_hsqldb"],
    "WFLYCTL0180: Services with missing/unavailable dependencies" => [
        "org.wildfly.data-source.livrariaDS is missing [jboss.jdbc-driver.org_hsqldb]",
        "jboss.driver-demander.java:/livrariaDS is missing [jboss.jdbc-driver.org_hsqldb]"
    ]
}

Segue configuração do module.xml

<?xml version="1.0" encoding="UTF-8"?>

<module name="org.hsqldb" xmlns="urn:jboss:module:1.0">
  <resources>
    <resource-root path="hsqldb.jar"/>
  </resources>
  <dependencies>
    <module name="javax.api"/>
    <module name="javax.transaction.api"/>
    <module name="javax.servlet.api" optional="true"/>
  </dependencies>
</module>

datasources no standalone.xml

<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;DB_CLOSE_ON_EXIT=FALSE</connection-url>
                    <driver>h2</driver>
                    <security>
                        <user-name>sa</user-name>
                        <password>sa</password>
                    </security>
                </datasource>
                <datasource jndi-name="java:/livrariaDS" pool-name="livrariaDS" enabled="true" use-java-context="true">
                    <connection-url>jdbc:hsqldb:hsql://localhost/livraria</connection-url>
                    <driver>org.hsqldb</driver>
                    <pool>
                        <min-pool-size>1</min-pool-size>
                        <max-pool-size>20</max-pool-size>
                        <prefill>true</prefill>
                    </pool>
                    <security>
                        <user-name>sa</user-name>
                        <password></password>
                    </security>
                </datasource>
                <drivers>
                    <driver name="h2" module="com.h2database.h2">
                        <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                    </driver>
                    <driver name="org.hsqldb" module="org.hsqldb">
                        <xa-datasource-class>org.hsqldb.jdbcDriver</xa-datasource-class>
                    </driver>
                </drivers>
            </datasources>

e o persistence.xml

<persistence-unit name="livraria">

        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <jta-data-source>java:/livrariaDS</jta-data-source>
      ...        
<properties>
            <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect" />
            <property name="hibernate.hbm2ddl.auto" value="update" />
            <property name="hibernate.show_sql" value="true" />
        </properties>

o banco foi criado e iniciado .

2 respostas

Oi Perciliano, tudo bem?

Pelo erro parece que você esqueceu o driver

failure description: "WFLYJCA0041: Failed to load module for driver [org.hsqldb]"

É necessário o driver do banco para inicializar, e isso seria o jar (:

Vc pode baixar o driver no link q te mandei, ou se estiver usando o maven procura por ele no repo do mvn (:

https://sourceforge.net/projects/hsqldb/files/

Olá Yuri,

O driver esta na mesma pasta, pode ser o nome informado - mas não consegui entender ainda o erro! consegue simular ou dar outra dica? segue como estão os arquivos no servidor, estou usando o eclipse para carregar o servidor com a aplicação.

pasta do servidor : ...\wildfly-12.0.0.Final\modules\system\layers\base\com\hsqldb\main arquivos: module.xml , hsqldb.jar

pasta: ...wildfly-12.0.0.Final\standalone\configuration arquivo: standalone.xml

O seu link aponta para um jar de mesma versão que uso atualmente com sucesso no tomcat, não consegui usar no wildfly por enquanto.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software