Keycloak 无法启动,因为找不到 postgresql 驱动

问题描述 投票:0回答:1

我尝试使用 Postgresql 9.4 数据库在 Debain 12 上安装 Keycloak 服务器。 我在 keycloak DB 上使用 keycloakDs 配置了独立文件,并添加了 postgresql 模块来加载 postgresql 驱动程序。但是当我启动 Keycloak 服务器时,我收到一条错误消息:

WFLYCTL0184:    New missing/unsatisfied dependencies:
      service jboss.jdbc-driver.postgresql (missing) dependents: [service jboss.driver-demander.java:jboss/datasources/KeycloakDS, service org.wildfly.data-source.KeycloakDS]
      service org.wildfly.clustering.infinispan.cache.keycloak.actionTokens (missing) dependents: [service jboss.naming.context.java.module.auth.auth.ValidatorFactory, service jboss.naming.

您可以在下面找到我的 postgresql 模块配置: KEYCLOAK_HOME/modules/system/layers/keycloak/org/postgresql 我有一个 module.xml 文件和 postgresql-9.4.1212.jar 文件。

模块.xml:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3" name="org.postgresql">
    <resources>
        <resource-root path="postgresql-9.4.1212.jar"/>
    </resources>
    <dependencies>
                <module name="javax.api"/>
                <module name="javax.transaction.api"/>
    </dependencies>
</module>

独立会议:

<datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" enabled="true" use-java-context="true">
    <connection-url>jdbc:postgresql://my-database-ip:5432/keycloak?ApplicationName=keycloak</connection-url>
    <driver>postgresql</driver>
    <pool>
        <min-pool-size>5</min-pool-size>
        <initial-pool-size>5</initial-pool-size>
        <max-pool-size>100</max-pool-size>
        <prefill>true</prefill>
    </pool>
    <security>
        <user-name>user-name</user-name>
        <password>password</password>
    </security>
    <validation>
        <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker"/>
        <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLExceptionSorter"/>
    </validation>
</datasource>
<drivers>
    <driver name="postgresql" module="org.postgresql.connector">
        <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
    </driver>
</drivers>
postgresql keycloak
1个回答
0
投票

我通过将驱动程序部分删除到standalone.xml 中来解决我的问题,然后使用jboss-cli.sh 添加新的子系统

您可以在这里找到帮助:https://ralph.blog.imixs.com/2016/10/22/wildfly-install-postgresql-jdbc-driver-as-a-module/

© www.soinside.com 2019 - 2024. All rights reserved.