7.3.0 版本说明

红帽JBoss企业应用平台 7.3

与红帽JBoss企业应用平台7.3一起使用。

摘要

这些发布说明包含了与Red Hat JBoss Enterprise Application Platform 7.3相关的重要信息。

第 1 章 JBoss EAP 7.3认证情况

JBoss EAP 7.3是与Jakarta EE 8兼容的实现。

JBoss EAP的7.3版本是兼容Web Profile和Full Platform规范的Jakarta EE 8实现。和以前的版本一样,该版本也是经过认证的Java EE 8 Web Profile和Full Platform规范的实现。

有关雅加达EE的信息,请参阅雅加达EE常见问题

第 2 章 支持的配置

JBoss EAP 7.3新支持以下配置。

数据库和数据库连接器

Red Hat Customer Portal上的Red HatJBoss Enterprise Application Platform (EAP) 7 Supported Configurations知识库文章列出了作为JBoss EAP 7.3版本一部分测试的数据库和数据库连接器。

Java开发套件

  • Eclipse OpenJ9 (JDK 11)

第 3 章 新功能和增强功能

3.1. 安保

Elytron审计记录性能和可靠性调整

在JBoss EAP 7.2中,Elytron文件审计日志的synchronized 属性定义了是否在每次审计事件后刷新输出流和同步文件描述符。

这个版本引入了新的autoflush 属性,将流冲洗和文件同步分开,这样可以更精细地调整Elytron审计日志的性能和可靠性。

有关配置Elytron审计日志的更多信息,请参见How to Configure Server Security for JBoss EAP中的Elytron Audit Logging

JwtValidator增强版

这个版本的JwtValidator现在包括了对多密钥和远程公钥的支持。key-store 属性现在可以与certificate 属性相结合,作为public-key 的替代。client-ssl-context 属性定义了用于远程JSON网络密钥(JWK)的SSL上下文。这使您能够使用来自jku (JSON密钥URL)头参数的URL来获取用于令牌验证的公钥。

更多信息,请参见How to Configure Server Security 中的JBoss EAP的token-realm jwt Attributes表。

默认的SSLContext

该版本现在在启动时注册了一个默认的SSLContext,可供任何支持使用默认上下文的库使用。

欲了解更多信息,请参见How to Configure Server Security 中关于JBoss EAP的默认SSLContext

使用Elytron的容器的Java认证SPI(JASPI)安全性

该版本中的elytron 子系统现在提供了来自 Java Authentication SPI for Containers (JASPI) 的Servlet profile 的实现。这允许与Elytron提供的安全功能更紧密地集成。

有关更多信息,请参见Development Guide for JBoss EAP中的Configure Java Authentication SPI for Containers (JASPI) Security Using Elytron

服务器 SSL 服务器名称指示(SNI)上下文

该版本中的server-ssl-sni-context 用于提供服务器端SNI匹配。它提供了匹配规则,将主机名与SSL上下文关联起来,同时提供了一个默认值,以防所提供的主机名都不匹配。

欲了解更多信息,请参见使用 How to Configure Server Security 中的 server-ssl-sni-contextfor JBoss EAP。

自动检测钥匙店类型

现在会自动检测到以下钥匙店类型。

  • JKS
  • JCEKS
  • PKCS12
  • BKS
  • BCFKS
  • UBER

其他的keystore类型必须手动指定。

更多信息,请参见How to Configure Server Security 中的Elytron Subsystem Components Referencefor JBoss EAP。

Elytron中的Java EE安全API支持

elytron 子系统现在支持 JSR 375 中定义的 Java EE 安全 API。

Java EE Security API定义了用于身份验证和身份存储的可移植插件接口,以及一个新的可注入型SecurityContext 接口,它为编程安全提供了一个访问点。您可以使用这些 API 的内置实现,或定义自定义实现。有关规范的详细信息,请参见Java EE安全API规范

您可以使用管理 CLI 以最少的配置步骤在elytron 子系统中启用 Java EE 安全 API。

有关启用 Java EE Security API 的信息,请参见《开发指南》中关于 Java EE Security API 的内容

Elytron中的无声BASIC认证。

现在您可以配置elytron 子系统来执行沉默的BASIC 认证。

启用静默认证后,如果用户的请求不包含授权头,则不会提示用户登录访问Web应用程序。

有关启用沉默的BASIC 身份验证的信息,请参见How to Configure Identity Management 中的《配置 Web 应用程序使用 Elytron 或 Legacy Security 进行身份验证》。

在Elytron中,将基于属性的安全领域迁移到文件系统领域的实用程序。

现在,您可以使用elytron-tool.sh 工具的filesystem-realm 命令将传统的基于属性的安全领域迁移到 Elytron 的基于文件系统的领域。

基于文件系统的领域是Elytron用于存储用户身份的基于文件系统的身份存储。filesystem-realm 命令将properties-realm 文件迁移到filesystem-realm ,同时还生成将该领域和安全域添加到elytron 子系统的命令。

有关filesystem-realm 命令的信息,请参见Migration Guide for JBoss EAP 中的使用 filesystem-realm 命令迁移到基于文件系统的安全领域

在JDBC领域支持十六进制编码。

Elytron现在支持JDBC领域的密码哈希算法的十六进制编码。

更多信息,请参见How to Configure Identity Management JBoss EAP指南中的密码映射器

在JDBC领域中支持模块化加密密码

模块化密码编码现在已经在JDBC领域得到支持。

模块化密码编码允许在一个字符串中编码多个信息,如密码类型、散列或摘要、盐和迭代次数。

更多信息,请参见How to Configure Identity Management JBoss EAP指南中的密码映射器

能够将多个安全领域合并到一个总领域中进行授权。

现在,您可以在带有authorization-realms 属性的aggregate-realm 中使用多个安全域进行授权。

欲了解更多信息,请参阅JBoss EAP的How to Configure Identity Management 指南中的《使用多个身份存储配置认证和授权》。

能夠使用 X.509 憑證中的主旨替代名稱延伸作為主旨。

现在,您可以配置证据解码器,以使用 X.509 证书中的主体替代名称作为与该证书相关联的主体。

有关更多信息,请参见How to Configure Server Security 指南中的配置 X.509 证书的证据解码器与主题替代名称扩展

用综合证据解码器合并多个证据解码器的能力。

Elytron现在提供了一个集合证据解码器,可以将两个或多个证据解码器组合成一个解码器。

有关更多信息,请参见How to Configure Server Security 指南中的配置聚合证据解码器

使用OCSP的证书撤销能力

Elytron现在使用RFC6960中定义的在线证书状态协议(OCSP)提供证书撤销功能,当underow被用作负载平衡器时。

欲了解更多信息,请参见JBoss EAP指南How to Configure Server Security 中的使用在线证书状态协议进行证书撤销

Syslog审计日志增强

Elytron syslog审计日志现在支持RFC5424RFC3164中定义的日志格式来描述审计事件。

一个新的属性,reconnect-attempts ,现在可以配置Elytron在使用UDP关闭连接之前向syslog服务器发送连续消息的最大次数。

有关增强功能的更多信息,请参见JBoss EAP的How to Configure Server Security 指南中的Syslog Audit Logging

Elytron支持屏蔽密码

Elytron最初的实现不支持屏蔽密码。

在JBoss EAP 7.3中,为了向后兼容PicketBox密码,支持屏蔽密码类型。

从Let's Ecrypt获取服务器证书

在JBoss EAP 7.2中,增加了管理SSL的基本CLI命令。

在JBoss EAP 7.3中,这些命令得到了增强,可以从Let's Encrypt证书机构获取服务器证书。

主变压器添加到聚合领域

Elytron包括一个聚合安全领域,它是两个或多个领域的组合:一个认证领域和一个或多个授权领域。

在JBoss EAP 7.2和更早的版本中,在加载认证身份后和加载授权身份前,不存在转换委托人的功能。

现在,一个聚合境界可以配置一个主变换器,它是在映射器配置中定义的,以执行这种变换。

易创资源文件系统-境界支持

在JBoss EAP 7.1和7.2中,filesystem-realm 的用法是技术预览。

在此版本中,现在支持将filesystem-realm 作为由文件系统支持的 Elytron 资源定义。

在此版本中默认启用AJP连接器。

在JBoss EAP 7.3中,undertow 子系统中的AJP连接器是默认启用的。AJP连接器已被确定为该子系统的潜在安全风险。

关于解决这一风险的推荐方法,请参见https://access.redhat.com/solutions/4851251

HTTP管理端点的自定义头文件

以前的JBoss EAP版本不包括在管理界面中为端点定义自定义HTTP头的功能。

在JBoss EAP 7.3中,HTTP管理接口资源定义中增加了一个新属性constant-headers 。管理员可以使用这个属性来指定额外的HTTP头,让JBoss EAP在响应针对HTTP管理接口的请求时返回。

3.2. 服务器管理

对Maven工件和模块名称的修改

在JBoss EAP7.3中,org.jboss.resteasy:resteasy-validator-provider-11 被改名为org.jboss.resteasy:resteasy-validator-provider

此外,模块org.jboss.resteasy.resteasy-validator-provider-11 现在被归类为模块org.jboss.resteasy.resteasy-validator 的别名。新创建的应用程序应该引用模块org.jboss.resteasy.resteasy-validator 。现有的应用程序仍然可以引用这个别名,但不影响其功能。

支持Eclipse MicroProfile Metrics

这个版本现在包括SmallRye Metrics组件,它使用microprofile-metrics-smallrye 子系统提供Eclipse MicroProfile Metrics功能。该子系统用于为JBoss EAP实例提供监控数据,并且默认启用。

更多信息,请参见Eclipse MicroProfile Metricsin theConfiguration Guide for JBoss EAP。

暂停由主机控制器管理的服务器。

该版本提供了在托管域中主机级别暂停和恢复服务器的功能。

欲了解更多信息,请参见Configuration Guide 中的Suspend Serversfor JBoss EAP。

支持JBoss EAP子系统的普罗米修斯格式指标。

Eclipse MicroProfile Metrics功能用于为JBoss EAP实例提供监控数据。这个版本增强了SmallRye Metrics组件,以Prometheus格式提供JBoss EAP的指标。

关于Eclipse MicroProfile Metrics的信息,请参见JBoss EAP的Configuration Guide 中的Eclipse MicroProfile Metrics部分。

3.3. 管理CLI

禁用输出寻呼

默认情况下,JBoss EAP管理CLI在显示一页输出后就会暂停,这允许你浏览和搜索命令输出。现在你可以禁用这种行为,并立即打印整个输出,方法是用--no-output-paging 参数启动管理CLI,或者将output-paging 元素设置为trueEAP_HOME/bin/jboss-cli.xml文件。

升级后的MicroProfile健康检查2.0.1活力和准备度探测器的属性。

在以前的版本中,无法使用管理CLI单独获取livenessreadiness 探头的MicroProfile健康状态。

现在可以分别使用:check-live:check-ready 操作,或者使用/health/live/health/ready HTTP 端点,分别获取livenessreadiness 探针的状态。

现在利用现有的/health HTTP端点和:check 管理操作来获取all 检查探针(包括livenessreadiness 探针)。

目前MicroProfile Health Check 2.0.1的功能目前还不能完全向后兼容以前的版本。

更多信息,请参见Configuration Guide 中的MicroProfile健康检查

3.4. 管理控制台

从管理控制台配置Socket日志处理程序

现在可以使用管理控制台配置套接字日志处理程序,方法是导航到ConfigurationSubsystemsLoggingConfiguration ,单击View ,然后选择HandlerSocket Handler

更多信息,请参见Configuration Guide for JBoss EAP中的Configure a Socket Log Handler

从管理控制台查看日志配置文件日志

现在,您可以通过导航到RuntimeMonitorLog FilesLog File 并单击要查看日志的日志配置文件旁边的View ,从管理控制台查看日志配置文件日志文件。

从管理控制台查看主动管理操作

现在,您可以在管理控制台的中央位置查看所有主机和服务器的活动操作。

运行独立服务器时,导航到RuntimeServerMonitorManagement Operations ,然后点击View

在管理域中,导航到RuntimeBrowse ByManagement Operations ,然后点击View

两种新资源可用于ModCluster子系统。

现在,modcluster 子系统有了两个新资源。load-provider=dynamicload-provider=simpledynamic-load-provider=configuration 资源是load-provider=dynamic 的别名。

现在,您可以通过导航到ConfigurationConfigurationProfilefull-hahaModclusterProxydefault (ajp) ,然后单击View ,从管理控制台查看互斥资源。

更多信息,请参见Configuration Guide for JBoss EAP中的ModCluster Subsystem Attributes

从管理控制台配置SSL SNI上下文。

现在可以从管理控制台配置 SSL SNI 上下文,方法是导航到ConfigurationsSubsystemsSecurity (Elytron)Other Settings ,然后单击View 。单击SSLServer SSL SNI Context 添加、编辑或删除上下文。

更多信息,请参见JBoss EAP的How to Configure Server Security 指南中的配置SSL SNI Context

查看无进展业务

现在,管理控制台在发生非进度操作时显示通知。该通知可从Runtime 标签访问。

运行独立服务器时,导航到RuntimeMonitorManagement Operations ,然后点击ViewCancel Non Progressing Operations 按钮位于窗口的右上角,旁边是Reload 按钮。通知将列出任何非进展中的操作。

在托管域中,可通过导航到Runtime 标签访问此通知。在Browse By 一栏中,点击Management Operations

配置ModCluster代理

该版本引入了对modcluster 子系统的多服务器支持,可从控制台的Configuration 选项卡获取。Modcluster列现在的标题是Proxy ,并在/subsystem=modcluster/proxy=* 下列出代理服务器。

AddRemove 操作可以使代理管理更加方便,View 操作可以打开所选代理的配置选项。

更多信息,请参见Configuration Guide for JBoss EAP中的ModCluster System Attributes

从管理控制台重新初始化信任管理器

现在您可以从管理控制台重新初始化在 JBoss EAP 中配置的信任管理器,方法是导航到RuntimeMonitorSecurity (Elytron)SSL ,点击View ,然后选择Trust Manager 。更多信息,请参见How to Configure Server Security for JBoss EAP中的从管理控制台重新初始化一个信任管理器

从管理控制台配置JASPI认证

现在,您可以从管理控制台配置 JASPI 身份验证模块,方法是导航到ConfigurationSubsystemSecurity (Elytron)Other Settings ,然后单击View 。点击Other SettingsJASPI Configuration 来配置模块。

欲了解更多信息,请参见JBoss EAP的Security Architecture 指南中的安全管理

从管理控制台配置远程ActiveMQ服务器资源。

现在您可以从管理控制台配置以下远程ActiveMQ服务器资源。

  • 通用连接器
  • 在VM连接器中
  • HTTP连接器
  • 远程连接器
  • 发现集团
  • 连接工厂
  • 集合连接工厂
  • 外部JMS队列
  • 外部JMS主题

欲了解更多信息,请参见JBoss EAP的Configuring Messaging 指南中的Configure Remote ActiveMQ Server Resources Using the Management Console

从管理控制台查看服务器的Socket绑定名称和开放端口。

现在您可以从管理控制台查看服务器的套接字绑定名称和开放端口。当服务器处于以下状态时,这些信息就会显示出来。

  • running
  • reload-required
  • restart-required

欲了解更多信息,请参见Configuration Guide 中关于JBoss EAP的查看服务器的Socket Bindings和开放端口一节。

管理控制台支持的运行时操作

一些只能使用管理CLI执行的运行时操作现在也可以在管理控制台中使用。

更多信息,请参见JBoss EAP的Configuring Messaging 指南中的使用管理控制台的运行时操作

配置一个Let's Encrypt账户

现在您可以使用管理控制台配置Let's Encrypt账户。以下是可用的配置。

  • 创建一个证书机构的账户。
  • 停用证书颁发机构账户。
  • 更新账户。
  • 查看证书颁发机构账户信息。
  • 更改证书颁发机构账户密钥。

关于配置Let's Encrypt账户的信息,请参见JBoss EAP指南How to Configure Server Security 中的Configure a Let's Encrypt Account Using Management Console

使用管理控制台配置Keystore证书颁发机构。

现在,您可以使用管理控制台执行以下密钥存储证书授权配置。

  • 更改条目的别名。
  • 将证书从密钥存储条目导出到文件。
  • 生成证书签署请求。
  • 从钥匙库中删除一个别名。
  • 查看与别名相关联的证书的详细信息。
  • 撤销与别名相关的证书。
  • 确定证书是否到期需要更新。

有关密钥存储证书管理的信息,请参见JBoss EAP的How to Configure Server Security 指南中的Keystore Certificate Authority Operations Using the Management Console

使用管理控制台配置MicroProfile指标

现在你可以使用管理控制台配置MicroProfile指标。

管理控制台中可用的配置有: 1:

  • 启用或禁用公开指标。
  • 编辑前缀。
  • 启用或禁用安全功能。
  • 将非必填字段重置为初始值或默认值。

关于配置MicroProfile指标的信息,请参见Configuration Guide for JBoss EAP中的Configure MicroProfile Metrics using the Management Console部分。

在SSL向导中从Let's Encrypt CA获取证书。

现在你可以在SSL向导中从Let's Encrypt Certificate Authority获得证书。

有关信息请见以下链接:

自定义管理控制台标题的能力

现在,你可以自定义管理控制台的标题,使每个JBoss EAP实例都能一目了然。

要了解更多信息,请参见Configuration Guide for JBoss EAP中的自定义管理控制台标题

3.5. 网站服务器

控制台访问记录

增加了一个新功能,将访问日志数据输出到控制台。控制台访问日志数据作为JSON结构的单行数据写入stdout

欲了解更多信息,请参见Configuration Guide 中的 JBoss EAP配置服务器

对HttpServletRequest.getServletPath方法行为的修改。

HttpServletRequest.getServletPath方法在Undertow中的行为与在JBoss Web子系统中的行为不同。具体来说,在Undertow中,这个方法返回的是JSP名而不是动作名。

增加了一个属性,以配置HttpServletRequest.getServletPath方法的行为与JBoss Web子系统中的一样。

3.6. 伐木

格式化Syslog消息的能力

现在你可以使用管理控制台配置named-formatter 属性。

自定义日志过滤器

在JBoss EAP 7.2和更早的版本中,用户只能使用提供的日志过滤器。

在JBoss EAP 7.3中,用户可以实现自定义日志过滤器。

3.7. 部署

根据部署情况显示模块

现在您可以使用list-modules 管理操作,根据部署情况查看模块列表。

有关使用list-modules 管理操作的更多信息,请参见Development Guide 中的"按部署显示模块"部分。

3.8. EJB

支持消息驱动Bean的多个交付组

一个消息驱动的Bean(MDB)现在可以属于多个交付组。只有当一个MDB所属的所有交付组都处于活动状态时,才会启用消息交付。

欲了解更多信息,请参见JBoss EAP的Developing EJB Applications 指南中的交付组

客户端和服务器拦截器

JBoss EAP 7.2和更早的版本只支持在容器中配置的EJB拦截器。

在JBoss EAP 7.3中,现在支持客户端拦截器和服务器拦截器。客户端和服务器拦截器可以全局配置。

欲了解更多信息,请参见JBoss EAP的Developing EJB Applications 指南中的自定义拦截器

3.9. 聚类

在mod_cluster子系统中新增属性initial-load。

mod_cluster 子系统现在定义了一个新的属性,initial-load

initial-load 属性有助于逐步增加新加入节点的负载值,避免在加入集群时负载过重。

关于该属性的信息,请参见Configuration Guide 中的ModCluster Subsystem Attributes一节,以了解JBoss EAP。

确定主单人提供者的能力。

现在,您可以利用singleton 子系统为从特定单人策略创建的每个单人部署或服务公开的运行时资源来确定主单人提供者。

欲了解更多信息,请参见Development Guide for JBoss EAP中的使用CLI确定主要单点服务提供商

指定可分布式会话管理器调用的能力。

现在,您可以在META-INF/jboss-all.xml 配置文件中的<shared-session-config> 下添加<distributable/> 标签,指定在子部署之间共享会话时使用可分发会话管理器。

欲了解更多信息,请参见Development Guide for JBoss EAP中的Configuring Session Sharing between Subdeployments in Enterprise Archives

能够通知单人服务提供商新的主要提供商。

当选举出一个新的主单子服务提供者时,集群中每个注册SingletonElectionListener 的成员都会收到通知。

更多信息,请参见Development Guide for JBoss EAP中的HA Singleton Service Election Listener

可分布式网络会话配置的可分布式网络子系统。

JBoss EAP新的distributable-web 子系统为灵活的、可分发的Web会话配置提供了便利。该子系统取消了jboss-web.xml 中的<replication-config> 元素。

更多信息,请参见Development Guide 中的分布式网络会话配置的分布式网络子系统Migration Guide 中的 JBoss EAP 的Overiding Default Distributable Session Management Behavior

在远程红帽数据网格集群中存储会话数据的能力。

distributable-web 子系统可以被配置为使用 HotRod 协议在远程 Red Hat Data Grid Cluster 中存储 Web 会话数据。在远程集群中存储 Web 会话数据可以让缓存层独立于应用服务器进行扩展。

关于配置distributable-web 子系统的信息,请参见Development Guide for JBoss EAP 中的Storing Web Session Data In a Remote Red Hat Data Grid

能够指定排名的多路由会话亲和力。

现在您可以将会话亲和力指定为有序的节点列表。如果您的负载均衡器支持多个有序路由,在主节点发生故障时,它可以按照定义的顺序选择最佳节点。如果特定会话的主所有者不活动,它还可以确保一个明确的故障转移目标。

关于排名亲和力选项的信息,请参见Development Guide for JBoss EAP中的The distributable-web subsystem for Distributable Web Session Configurations。关于如何在负载平衡器中启用排名前的会话亲和性,请参见Configuration Guide for JBoss EAP中的Enabling Ranked Session Affinity in Your Load Balancer

3.10. Infinispan

启用远程缓存容器的统计功能

现在您可以使用HotRod客户端来公开远程缓存容器的统计数据。可以使用管理CLI为远程缓存容器配置statistics-enabled 属性。更多信息,请参见Configuration Guide for JBoss EAP中的Configuring Remote Cache Containers

3.11. 网络服务

RESTEasy可选<T>参数类型

RESTEasy现在支持以下java.util.Optional 参数作为包装对象类型。

  • @QueryParam
  • @MatrixParam
  • @FormParam
  • @HeaderParam
  • @CookieParam

更多信息,请参见Developing Web Services Applications book for JBoss EAP中的java.util.Optional Parameter Types。

在RESTEasy中支持HTTP代理

RESTEasy最初的实现并不包含对HTTP代理的支持。

在JBoss EAP 7.3中,可以使用JAX-RS API(Java API for RESTful Services)在客户端构建器上设置一个HTTP代理。

禁用客户供应商的处理

必须为 JAX-RS 容器运行时的每个实例注册使用@Provider 注解的客户机提供者。系统属性resteasy.client.providers.annotations.disabled 禁用了对使用@Provider 注解的客户机提供者的默认处理,以防止出现不希望的或重复的客户机提供者注册的问题。

欲了解更多信息,请参见JBoss EAP的Developing Web Services Applications 书中的@Provider类的Content Marshalling

3.12. 讯息传递

使用resourceAdapter元素为基于Artemis的远程经纪人配置JMS资源。

您可以使用@JMSConnectionFactoryDefinition 注释或@JMSDestinationDefinition 注释为远程的基于 Artemis 的 broker(如 Red Hat AMQ 7)配置 JMS 资源。resourceAdapter 元素定义了用于创建 JMS 资源的资源适配器。

欲了解更多信息,请参见JBoss EAP的Configuring Messaging 书中的JMS资源配置,用于基于远程Artemis的经纪人

配置消息服务器的全局资源使用情况

address-setting 元素中的三个新属性可以帮助你控制消息服务器的全局资源使用。更多信息,请参见 JBoss EAP 的Configuring Messaging 手册中的Configure Global Resource Usage for Messaging Servers

配置打开消息日志文件的超时值。

现在你可以使用journal-file-open-timeout 属性配置打开消息日志文件的超时值。

关于配置journal-file-open-timeout 属性的更多信息,请参见Configuring Messaging book for JBoss EAP中的Configuring Message Journal Attributes

Artemis记录编码的变化

Artemis核心协议的Artemis日志代码已经改变,而高级消息队列协议(AMQP)代码保持不变。如果您根据这些代码来监控问题,就会产生问题。

记录代码发生变化是因为AMQP和Artemis核心协议之间的代码重复。

省略目的地名称的前缀

您可以配置连接工厂或池化连接工厂在与远程Artemis服务器通信时省略目标名称前缀。当配置与非兼容模式的远程Artemis 2.x进行通信时,请使用此选项。

更多信息,请参见Configuring Messaging 书中的使用集成的Artemis资源适配器进行远程连接,步骤3,或配置Artemis资源适配器以连接到Red Hat AMQ,步骤4,JBoss EAP。

负载均衡器的消息传递增强

除了现有的对静态HTTP负载均衡器的支持外,现在还支持使用mod_cluster的负载均衡器。更多信息,请参见Configuring Messaging book for JBoss EAP中的Messaging Behind a Load Balancer

现在已完全支持向负载平衡器后面的群集发送消息。客户端与HTTP负载均衡器后面的集群通信时,必须重新使用初始连接,而不是使用集群拓扑。更多信息,请参见JBoss EAP的Configuring Messaging 书中关于负载均衡器后的消息传递的客户端配置

已处理的消息统计添加到Apache Artermis

Apache Artemis项目增加了以下统计数据。

  • 讯息处理
  • 信息中止/回滚

在JBoss EAP中,现在可以使用以下CLI命令来获取这些统计数据。

/subsystem=messaging-activemq/jms-bridge=bridge:read-attribute(name=message-count)
/subsystem=messaging-activemq/jms-bridge=bridge:read-attribute(name=aborted-message-count)

在独立的JMS客户端中使用Jroups的发现组

在独立的JMS客户端中使用JGroups的发现组是不适用的。

发现组只应与Netty UDP一起使用。

3.13. OpenShift

使用Galleon功能包减少内存占用。

现在,你可以自定义主JBoss EAP for OpenShift镜像配置,只包含你需要的功能,从而减少内存占用。配置工具Galleon提供了几个层,你可以选择这些层来控制JBoss EAP服务器中的功能。

此外,你还可以将定制的功能打包成Galleon功能包,在JBoss EAP服务器Galleon配置时安装。对于JBoss EAP for OpenShift Source-to-Image (S2I),你可以离线构建你的功能包,将它们部署到Maven,并在你的provisioning.xml 文件中引用它们。

用于在OpenShift上实现自动化应用部署的EAP操作员。

JBoss EAP现在提供了EAP operator,这是一个JBoss EAP专用控制器,可以自动完成常见的部署相关任务。您可以使用OpenShift集群管理员用来发现、安装和升级操作员的图形界面OperatorHub安装EAP操作员。

有关如何安装、卸载和使用 EAP 操作员在 OpenShift 上部署 Java 应用程序的信息,请参阅Getting Started with JBoss EAP for OpenShift Container Platform 书中的EAP Operator for Automating Application Deployment on OpenShift

安全交易恢复的EAP操作员和EJB远程控制。

EAP 操作员通过在缩减副本和将 pod 标记为clean 以进行终止之前验证所有事务已完成,从而确保应用程序集群中的安全事务恢复。

EAP操作员使用 StatefulSet用于适当处理EJB远程和事务恢复处理。StatefulSet ,即使在豆荚重新启动后,也能保证持久存储和网络主机名的保存。

有关使用 EAP 操作员安全恢复事务的信息,请参见EAP Operator for Safe Transaction Recovery。有关使用 EAP 操作员配置 EJB 远程的信息,请参见Getting Started with JBoss EAP for OpenShift Container Platform 书中的Configuring EJB on OpenShift

计算JVM内存设置

JBoss EAP 7.2及以前的版本没有解决JVM内存设置高于容器限制的情况。

OpenShift JBoss EAP镜像现在可以在定义了容器限制且JVM内存设置高于容器限制时计算默认的JVM内存设置。

更多信息,请参见Getting Started with JBoss EAP for OpenShift Container Platform 书中的JVM内存配置

安全工件存储库镜像网址

为了防止通过Maven仓库的"中间人"攻击,JBoss EAP要求工件仓库的镜像URL使用安全URL。

欲了解更多信息,请参阅Getting Started with JBoss EAP for OpenShift Container PlatformArtifact Repository Mirrors中的"安全 Artifact Repository Mirror URLs/"小节。

ASYM-ENCRYPT新版本

JBoss EAP 7.3包括新版本的ASYM_ENCRYPT 协议。以前版本的协议已经被废弃。如果你指定了JGROUPS_CLUSTER_PASSWORD 环境变量,就会使用被废弃的协议版本,并在pod日志中打印一个警告。

欲了解更多信息,请参见JBoss EAP指南Getting Started with JBoss EAP for OpenShift Container Platform 中的配置ASYM_ENCRYPT一节。

在IBM系统Z上支持JBoss EAP。

只有在IBM System Z基础架构上配置的OpenShift环境中,s390x平台才支持JBoss EAP。不支持在Z系统上独立安装的Red Hat Enterprise Linux上运行JBoss EAP。

3.14. 快速启动和BOMs

JAX-WS的新客户端BOM

JBoss EAP现在提供了一个新的客户端BOM,wildfly-jaxws-client-bom ,用于管理JAX-WS依赖关系。关于如何将wildfly-jaxws-client-bom 依赖关系添加到项目中的信息,请参见JBoss EAP客户端BOMs中的Development Guide for JBoss EAP。

雅加达EE 8的物料清单变更

由于在JBoss EAP 7.3中迁移到Jakarta EE 8平台,集团IDorg.jboss.bom 中的一些JBoss EAP BOM被替换。如果您的应用程序使用被替换的BOM,请在将应用程序迁移到JBoss EAP 7.3版本时,更新项目POM,使其包含新BOM的工件ID。

关于EAP BOM的变化,请参见Migration Guide for JBoss EAP中Jakarta EE 8的BOM变化

第 4 章 技术预览

重要

以下配置和功能仅作为技术预览版提供。技术预览版功能不受 Red Hat 生产服务水平协议 (SLA) 的支持,功能上可能不完整,Red Hat 不建议将其用于生产。这些功能提供了对即将到来的产品功能的早期访问,使客户能够在开发过程中测试功能并提供反馈。

关于技术预览功能的支持范围,请参见 Red Hat 客户门户上的技术预览功能支持范围。

使用管理控制台检查健康检查。

现在您可以使用管理控制台检查服务器的健康检查。该功能仅在JBoss EAP作为独立服务器运行时可用。

有关使用此功能的详细信息,请参见Configuration Guide使用管理控制台检查健康检查

使用管理界面添加和删除自定义模块。

在运行独立服务器时,您可以使用module 命令来添加和删除自定义模块。该命令不适合在托管域环境中使用,也不适合远程连接到管理CLI时使用。

关于创建自定义模块的更多信息,请参见Configuration Guide for JBoss EAP中的Create a Custom Module Using the Management CLI

支持MicroProfile Rest Client 1.3.2及以后的版本。

JBoss EAP现在支持MicroProfile Rest Client 1.3.2及以后的版本。关于MicroProfile Rest Client的信息,请参见JBoss EAP的Developing Web Services Applications 指南中的MicroProfile REST Client

如果你正在使用以前版本的MicroProfile REST客户端,你需要对你的代码进行一些更新。关于代码变化的更多信息,请看MicroProfile Rest客户端代码中需要的变化

4.1. 支持MicroProfile OpenTracing 1.3.0。

JBoss EAP现在支持MicroProfile OpenTracing 1.3.0。有关microprofile-opentracing-smallrye 子系统的信息,请参见配置指南中的MicroProfile OpenTracing SmallRye子系统跟踪请求

4.2. 支持MicroProfile Metrics 2.0.1。

JBoss EAP现在支持MicroProfile Metrics 2.0.1。有关microprofile-metrics-smallrye 子系统的信息,请参见配置指南中的Eclipse MicroProfile Metrics

第 5 章 不支持和过时的功能

5.1. 不支持的功能

由于维护成本高,社区兴趣低,以及更好的替代解决方案,一些技术的支持被取消。

此处所述内容不构成具有约束力的协议,也不对红帽公司施加任何法律义务。此信息仅用于讨论目的,可能会发生变化。

数据库和数据库连接器

Red Hat Customer Portal上的Red HatJBoss Enterprise Application Platform (EAP) 7 Supported Configurations知识库文章列出了作为JBoss EAP 7.3版本一部分测试的数据库和数据库连接器。

使用没有经过JBoss EAP 7.3版本测试的数据库和数据库连接器可能会导致JBoss EAP 7.3实例出现问题。

OpenShift JDK 11的内部数据源和驱动程序图像

Red Hat Customer Portal上的Red HatJBoss Enterprise Application Platform (EAP) 7 Supported Configurations知识库文章列出了作为JBoss EAP 7.3版本一部分测试的OpenShift JDK 11镜像的数据库和数据库连接器。

为了使JBoss EAP应用获得最佳性能,请使用从数据库供应商处获得的JDBC驱动程序。

补充资源

Eclipse MicroProfile功能

以下Eclipse MicroProfile功能作为技术预览版包含在JBoss EAP 7.3 CD版本和JBoss EAP 7.3 beta版本中,现在已经不可用了。

  • 微观剖析-小鱼儿健康网
  • 微观剖析-小鱼儿玄机2站网
  • 微配置文件-小鱼儿玄机2站配置。
  • 微观剖面-小鱼儿玄机2站网。

我们计划在未来的版本中通过扩展机制提供对Eclipse MicroProfile API的JBoss EAP支持。

5.2. 废弃的功能

有些功能在这个版本中已经被废弃了,这意味着不会对这些功能进行增强,它们可能会在将来被移除,通常是在下一个主要版本中。这意味着不会对这些功能进行增强,它们可能会在未来,通常是下一个主要版本中被移除。

红帽将继续根据我们的标准支持条款和条件提供全面支持和错误修复。有关红帽支持政策的更多信息,请参阅位于红帽客户门户上的红帽JBoss中间件产品更新和支持政策

关于哪些功能已被废弃,请参见位于 Red Hat Customer Portal 上的JBoss Enterprise Application Platform Component Details

5.2.1. 平台和功能

以下平台和功能的支持已被取消。

  • Windows Server 2012 R2和相关的IIS Web服务器。
  • 使用Red Hat JBoss Operations Network (JON)来管理JBoss EAP的做法已被废弃。

    在JBoss EAP 7.2版本中,使用Red Hat JBoss Operations Network(JON)来管理JBoss EAP的做法已被废弃。在JBoss EAP 7.3版本中,它仍然被废弃。

    最新的JON插件更新已经接受了JBoss EAP 7.3的有限测试和错误修复,这与JON生命周期的迁移支持阶段提供的有限支持一致。在此生命周期阶段,为生产型JBoss EAP和其他红帽中间件工作负载提供了关键的JON修复,但插件并没有针对新的JBoss EAP功能进行更新。新功能可能无法通过插件使用,或者可能会带来不兼容。

    JON 3.3要求用户安装JON EAP管理插件包更新11或更新版本,以兼容JBoss EAP 7.3。

Java APIs
  • SAAJ 1.3已被废弃,JBoss EAP 7.3中默认使用SAAJ 1.4。

    默认SAAJ版本的改变可能会导致用户定义的SOAP处理程序从以前的版本迁移到JBoss EAP 7.3时出现问题。为了解决因SAAJ版本而产生的问题,请将系统属性-Djboss.saaj.api.version=1.3 设置为使用废弃的API。

RHEL 6 AMI镜像

Red Hat Enterprise Linux 6 版 AMI 映像已被废弃。这意味着,虽然 RHEL 6 AMI 映像仍被包含和支持,但不会对这些功能进行任何增强,而且它们可能在未来被移除。Red Hat 将继续根据我们的标准支持条款和条件提供全面支持和错误修复。

注意

Red Hat Enterprise Linux第6版目前计划在2020年11月30日达到其"维护支持结束或维护支持2(产品退役)"阶段。

OpenShift自动事务恢复能力

作为技术预览版提供的自动交易恢复功能已被废弃。

支持的替代方案是使用EAP操作员安全地从交易中恢复。

对以下自动事务恢复技术预览构件的支持也已被取消。

  • 交易恢复应用程序模板

    • eap73-tx-recovery-s2i
    • eap73-openjdk11-tx-recovery-s2i
  • jta-crash-rec-eap7 OpenShift的快速入门

第 6 章 已解决的问题

请参阅JBoss EAP 7.3的已解决问题,查看该版本已解决的问题列表。

第 7 章 固定的CVEs

  • CVE-2018-7489jackson-databind :CVE-2017-7525的不完全修复允许通过c3p0库进行不安全的序列化。
  • CVE-2018-1000632:dom4j: XML Injection in Class:Element.Methods: addElement, addAttribute,可以影响XML文档的完整性。方法:addElement、addAttribute,可影响XML文档的完整性。
  • CVE-2019-9511undertow :HTTP/2:大量数据请求导致拒绝服务。
  • CVE-2019-9512undertow :HTTP/2:使用PING帧的洪水导致内存无限制增长
  • CVE-2019-9514undertow :HTTP/2:使用HEADERS帧的泛滥导致内存无限制的增长
  • CVE-2019-9515:undertow: HTTP/2: flood using SETTINGS frames results in unbounded memory growth.
  • CVE-2019-10219hibernate-validator :safeHTML验证器允许XSS存在
  • CVE-2019-19343:undertow: Undertow HttpOpenListener中的内存泄漏,由于无限期地保持远程连接。
  • CVE-2019-14838:wildfly-core: 'Monitor'、'Auditor'和'Deployer'用户的默认权限不正确。
  • CVE-2019-14885:JBoss EAP: Vault系统属性安全属性值在CLI'reload'命令中被泄露
  • CVE-2019-16869netty :HTTP头文件中冒号前的空格处理不当导致HTTP请求被走私
  • CVE-2019-16942jackson-databind :commons-dbcp包类中的序列化小工具。
  • CVE-2019-16943jackson-databind :commons-dbcp包类中的序列化小工具。

第 8 章 已知问题

参见JBoss EAP 7.3的已知问题,查看该版本的已知问题列表。

此外,还要注意以下几点:

  • wildfly-core-eap 中定义的有多个参数的消息中,日语和中文的参数顺序可能不正确。

    计划在JBoss EAP 7.3.1中修复这个问题。

    例如:

    Original English text:

    无法启动应用程序客户端<参数1>,因为在主类上没有找到主方法<参数2>。

    Current (incorrect) Japanese translation:

    メインクラス <参数1> main メソッドが見つからなかっため、アプリケーションクライアント <参数2> を起動できませんでした。

    Correct Japanese translation:

    メインクラス <参数2> main メソッドが見つからなかっため、アプリケーションクライアント <参数1> を起動できませんでした。





Revised on 2021-03-31 13:26:02 1000