gpt4 book ai didi

java - 使用 Java 14 的 WildFly 19.1 上的 ClassNotFoundException : java. security.acl.Group

转载 作者:行者123 更新时间:2023-12-05 03:52:46 30 4
gpt4 key购买 nike

我迁移了一个 Web application在 Java 11 上的 WildFly 17 到两者的最新版本:Java 14 上的 WildFly 19。最后我得到一个 ClassNotFoundException: java.security.acl.Group,可能是因为Web 应用程序使用 JAAS。

请注意,在 a tutorial of my own 之后构建了一个类似的 Web 应用程序工作正常,但它不使用 JAAS。这和包 java.security.acl 让我觉得 JAAS 是相关的。

我在网上搜索发现 issue WFCORE-4282 at WildFly's JIRA这似乎意味着虽然他们知道这个 java.security.acl.Group 类在一年多前就被弃用了,但 WildFly 19 仍然需要它并且 Java 14 确实删除了它,从而导致 ClassNotFoundException 对我来说。

我的解释正确吗? WildFly 19 + Java 14 + JAAS = ClassNotFoundException 是否必然或是否有人设法使其工作?或者我做错了什么?在我看来,JBoss 在 WildFly 上忽略了一个如此大的问题......

更新:我删除了 Java 14,安装了 Java 13,重新安装了 Eclipse 和 WildFly,并重新部署了应用程序,它工作正常,所以 WildFly 19 + Java 13 + JAAS = OK!

最佳答案

此问题已于 2021 年底得到解决(迟做总比不做好!)。因此,您现在可以将 JDK 17+ 与 WildFly 26+ 结合使用。但是请注意,您必须从以下位置进行重要的移动:

<subsystem xmlns="urn:jboss:domain:security:1.2">
...
<login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required">
...
</login-module>
</subsystem>

...到...

<subsystem xmlns="urn:wildfly:elytron:15.0">
...
<security-realms>
<jdbc-realm>
...
</jdbc-realm>
</security-realms>
</subsystem>

YMMV 取决于您的架构,但基本上您必须拥抱 Elytron。

关于java - 使用 Java 14 的 WildFly 19.1 上的 ClassNotFoundException : java. security.acl.Group,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62056387/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com