发版说明
# 金蝶Apusic应用服务器概述
金蝶Apusic应用服务器(Apusic Application Server)是一款标准、安全、高效、集成并具丰富功能的企业级应用服务器软件,全面支持JakartaEE8/9/9.1/10的技术规范,提供满足该规范的Web容器、EJB容器以及WebService容器等,支持Websocket、Servlet、HTTP等最新的技术规范,为企业级应用的便捷开发、灵活部署、可靠运行、高效管控以及快速集成等提供关键支撑。
# 关于此版本
本次版本名称为"金蝶Apusic应用服务器V10 SP9",简称“AAS-V10 SP9”。
# 新功能及特性增强
# 应用回收站
支持应用回收站功能。当应用卸载后,支持移动至应用回收站中,可对回收站中的应用文件进行还原,减少因误操作带来的影响。
# 应用备份与恢复
支持应用备份,可对备份的应用文件进行恢复部署,减少因误操作给应用带来的影响。
# 应用文件防篡改机制
应用文件支持配置防篡改策略,受防篡改功能保护的文件被新的文件覆盖时,能够及时发现并被恢复,加强应用安全性。
# 支持TLS1.3协议
支持TLS1.3协议进行安全加密通讯,增加安全性。
# 基于访问时间控制客户端访问
基于访问时间控制客户端访问,加强访问控制策略。
# 兼容JDK21,支持虚拟线程
兼容JDK9-JDK21运行;支持虚拟线程,提高并发度,减少编写、维护和观察高吞吐量并发应用程序的工作量。
# 管控平台显示授权文件信息
兼容KBC授权,管控平台显示授权文件信息,支持命令行输出license信息,方便获取授权文件内容。
# 链路跟踪插件兼容
提供Skywalking、pinpoint链路跟踪插件,增强适配性。
# 开发工具插件升级
升级eclipse插件、idea插件,兼容新版本。eclipse插件兼容至Eclipse IDE V2024-12;Idea插件兼容IntelliJ IDEA Ultimate 2022.3 — 2024.1.7。
# 浏览器关闭后自动结束管控台登录会话
浏览器关闭后自动结束管控台登录会话,加强会话安全性。
# 在JSP中使用自定义的JSTL标签时,支持重复定义相同属性
在JSP中使用自定义的JSTL标签时,支持重复定义相同属性,增强JSP兼容性。
# ear应用支持多个文件夹分隔不同的jar依赖
支持ear应用加载应用根目录及一级目录下面的类库,提高可维护性,避免类冲突,有助于模块化开发。
# 管控平台与第三方应用实现单点登录功能
应用服务器通过环境变量或者JVM参数启用SSO功能,可与第三方应用实现单点登录功能。
# 多线程部署
部署应用时如果选择了多个目标,第一个目标部署后其他目标采用多线程进行部署,提高系统性能、资源利用率以及响应能力。
# 图形监控会话信息
图形监控增加会话监控,方便查看session信息。
# apusic-web.xml优化
支持设置webservice引擎开关;
支持配置全局apusic-web.xml;
支持通过apusic-web.xml设置jar的优先加载方式。
# 兼容was8.5特性
兼容was8.5,打开webservice通过配置文件生成类,重写已存在类开关;
JAXRPC类型的webservice请求当远程接口不是java.rmi.Remote的子类,通过代理自动补上;
StandardContext#getRequestDispatcher(String path)要求必须斜线开头的路径否则直接报错 变更为遇到不是斜线开头的路径自动补全。
# 其他特性变更
管控支持开启和关闭JMX,默认禁用,开启和关闭需要重启。
设置安全协议配置默认启用TLS1.2。
iiop默认只监听127.0.0.1地址,避免安全扫描到iiop安全问题。
支持动态添加Filter、Servlet以及Listener。
兼容海量数据库。
实例不再部署未启用的应用,减少打开文件数和占用内存。
新增命令行管理用户和角色功能。
支持BIO和NIO2支持。
参数解析%出现异常的问题,转码出错旧版本会忽略参数,新版本为不忽略参数,只是提示警告信息。
优化补丁说明格式。
支持通过添加文件 ${com.apusic.aas.instanceRoot}/config/ignoreJars 进行jar的注解扫描跳过(多个需要换行),加快部署的速度。
支持通过设置jvm参数 -Dcom.apusic.lookupFromJars.disabled=true 关闭jar包的META-INF/resources目录资源扫描。
支持配置静态资源文件缓存大小,属性为com.apusic.loadedresource.cache.size(int类型,默认-1,表示缓存所有非class对象)。
指定ServletContainerInitializer的加载顺序和配置是否加载。
修改derby数据库默认密码。
规范产品版本号命名,通过属性文件设置版本信,增加对node-manager的签名生成。
支持jvm参数 -Dapusic.command.password.disabled 设置命令行密码校验开关。
支持OTP方式的双因子认证。
允许管控设置uri路径含有+号。
增加配置多次查找不到类时才抛出ClassNotFoundException,可通过-Dapusic.servlet.class.loader.not.found.cache.threshold=5指定次数,默认0。
默认关闭JMS服务和IIOP服务。
屏蔽管控台初始化导致的MBean重复注册异常日志。
允许通过WebappClassLoader加载包名为org.apache.catalina的过滤器。
默认关闭部署时进行XML验证。
支持强制压缩功能,不管是否传了支持压缩的头信息过来,都进行压缩,可用于性能测试场景。
# 弃用和删除的功能
# 已弃用的功能
限流配置模块
# 删除的功能
无
# 程序缺陷修复
修复eba应用监控异常。
解决任意文件删除问题。
屏蔽asm解析class出错异常。
应用日志下载功能问题修复。
修复日志文件压缩文件异常的问题。
修复derby数据库url引发的反序列化攻击问题。
修复websocket连接传入请求头Sec-WebSocket-Protocol: v12.stomp, v11.stomp, v10.stomp 服务器没有返回选择的协议Sec-WebSocket-Protocol导致连接关闭的问题。
修复管控页面数据库连接池SQL执行引发的安全问题,默认禁用SQL语句的执行,可通过设置JVM参数-Dsql.exec.disabled=false启用SQL语句执行功能。
修复环境变量中设置了JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8后由于第一行未输出jdk的版本信息,导致读取不到jdk版本的问题。
修改Apusic BC 实现,RSA 默认 Padding 方式为 PKCS1 与 JDK RSA 实现对齐,避免启用国密时影响应用程序。
解决解决国密和非国密同时运行时, 获取不到证书问题,当使用非国密协议时,排除国密证书。
修复应用服务器源码泄露问题。
修复当与RemoteIpValve共用时会出现TyrusHttpUpgradeHandler重复注册异常问题。
修复IE浏览器sendRedirect乱码问题。
修复appserver-cli进程长期存在导致内存中日志字符串过长问题。
InvocationManager中InvocationArray大小为0时不抛出异常。
修复部署路径不能带有El表达式异常的问题。
修复开启了SSO功能,同一个实例上的应用共享session,重启了带认证的应用后会导致session全部失效影响其他应用问题。
修复ejb部署共享库空指针问题。
修复通过web.xml限制资源访问时国际化资源为空时的空指针问题。
修复最大历史日志文件删除功能异常问题。
修复CORS过滤器加载失败问题。
修复管控jmx url设置为空时空指针问题。
修复国际化没有显示英文的问题。
修复windows环境下设置-Djava.library.path失效的问题。
解决长线程开关异常问题。
修复访问jar静态资源异常问题。
修复命令行免密配置异常问题。
修复请求路径中#号后的字符串。
修复管控输入框限制太短的问题。
修复web.xml文件信息泄露的问题。
修复管控修改agent端口异常问题。
# 已知的问题
无