standalone.xml 是 JBoss/WildFly 独立模式的核心 XML 配置文件,以分层嵌套的 subsystem 模型组织服务,根元素为 ,包含 、、、 和 等关键部分。

JBoss(现为 WildFly)的 standalone.xml 是独立模式下核心配置文件,采用标准 XML 格式,以模块化方式组织各类服务与子系统。它的结构不是扁平列表,而是分层嵌套的“子系统(subsystem)”模型,每个子系统负责一类功能(如数据源、Web、安全等),由统一的 根元素包裹。
根结构:server 与 profiles(仅 standalone 模式下无 profile 切换)
standalone.xml 的顶层是 元素,包含 name 属性(如 name="default-server")和一个 列表(声明加载哪些模块,如 org.jboss.as.clustering.infinispan)。注意:standalone 模式不使用 (那是 domain.xml 的概念),所有配置直接在 同级的 和 后紧接 。
关键子系统(subsystem)及其典型位置
所有功能配置都放在 容器内,按逻辑分组。常见子系统包括:
- core-management:管理接口(HTTP/HTTPS 管理端口、安全 Realm)、运行时指标采集
- undertow:Web 容器配置(servlet 容器、HTTP 监听器、host、location、filter 链)
-
datasources:通过
或定义 JDBC 连接池 -
security:定义 security-domain(如
other、jboss-web-policy),关联登录模块(LdapLoginModule、DatabaseLoginModule 等) - logging:日志层级、处理器(console、file、periodic-rotating-file)、日志格式与过滤规则
- ejb3:EJB 超时、池大小、集群行为、异步执行配置
-
infinispan:缓存容器、命名缓存(如
web、hibernate)、缓存模式(local/invalidation/replicated)
常用顶层配置段(不在 subsystem 内)
除子系统外,还有几个平行配置块,位于 上方或同级:
技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
-
:定义管理接口地址、端口、SSL 设置、访问控制( ) -
:设置 JVM 级系统属性(如 java.net.preferIPv4Stack=true),可在配置中用${property.name}引用 -
:集中定义端口绑定(如 http=8080、https=8443、ajp=8009),各 subsystem 通过socket-binding属性引用 -
(可选):内嵌部署(不推荐用于生产,仅测试用途),实际部署建议用 CLI 或 web 控制台
配置生效与验证要点
修改 standalone.xml 后需重启服务器才生效(热部署不适用于此文件)。建议操作前备份原文件;编辑时注意 XML 格式合法(闭合标签、正确缩进);避免手动修改生成的 UUID 或自动生成的 security realm 密码哈希值。可通过 CLI 执行 /subsystem=logging:read-resource 等命令验证配置是否被正确加载。
基本上就这些。结构清晰、职责分离,改哪块功能就找对应 subsystem,配合 socket-binding-group 统一管端口,整体可读性和维护性较好。









