This is an automated email from the ASF dual-hosted git repository.

jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git


The following commit(s) were added to refs/heads/master by this push:
     new c044f1864e SonarQube bug fixes
c044f1864e is described below

commit c044f1864e2463f299473ae7dab73213f7da6a1e
Author: James Bognar <[email protected]>
AuthorDate: Thu Feb 5 12:59:01 2026 -0500

    SonarQube bug fixes
---
 SONARQUBE_CLEANUP_STATUS.md                        | 164 +++++++++++++++++++++
 .../apache/juneau/commons/collections/HashKey.java |   8 +-
 .../juneau/commons/inject/BasicBeanStore2.java     |  20 ++-
 .../juneau/commons/reflect/ReflectionMap.java      |  70 ++++++---
 .../main/java/org/apache/juneau/config/Config.java |  32 ++--
 .../org/apache/juneau/config/store/FileStore.java  |  11 +-
 .../java/org/apache/juneau/jena/RdfParser.java     |  20 ++-
 .../java/org/apache/juneau/jena/RdfSerializer.java |  35 +++--
 .../main/java/org/apache/juneau/BeanContext.java   |  71 ++++++---
 .../java/org/apache/juneau/BeanContextable.java    |   5 +-
 .../src/main/java/org/apache/juneau/BeanMeta.java  |   8 +-
 .../java/org/apache/juneau/BeanPropertyMeta.java   |  17 ++-
 .../java/org/apache/juneau/BeanPropertyValue.java  |  11 +-
 .../main/java/org/apache/juneau/BeanSession.java   |  11 +-
 .../org/apache/juneau/BeanTraverseContext.java     |  14 +-
 .../org/apache/juneau/BeanTraverseSession.java     |   8 +-
 .../src/main/java/org/apache/juneau/Context.java   |   8 +-
 .../java/org/apache/juneau/ContextSession.java     |   5 +-
 .../main/java/org/apache/juneau/UriContext.java    |  35 +++--
 .../java/org/apache/juneau/cp/BasicBeanStore.java  |  28 +++-
 .../java/org/apache/juneau/cp/BasicFileFinder.java |  20 ++-
 .../org/apache/juneau/html/HtmlDocSerializer.java  |  41 ++++--
 .../juneau/html/HtmlDocSerializerSession.java      |   8 +-
 .../apache/juneau/html/HtmlSchemaSerializer.java   |   5 +-
 .../org/apache/juneau/html/HtmlSerializer.java     |  20 ++-
 .../apache/juneau/json/JsonSchemaSerializer.java   |   5 +-
 .../org/apache/juneau/json/JsonSerializer.java     |  11 +-
 .../juneau/jsonschema/JsonSchemaGenerator.java     |  30 ++--
 .../apache/juneau/msgpack/MsgPackSerializer.java   |   5 +-
 .../apache/juneau/parser/InputStreamParser.java    |   5 +-
 .../main/java/org/apache/juneau/parser/Parser.java |  20 ++-
 .../org/apache/juneau/parser/ParserSession.java    |  11 +-
 .../org/apache/juneau/parser/ReaderParser.java     |   8 +-
 .../apache/juneau/parser/ReaderParserSession.java  |   8 +-
 .../juneau/serializer/OutputStreamSerializer.java  |   5 +-
 .../org/apache/juneau/serializer/Serializer.java   |  38 +++--
 .../juneau/serializer/SerializerSession.java       |   5 +-
 .../apache/juneau/serializer/WriterSerializer.java |  17 ++-
 .../juneau/serializer/WriterSerializerSession.java |  11 +-
 .../org/apache/juneau/soap/SoapXmlSerializer.java  |   5 +-
 .../org/apache/juneau/svl/VarResolverSession.java  |  11 +-
 .../main/java/org/apache/juneau/uon/UonParser.java |   8 +-
 .../org/apache/juneau/uon/UonParserSession.java    |   5 +-
 .../java/org/apache/juneau/uon/UonSerializer.java  |  11 +-
 .../juneau/urlencoding/UrlEncodingParser.java      |   5 +-
 .../juneau/urlencoding/UrlEncodingSerializer.java  |   5 +-
 .../java/org/apache/juneau/utils/BeanDiff.java     |   8 +-
 .../main/java/org/apache/juneau/xml/XmlParser.java |  17 ++-
 .../java/org/apache/juneau/xml/XmlSerializer.java  |  20 ++-
 .../apache/juneau/examples/bean/BeanExample.java   |  10 +-
 .../apache/juneau/examples/bean/atom/AtomFeed.java |  10 +-
 .../juneau/examples/rest/dto/AtomFeedResource.java |  10 +-
 .../org/apache/juneau/rest/client/RestClient.java  |  32 ++--
 .../org/apache/juneau/rest/client/RestRequest.java |  17 ++-
 .../apache/juneau/rest/mock/MockPathResolver.java  |  20 ++-
 .../java/org/apache/juneau/rest/RestContext.java   |  67 ++++++---
 .../java/org/apache/juneau/rest/RestOpContext.java |  14 +-
 .../java/org/apache/juneau/rest/RestOpSession.java |   8 +-
 .../java/org/apache/juneau/rest/RestSession.java   |   8 +-
 .../apache/juneau/rest/debug/DebugEnablement.java  |  11 +-
 .../org/apache/juneau/rest/logger/CallLogger.java  |  26 +++-
 .../apache/juneau/rest/logger/CallLoggerRule.java  |  29 ++--
 .../juneau/rest/staticfile/BasicStaticFiles.java   |   5 +-
 .../apache/juneau/rest/stats/MethodExecStats.java  |  32 ++--
 .../org/apache/juneau/rest/stats/ThrownStats.java  |  29 ++--
 .../java/org/apache/juneau/rest/util/UrlPath.java  |   8 +-
 .../org/apache/juneau/rest/util/UrlPathMatch.java  |   8 +-
 67 files changed, 957 insertions(+), 336 deletions(-)

diff --git a/SONARQUBE_CLEANUP_STATUS.md b/SONARQUBE_CLEANUP_STATUS.md
new file mode 100644
index 0000000000..ca771f3cf6
--- /dev/null
+++ b/SONARQUBE_CLEANUP_STATUS.md
@@ -0,0 +1,164 @@
+# SonarQube Duplicated String Literals Cleanup - Status Report
+
+## Summary
+This document tracks the status of fixing SonarQube `java:S1192` (duplicated 
string literals) issues.
+
+## Completed Work ✅
+
+### 1. HTML Tag Names
+- ✅ **HtmlParserSession.java**: Added `HTMLTAG_array` and `HTMLTAG_object` 
constants
+- ✅ **BasicHtmlDocTemplate.java**: Suppressed with 
`@SuppressWarnings("java:S1192")` (reverted constants)
+- ✅ **HtmlSerializerSession.java**: Added `HTMLTAG_style` and `HTMLTAG_table` 
constants
+
+### 2. Error Messages
+- ✅ **ParserReader.java**: Added `MSG_bufferUnderflow` constant
+- ✅ **BeanPropertyMeta.java**: Added `MSG_getterOrFieldNotDefined` constant
+- ✅ **FluentResponseBodyAssertion.java**: Added `MSG_exceptionDuringCall` 
constant
+- ✅ **FluentRequestContentAssertion.java**: Added `MSG_exceptionDuringCall` 
constant
+- ✅ **RestServlet.java**: Added `MSG_servletInitError` constant
+
+### 3. CSS Class Names / UI Files
+- ✅ **OpenApiUI.java**: Suppressed with `@SuppressWarnings("java:S1192")` 
(reverted constants)
+- ✅ **SwaggerUI.java**: Suppressed with `@SuppressWarnings("java:S1192")` 
(reverted constants)
+
+### 4. Script Files
+- ✅ **release.py**: Added Python constants (`POM_XML`, `STAGING_DIR`, 
`SVN_DIST_URL`, `RC_PATTERN`)
+
+### 5. HTTP Method Names
+- ✅ **RestClient.java**: Replaced `"PATCH"` with `HttpMethod.PATCH` constant
+
+### 6. Console Commands / Message Bundle Keys
+- ✅ **ConfigCommand.java**: Added `MKEY_*` constants for all message bundle 
keys:
+  - `MKEY_invalidArguments`
+  - `MKEY_tooManyArguments`
+  - `MKEY_keyNotFound`
+  - `MKEY_configSet`
+  - `MKEY_configRemove`
+  - `MKEY_description`
+  - `MKEY_info`
+
+### 7. Character Encoding
+- ✅ **StringUtils.java**: Replaced `"UTF-8"` with `UTF_8.name()` from 
`StandardCharsets`
+
+---
+
+## Remaining Work 🔲
+
+### Category 1: Bean Property Names (OpenAPI v3 / Swagger v2)
+These are property names used in JSON/API schema definitions. Should use 
`PROP_*` constants.
+
+**OpenAPI v3:**
+- 🔲 **Example.java**: `"description"` (3 times) - line 117
+- 🔲 **ExternalDocumentation.java**: `"description"` (3 times) - line 100
+- 🔲 **ServerVariable.java**: `"default"` (3 times) - line 147, `"description"` 
(3 times) - line 148
+- 🔲 **Tag.java**: `"description"` (3 times) - line 114
+
+**Swagger v2:**
+- 🔲 **ExternalDocumentation.java**: `"description"` (3 times) - line 111
+- 🔲 **Info.java**: `"description"` (3 times) - line 142
+- 🔲 **Tag.java**: `"description"` (3 times) - line 113
+
+**Action**: Add `PROP_description` and `PROP_default` constants and replace 
string literals.
+
+### Category 2: Reflection / Property Names
+These are property names used in reflection/metadata operations.
+
+- 🔲 **ReflectionMap.java**: 
+  - `"fullClassName"` (3 times) - line 363
+  - `"simpleClassName"` (3 times) - line 364
+  - `"value"` (4 times) - line 323
+
+- 🔲 **AppliedAnnotationObject.java**: 
+  - `"value"` (20 times) - line 217
+  - **Note**: This is very common in Java annotations. Consider suppressing at 
class level.
+
+- 🔲 **BeanCreator2.java**: 
+  - `"names"` (4 times) - line 580
+  - `"Using fallback supplier"` (4 times) - line 1223
+
+**Action**: Create appropriate constants (e.g., `PROP_fullClassName`, 
`PROP_simpleClassName`, `PROP_value`, `MSG_usingFallbackSupplier`).
+
+### Category 3: JSON Schema / Context Property Names
+- 🔲 **Context.java**: `"values"` (3 times) - line 313
+- 🔲 **JsonSchemaGenerator.java**: `"values"` (3 times) - line 161
+- 🔲 **RestOpContext.java**: `"values"` (4 times) - line 391
+- 🔲 **RestContext.java**: `"values"` (7 times) - line 867
+
+**Action**: Create `PROP_values` constant and replace string literals.
+
+### Category 4: Example / Test Data
+- 🔲 **BeanExample.java**: `"http://foo.org/"` (3 times) - line 112
+- 🔲 **AtomFeed.java**: `"http://foo.org/"` (3 times) - line 42
+- 🔲 **AtomFeedResource.java**: `"http://foo.org/"` (3 times) - line 91
+
+**Action**: Create `EXAMPLE_URL` or `TEST_URL` constant. These are 
example/test data, so suppression might be acceptable.
+
+### Category 5: Assertion / Messages
+- 🔲 **AssertionPredicate.java**: `"Messages"` (4 times) - line 75
+
+**Action**: Create `MKEY_Messages` or `BUNDLE_Messages` constant.
+
+### Category 6: HttpPartSchema.java (High Priority)
+- 🔲 **HttpPartSchema.java**: Multiple property name literals still in use
+  - Missing `PROP_uniqueItems` constant
+  - String literals in `addIf()` calls (lines ~3758-3843)
+  - String literals in validation code (lines ~4202-4221)
+
+**Action**: 
+1. Add `PROP_uniqueItems` constant
+2. Replace all string literals with existing `PROP_*` constants
+
+---
+
+## Naming Conventions Used
+
+- **HTML tag names**: `HTMLTAG_x`
+- **Error messages**: `MSG_x`
+- **CSS class names**: Suppressed (reverted)
+- **Script files**: Descriptive names (e.g., `POM_XML`, `STAGING_DIR`)
+- **HTTP method names**: Use existing `HttpMethod.*` constants
+- **Console commands / Message bundle keys**: `MKEY_x`
+- **Character encoding**: Use `StandardCharsets.*.name()`
+- **Bean property names**: `PROP_x` (to be used for remaining issues)
+
+---
+
+## Recommendations
+
+1. **High Priority**: Fix HttpPartSchema.java - constants exist but aren't 
used everywhere
+2. **Medium Priority**: Fix bean property names in Example.java, 
ExternalDocumentation.java, etc.
+3. **Low Priority**: Consider suppressing `"value"` in 
AppliedAnnotationObject.java (very common in annotations)
+4. **Low Priority**: Example/test data URLs - consider suppressing or using 
test constants
+
+---
+
+## Files Modified
+
+### Java Files
+- 
`juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserSession.java`
+- 
`juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/BasicHtmlDocTemplate.java`
 (suppressed)
+- 
`juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerSession.java`
+- 
`juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserReader.java`
+- 
`juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java`
+- 
`juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/assertion/FluentResponseBodyAssertion.java`
+- 
`juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/assertions/FluentRequestContentAssertion.java`
+- 
`juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/servlet/RestServlet.java`
+- 
`juneau-bean/juneau-bean-openapi-v3/src/main/java/org/apache/juneau/bean/openapi3/ui/OpenApiUI.java`
 (suppressed)
+- 
`juneau-bean/juneau-bean-swagger-v2/src/main/java/org/apache/juneau/bean/swagger/ui/SwaggerUI.java`
 (suppressed)
+- 
`juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java`
+- 
`juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ConfigCommand.java`
+- 
`juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/utils/StringUtils.java`
+
+### Python Files
+- `scripts/release.py`
+
+---
+
+## Next Steps
+
+1. Review and fix HttpPartSchema.java (highest priority)
+2. Fix remaining bean property names (Example.java, 
ExternalDocumentation.java, etc.)
+3. Fix reflection property names (ReflectionMap.java, BeanCreator2.java)
+4. Consider suppressing AppliedAnnotationObject.java for `"value"` literal
+5. Fix remaining JSON schema property names (`"values"` in various files)
+6. Address example/test data URLs (low priority)
diff --git 
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/collections/HashKey.java
 
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/collections/HashKey.java
index 0f6d5a8804..d32aabef80 100644
--- 
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/collections/HashKey.java
+++ 
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/collections/HashKey.java
@@ -90,6 +90,10 @@ import java.util.*;
  */
 public class HashKey {
 
+       // Property name constants
+       private static final String PROP_array = "array";
+       private static final String PROP_hashCode = "hashCode";
+
        /**
         * Creates a new hash key from the specified values.
         *
@@ -177,8 +181,8 @@ public class HashKey {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("hashCode", hashCode())
-                       .a("array", array);
+                       .a(PROP_hashCode, hashCode())
+                       .a(PROP_array, array);
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/inject/BasicBeanStore2.java
 
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/inject/BasicBeanStore2.java
index ea47f0260b..4ba7f99c72 100644
--- 
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/inject/BasicBeanStore2.java
+++ 
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/inject/BasicBeanStore2.java
@@ -47,6 +47,14 @@ import org.apache.juneau.commons.collections.*;
  */
 public class BasicBeanStore2 implements WritableBeanStore {
 
+       // Property name constants
+       private static final String PROP_bean = "bean";
+       private static final String PROP_entries = "entries";
+       private static final String PROP_identity = "identity";
+       private static final String PROP_name = "name";
+       private static final String PROP_parent = "parent";
+       private static final String PROP_type = "type";
+
        private final ConcurrentHashMap<Class<?>, ConcurrentHashMap<String, 
Supplier<?>>> entries;
        private final BeanStore parent;
 
@@ -317,13 +325,13 @@ public class BasicBeanStore2 implements WritableBeanStore 
{
                // @formatter:off
                var entryList = list();
                entries.forEach((type, typeMap) -> typeMap.forEach((name, 
supplier) -> entryList.add(filteredBeanPropertyMap()
-                       .a("type", cns(type))
-                       .a("bean", id(supplier.get()))
-                       .a("name", name))));
+                       .a(PROP_type, cns(type))
+                       .a(PROP_bean, id(supplier.get()))
+                       .a(PROP_name, name))));
                return filteredBeanPropertyMap()
-                       .a("entries", entryList)
-                       .a("identity", id(this))
-                       .a("parent", parent instanceof BasicBeanStore2 parent2 
? parent2.properties() : s(parent));
+                       .a(PROP_entries, entryList)
+                       .a(PROP_identity, id(this))
+                       .a(PROP_parent, parent instanceof BasicBeanStore2 
parent2 ? parent2.properties() : s(parent));
                // @formatter:on
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/reflect/ReflectionMap.java
 
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/reflect/ReflectionMap.java
index c92dc609cb..80be176f83 100644
--- 
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/reflect/ReflectionMap.java
+++ 
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/reflect/ReflectionMap.java
@@ -182,6 +182,12 @@ import org.apache.juneau.commons.utils.*;
  */
 public class ReflectionMap<V> {
 
+       // Property name constants
+       private static final String PROP_classEntries = "classEntries";
+       private static final String PROP_constructorEntries = 
"constructorEntries";
+       private static final String PROP_fieldEntries = "fieldEntries";
+       private static final String PROP_methodEntries = "methodEntries";
+
        /**
         * Builder for creating {@link ReflectionMap} instances.
         *
@@ -299,6 +305,11 @@ public class ReflectionMap<V> {
        }
 
        private static class ClassEntry<V> {
+               // Property name constants
+               private static final String PROP_fullName = "fullName";
+               private static final String PROP_simpleName = "simpleName";
+               private static final String PROP_value = "value";
+
                final String simpleName;
                final String fullName;
                final V value;
@@ -318,9 +329,9 @@ public class ReflectionMap<V> {
                protected FluentMap<String,Object> properties() {
                        // @formatter:off
                        return filteredBeanPropertyMap()
-                               .a("fullName", fullName)
-                               .a("simpleName", simpleName)
-                               .a("value", value);
+                               .a(PROP_fullName, fullName)
+                               .a(PROP_simpleName, simpleName)
+                               .a(PROP_value, value);
                        // @formatter:on
                }
 
@@ -331,6 +342,12 @@ public class ReflectionMap<V> {
        }
 
        private static class ConstructorEntry<V> {
+               // Property name constants
+               private static final String PROP_args = "args";
+               private static final String PROP_fullClassName = 
"fullClassName";
+               private static final String PROP_simpleClassName = 
"simpleClassName";
+               private static final String PROP_value = "value";
+
                String simpleClassName;
                String fullClassName;
                String args[];
@@ -359,10 +376,10 @@ public class ReflectionMap<V> {
                protected FluentMap<String,Object> properties() {
                        // @formatter:off
                        return filteredBeanPropertyMap()
-                               .a("args", args)
-                               .a("fullClassName", fullClassName)
-                               .a("simpleClassName", simpleClassName)
-                               .a("value", value);
+                               .a(PROP_args, args)
+                               .a(PROP_fullClassName, fullClassName)
+                               .a(PROP_simpleClassName, simpleClassName)
+                               .a(PROP_value, value);
                        // @formatter:on
                }
 
@@ -373,6 +390,12 @@ public class ReflectionMap<V> {
        }
 
        private static class FieldEntry<V> {
+               // Property name constants
+               private static final String PROP_fieldName = "fieldName";
+               private static final String PROP_fullClassName = 
"fullClassName";
+               private static final String PROP_simpleClassName = 
"simpleClassName";
+               private static final String PROP_value = "value";
+
                String simpleClassName;
                String fullClassName;
                String fieldName;
@@ -398,10 +421,10 @@ public class ReflectionMap<V> {
                protected FluentMap<String,Object> properties() {
                        // @formatter:off
                        return filteredBeanPropertyMap()
-                               .a("fieldName", fieldName)
-                               .a("fullClassName", fullClassName)
-                               .a("simpleClassName", simpleClassName)
-                               .a("value", value);
+                               .a(PROP_fieldName, fieldName)
+                               .a(PROP_fullClassName, fullClassName)
+                               .a(PROP_simpleClassName, simpleClassName)
+                               .a(PROP_value, value);
                        // @formatter:on
                }
 
@@ -412,6 +435,13 @@ public class ReflectionMap<V> {
        }
 
        private static class MethodEntry<V> {
+               // Property name constants
+               private static final String PROP_args = "args";
+               private static final String PROP_fullClassName = 
"fullClassName";
+               private static final String PROP_methodName = "methodName";
+               private static final String PROP_simpleClassName = 
"simpleClassName";
+               private static final String PROP_value = "value";
+
                String simpleClassName;
                String fullClassName;
                String methodName;
@@ -452,11 +482,11 @@ public class ReflectionMap<V> {
                protected FluentMap<String,Object> properties() {
                        // @formatter:off
                        return filteredBeanPropertyMap()
-                               .a("args", opt(args).map(x -> '[' + toCdl(x) + 
"]").orElse(null))
-                               .a("fullClassName", fullClassName)
-                               .a("methodName", methodName)
-                               .a("simpleClassName", simpleClassName)
-                               .a("value", value);
+                               .a(PROP_args, opt(args).map(x -> '[' + toCdl(x) 
+ "]").orElse(null))
+                               .a(PROP_fullClassName, fullClassName)
+                               .a(PROP_methodName, methodName)
+                               .a(PROP_simpleClassName, simpleClassName)
+                               .a(PROP_value, value);
                        // @formatter:on
                }
 
@@ -729,10 +759,10 @@ public class ReflectionMap<V> {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("classEntries", classEntries)
-                       .a("methodEntries", methodEntries)
-                       .a("fieldEntries", fieldEntries)
-                       .a("constructorEntries", constructorEntries);
+                       .a(PROP_classEntries, classEntries)
+                       .a(PROP_methodEntries, methodEntries)
+                       .a(PROP_fieldEntries, fieldEntries)
+                       .a(PROP_constructorEntries, constructorEntries);
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java 
b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java
index 84e853b4e6..3150342b70 100644
--- 
a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java
+++ 
b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java
@@ -62,6 +62,18 @@ public class Config extends Context implements 
ConfigEventListener {
        private static final String ARG_section = "section";
        private static final String ARG_key = "key";
 
+       // Property name constants
+       private static final String PROP_binaryFormat = "binaryFormat";
+       private static final String PROP_binaryLineLength = "binaryLineLength";
+       private static final String PROP_mods = "mods";
+       private static final String PROP_multiLineValuesOnSeparateLines = 
"multiLineValuesOnSeparateLines";
+       private static final String PROP_name = "name";
+       private static final String PROP_parser = "parser";
+       private static final String PROP_readOnly = "readOnly";
+       private static final String PROP_serializer = "serializer";
+       private static final String PROP_store = "store";
+       private static final String PROP_varResolver = "varResolver";
+
        /**
         * Builder class.
         */
@@ -1126,16 +1138,16 @@ public class Config extends Context implements 
ConfigEventListener {
        @Override /* Overridden from Context */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("binaryFormat", binaryFormat)
-                       .a("binaryLineLength", binaryLineLength)
-                       .a("mods", mods)
-                       .a("multiLineValuesOnSeparateLines", 
multiLineValuesOnSeparateLines)
-                       .a("name", name)
-                       .a("parser", parser)
-                       .a("readOnly", readOnly)
-                       .a("serializer", serializer)
-                       .a("store", store)
-                       .a("varResolver", varResolver);
+                       .a(PROP_binaryFormat, binaryFormat)
+                       .a(PROP_binaryLineLength, binaryLineLength)
+                       .a(PROP_mods, mods)
+                       .a(PROP_multiLineValuesOnSeparateLines, 
multiLineValuesOnSeparateLines)
+                       .a(PROP_name, name)
+                       .a(PROP_parser, parser)
+                       .a(PROP_readOnly, readOnly)
+                       .a(PROP_serializer, serializer)
+                       .a(PROP_store, store)
+                       .a(PROP_varResolver, varResolver);
        }
 
        @Override /* Overridden from Object */
diff --git 
a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java
 
b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java
index 95d4730504..124ef8de00 100644
--- 
a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java
+++ 
b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java
@@ -54,6 +54,11 @@ public class FileStore extends ConfigStore {
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
 
+       // Property name constants
+       private static final String PROP_charset = "charset";
+       private static final String PROP_extensions = "extensions";
+       private static final String PROP_updateOnWrite = "updateOnWrite";
+
        /**
         * Builder class.
         */
@@ -600,9 +605,9 @@ public class FileStore extends ConfigStore {
        @Override /* Overridden from ConfigStore */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("charset", charset)
-                       .a("extensions", extensions)
-                       .a("updateOnWrite", updateOnWrite);
+                       .a(PROP_charset, charset)
+                       .a(PROP_extensions, extensions)
+                       .a(PROP_updateOnWrite, updateOnWrite);
        }
 
        @Override
diff --git 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
index 36bc5d7651..b8584075b3 100644
--- 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
+++ 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
@@ -61,6 +61,14 @@ import org.apache.juneau.xml.*;
 @SuppressWarnings("java:S115")
 public class RdfParser extends ReaderParser implements RdfMetaProvider {
 
+       // Property name constants
+       private static final String PROP_collectionFormat = "collectionFormat";
+       private static final String PROP_juneauBpNs = "juneauBpNs";
+       private static final String PROP_juneauNs = "juneauNs";
+       private static final String PROP_language = "language";
+       private static final String PROP_looseCollections = "looseCollections";
+       private static final String PROP_trimWhitespace = "trimWhitespace";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
@@ -1612,11 +1620,11 @@ public class RdfParser extends ReaderParser implements 
RdfMetaProvider {
        @Override /* Overridden from ReaderParser */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("collectionFormat", collectionFormat)
-                       .a("juneauBpNs", juneauBpNs)
-                       .a("juneauNs", juneauNs)
-                       .a("language", language)
-                       .a("looseCollections", looseCollections)
-                       .a("trimWhitespace", trimWhitespace);
+                       .a(PROP_collectionFormat, collectionFormat)
+                       .a(PROP_juneauBpNs, juneauBpNs)
+                       .a(PROP_juneauNs, juneauNs)
+                       .a(PROP_language, language)
+                       .a(PROP_looseCollections, looseCollections)
+                       .a(PROP_trimWhitespace, trimWhitespace);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
index dadeafb9fd..fc370dbeaf 100644
--- 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
+++ 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
@@ -60,6 +60,19 @@ import org.apache.juneau.xml.annotation.*;
 @SuppressWarnings("java:S115")
 public class RdfSerializer extends WriterSerializer implements RdfMetaProvider 
{
 
+       // Property name constants
+       private static final String PROP_addBeanTypes = "addBeanTypes";
+       private static final String PROP_addLiteralTypes = "addLiteralTypes";
+       private static final String PROP_addRootProperty = "addRootProperty";
+       private static final String PROP_autoDetectNamespaces = 
"autoDetectNamespaces";
+       private static final String PROP_collectionFormat = "collectionFormat";
+       private static final String PROP_juneauBpNs = "juneauBpNs";
+       private static final String PROP_juneauNs = "juneauNs";
+       private static final String PROP_language = "language";
+       private static final String PROP_looseCollections = "looseCollections";
+       private static final String PROP_namespaces = "namespaces";
+       private static final String PROP_useXmlNamespaces = "useXmlNamespaces";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
@@ -2057,16 +2070,16 @@ public class RdfSerializer extends WriterSerializer 
implements RdfMetaProvider {
        @Override /* Overridden from WriterSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addBeanTypes", addBeanTypes)
-                       .a("addLiteralTypes", addLiteralTypes)
-                       .a("addRootProperty", addRootProperty)
-                       .a("autoDetectNamespaces", autoDetectNamespaces)
-                       .a("collectionFormat", collectionFormat)
-                       .a("juneauBpNs", juneauBpNs)
-                       .a("juneauNs", juneauNs)
-                       .a("language", language)
-                       .a("looseCollections", looseCollections)
-                       .a("namespaces", namespaces)
-                       .a("useXmlNamespaces", useXmlNamespaces);
+                       .a(PROP_addBeanTypes, addBeanTypes)
+                       .a(PROP_addLiteralTypes, addLiteralTypes)
+                       .a(PROP_addRootProperty, addRootProperty)
+                       .a(PROP_autoDetectNamespaces, autoDetectNamespaces)
+                       .a(PROP_collectionFormat, collectionFormat)
+                       .a(PROP_juneauBpNs, juneauBpNs)
+                       .a(PROP_juneauNs, juneauNs)
+                       .a(PROP_language, language)
+                       .a(PROP_looseCollections, looseCollections)
+                       .a(PROP_namespaces, namespaces)
+                       .a(PROP_useXmlNamespaces, useXmlNamespaces);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
index dadbfc1a88..e2fd3d22c6 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
@@ -163,6 +163,31 @@ import org.apache.juneau.swap.*;
 @SuppressWarnings({"unchecked","rawtypes","java:S6539","java:S115"})
 public class BeanContext extends Context {
 
+       // Property name constants
+       private static final String PROP_beanClassVisibility = 
"beanClassVisibility";
+       private static final String PROP_beanConstructorVisibility = 
"beanConstructorVisibility";
+       private static final String PROP_beanDictionary = "beanDictionary";
+       private static final String PROP_beanFieldVisibility = 
"beanFieldVisibility";
+       private static final String PROP_beanMethodVisibility = 
"beanMethodVisibility";
+       private static final String PROP_beansRequireDefaultConstructor = 
"beansRequireDefaultConstructor";
+       private static final String PROP_beansRequireSerializable = 
"beansRequireSerializable";
+       private static final String PROP_beansRequireSettersForGetters = 
"beansRequireSettersForGetters";
+       private static final String PROP_beansRequireSomeProperties = 
"beansRequireSomeProperties";
+       private static final String PROP_id = "id";
+       private static final String PROP_ignoreInvocationExceptionsOnGetters = 
"ignoreInvocationExceptionsOnGetters";
+       private static final String PROP_ignoreInvocationExceptionsOnSetters = 
"ignoreInvocationExceptionsOnSetters";
+       private static final String PROP_ignoreTransientFields = 
"ignoreTransientFields";
+       private static final String PROP_ignoreUnknownBeanProperties = 
"ignoreUnknownBeanProperties";
+       private static final String PROP_ignoreUnknownNullBeanProperties = 
"ignoreUnknownNullBeanProperties";
+       private static final String PROP_notBeanClasses = "notBeanClasses";
+       private static final String PROP_notBeanPackageNames = 
"notBeanPackageNames";
+       private static final String PROP_notBeanPackagePrefixes = 
"notBeanPackagePrefixes";
+       private static final String PROP_sortProperties = "sortProperties";
+       private static final String PROP_swaps = "swaps";
+       private static final String PROP_useEnumNames = "useEnumNames";
+       private static final String PROP_useInterfaceProxies = 
"useInterfaceProxies";
+       private static final String PROP_useJavaBeanIntrospector = 
"useJavaBeanIntrospector";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_bc = "bc";
        private static final String ARG_beanClass = "beanClass";
@@ -4302,29 +4327,29 @@ public class BeanContext extends Context {
        @Override /* Overridden from Context */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("beanClassVisibility", beanClassVisibility)
-                       .a("beanConstructorVisibility", 
beanConstructorVisibility)
-                       .a("beanDictionary", beanDictionary)
-                       .a("beanFieldVisibility", beanFieldVisibility)
-                       .a("beanMethodVisibility", beanMethodVisibility)
-                       .a("beansRequireDefaultConstructor", 
beansRequireDefaultConstructor)
-                       .a("beansRequireSerializable", beansRequireSerializable)
-                       .a("beansRequireSettersForGetters", 
beansRequireSettersForGetters)
-                       .a("beansRequireSomeProperties", 
beansRequireSomeProperties)
-                       .a("id", System.identityHashCode(this))
-                       .a("ignoreInvocationExceptionsOnGetters", 
ignoreInvocationExceptionsOnGetters)
-                       .a("ignoreInvocationExceptionsOnSetters", 
ignoreInvocationExceptionsOnSetters)
-                       .a("ignoreTransientFields", ignoreTransientFields)
-                       .a("ignoreUnknownBeanProperties", 
ignoreUnknownBeanProperties)
-                       .a("ignoreUnknownNullBeanProperties", 
ignoreUnknownNullBeanProperties)
-                       .a("notBeanClasses", notBeanClasses)
-                       .a("notBeanPackageNames", notBeanPackageNames)
-                       .a("notBeanPackagePrefixes", notBeanPackagePrefixes)
-                       .a("sortProperties", sortProperties)
-                       .a("swaps", swaps)
-                       .a("useEnumNames", useEnumNames)
-                       .a("useInterfaceProxies", useInterfaceProxies)
-                       .a("useJavaBeanIntrospector", useJavaBeanIntrospector);
+                       .a(PROP_beanClassVisibility, beanClassVisibility)
+                       .a(PROP_beanConstructorVisibility, 
beanConstructorVisibility)
+                       .a(PROP_beanDictionary, beanDictionary)
+                       .a(PROP_beanFieldVisibility, beanFieldVisibility)
+                       .a(PROP_beanMethodVisibility, beanMethodVisibility)
+                       .a(PROP_beansRequireDefaultConstructor, 
beansRequireDefaultConstructor)
+                       .a(PROP_beansRequireSerializable, 
beansRequireSerializable)
+                       .a(PROP_beansRequireSettersForGetters, 
beansRequireSettersForGetters)
+                       .a(PROP_beansRequireSomeProperties, 
beansRequireSomeProperties)
+                       .a(PROP_id, System.identityHashCode(this))
+                       .a(PROP_ignoreInvocationExceptionsOnGetters, 
ignoreInvocationExceptionsOnGetters)
+                       .a(PROP_ignoreInvocationExceptionsOnSetters, 
ignoreInvocationExceptionsOnSetters)
+                       .a(PROP_ignoreTransientFields, ignoreTransientFields)
+                       .a(PROP_ignoreUnknownBeanProperties, 
ignoreUnknownBeanProperties)
+                       .a(PROP_ignoreUnknownNullBeanProperties, 
ignoreUnknownNullBeanProperties)
+                       .a(PROP_notBeanClasses, notBeanClasses)
+                       .a(PROP_notBeanPackageNames, notBeanPackageNames)
+                       .a(PROP_notBeanPackagePrefixes, notBeanPackagePrefixes)
+                       .a(PROP_sortProperties, sortProperties)
+                       .a(PROP_swaps, swaps)
+                       .a(PROP_useEnumNames, useEnumNames)
+                       .a(PROP_useInterfaceProxies, useInterfaceProxies)
+                       .a(PROP_useJavaBeanIntrospector, 
useJavaBeanIntrospector);
        }
 
        /**
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java
index 26405f4935..1cf33db58e 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java
@@ -46,6 +46,9 @@ import org.apache.juneau.swap.*;
  */
 public abstract class BeanContextable extends Context {
 
+       // Property name constants
+       private static final String PROP_beanContext = "beanContext";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_operation = "operation";
@@ -3063,6 +3066,6 @@ public abstract class BeanContextable extends Context {
        @Override /* Overridden from Context */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("beanContext", beanContext.properties());
+                       .a(PROP_beanContext, beanContext.properties());
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
index 85ca6f0773..1e9abea876 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
@@ -68,6 +68,10 @@ import org.apache.juneau.commons.utils.*;
  */
 public class BeanMeta<T> {
 
+       // Property name constants
+       private static final String PROP_class = "class";
+       private static final String PROP_properties = "properties";
+
        /**
         * Represents the result of creating a BeanMeta, including the bean 
metadata and any reason why it's not a bean.
         *
@@ -757,8 +761,8 @@ public class BeanMeta<T> {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("class", classMeta.getName())
-                       .a("properties", properties);
+                       .a(PROP_class, classMeta.getName())
+                       .a(PROP_properties, properties);
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java
index 234cbce4e7..ef6f18547a 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java
@@ -60,6 +60,13 @@ import org.apache.juneau.swaps.*;
 @SuppressWarnings({ "rawtypes", "unchecked" })
 public class BeanPropertyMeta implements Comparable<BeanPropertyMeta> {
 
+       // Property name constants
+       private static final String PROP_field = "field";
+       private static final String PROP_getter = "getter";
+       private static final String PROP_name = "name";
+       private static final String PROP_setter = "setter";
+       private static final String PROP_type = "type";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_innerField = "innerField";
@@ -1173,11 +1180,11 @@ public class BeanPropertyMeta implements 
Comparable<BeanPropertyMeta> {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("field", field)
-                       .a("getter", getter)
-                       .a("name", name)
-                       .a("setter", setter)
-                       .a("type", cn(rawTypeMeta));
+                       .a(PROP_field, field)
+                       .a(PROP_getter, getter)
+                       .a(PROP_name, name)
+                       .a(PROP_setter, setter)
+                       .a(PROP_type, cn(rawTypeMeta));
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyValue.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyValue.java
index d0572a6b80..833a9ff059 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyValue.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyValue.java
@@ -26,6 +26,11 @@ import org.apache.juneau.commons.collections.*;
  */
 public class BeanPropertyValue implements Comparable<BeanPropertyValue> {
 
+       // Property name constants
+       private static final String PROP_name = "name";
+       private static final String PROP_value = "value";
+       private static final String PROP_type = "type";
+
        private final BeanPropertyMeta pMeta;
        private final String name;
        private final Object value;
@@ -89,9 +94,9 @@ public class BeanPropertyValue implements 
Comparable<BeanPropertyValue> {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("name", name)
-                       .a("value", value)
-                       .a("type", cns(pMeta.getClassMeta()));
+                       .a(PROP_name, name)
+                       .a(PROP_value, value)
+                       .a(PROP_type, cns(pMeta.getClassMeta()));
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
index 708d5213c0..2eba0e3bd4 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
@@ -54,6 +54,11 @@ import org.apache.juneau.swap.*;
 @SuppressWarnings({ "unchecked", "rawtypes", "java:S115" })
 public class BeanSession extends ContextSession {
 
+       // Property name constants
+       private static final String PROP_locale = "locale";
+       private static final String PROP_mediaType = "mediaType";
+       private static final String PROP_timeZone = "timeZone";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
        private static final String ARG_o = "o";
@@ -1561,9 +1566,9 @@ public class BeanSession extends ContextSession {
        @Override /* Overridden from ContextSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("locale", locale)
-                       .a("mediaType", mediaType)
-                       .a("timeZone", timeZone);
+                       .a(PROP_locale, locale)
+                       .a(PROP_mediaType, mediaType)
+                       .a(PROP_timeZone, timeZone);
        }
 
        /**
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseContext.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseContext.java
index 76fc3a9cd2..6c938c50a0 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseContext.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseContext.java
@@ -39,6 +39,12 @@ import org.apache.juneau.commons.reflect.*;
  */
 public abstract class BeanTraverseContext extends BeanContextable {
 
+       // Property name constants
+       private static final String PROP_detectRecursions = "detectRecursions";
+       private static final String PROP_ignoreRecursions = "ignoreRecursions";
+       private static final String PROP_initialDepth = "initialDepth";
+       private static final String PROP_maxDepth = "maxDepth";
+
        /**
         * Builder class.
         */
@@ -776,9 +782,9 @@ public abstract class BeanTraverseContext extends 
BeanContextable {
        @Override /* Overridden from BeanContextable */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("detectRecursions", detectRecursions)
-                       .a("ignoreRecursions", ignoreRecursions)
-                       .a("initialDepth", initialDepth)
-                       .a("maxDepth", maxDepth);
+                       .a(PROP_detectRecursions, detectRecursions)
+                       .a(PROP_ignoreRecursions, ignoreRecursions)
+                       .a(PROP_initialDepth, initialDepth)
+                       .a(PROP_maxDepth, maxDepth);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseSession.java
index 372367b124..1aa8e45d21 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseSession.java
@@ -50,6 +50,10 @@ import org.apache.juneau.commons.utils.*;
 @SuppressWarnings("java:S115")
 public class BeanTraverseSession extends BeanSession {
 
+       // Property name constants
+       private static final String PROP_indent = "indent";
+       private static final String PROP_depth = "depth";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
 
@@ -338,8 +342,8 @@ public class BeanTraverseSession extends BeanSession {
        @Override /* Overridden from BeanSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("indent", indent)
-                       .a("depth", depth);
+                       .a(PROP_indent, indent)
+                       .a(PROP_depth, depth);
        }
 
        /**
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java
index e3f8a5328e..5cd1af0a16 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java
@@ -72,6 +72,10 @@ import org.apache.juneau.xml.annotation.*;
 @SuppressWarnings("java:S115")
 public abstract class Context {
 
+       // Property name constants
+       private static final String PROP_annotations = "annotations";
+       private static final String PROP_debug = "debug";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_type = "type";
        private static final String ARG_builder = "builder";
@@ -957,7 +961,7 @@ public abstract class Context {
         */
        protected FluentMap<String,Object> properties() {
                return filteredBeanPropertyMap()
-                       .a("annotations", annotations)
-                       .a("debug", debug);
+                       .a(PROP_annotations, annotations)
+                       .a(PROP_debug, debug);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ContextSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ContextSession.java
index aed85c264e..a2fc878ead 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ContextSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ContextSession.java
@@ -42,6 +42,9 @@ import org.apache.juneau.commons.reflect.*;
 @SuppressWarnings("java:S115")
 public abstract class ContextSession {
 
+       // Property name constants
+       private static final String PROP_debug = "debug";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
        private static final String ARG_value = "value";
@@ -264,6 +267,6 @@ public abstract class ContextSession {
         */
        protected FluentMap<String,Object> properties() {
                return filteredBeanPropertyMap()
-                       .a("debug", debug);
+                       .a(PROP_debug, debug);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/UriContext.java 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/UriContext.java
index 37dfa6e3a7..318eba5a0f 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/UriContext.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/UriContext.java
@@ -47,6 +47,19 @@ import org.apache.juneau.parser.*;
 @Bean
 public class UriContext {
 
+       // Property name constants
+       private static final String PROP_aContextRoot = "aContextRoot";
+       private static final String PROP_aPathInfo = "aPathInfo";
+       private static final String PROP_aServletPath = "aServletPath";
+       private static final String PROP_authority = "authority";
+       private static final String PROP_contextRoot = "contextRoot";
+       private static final String PROP_parentPath = "parentPath";
+       private static final String PROP_pathInfo = "pathInfo";
+       private static final String PROP_rContextRoot = "rContextRoot";
+       private static final String PROP_rResource = "rResource";
+       private static final String PROP_rPath = "rPath";
+       private static final String PROP_servletPath = "servletPath";
+
        /**
         * Default URI context.
         *
@@ -424,17 +437,17 @@ public class UriContext {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("aContextRoot", aContextRoot.get())
-                       .a("aPathInfo", aPathInfo.get())
-                       .a("aServletPath", aServletPath.get())
-                       .a("authority", authority)
-                       .a("contextRoot", contextRoot)
-                       .a("parentPath", parentPath)
-                       .a("pathInfo", pathInfo)
-                       .a("rContextRoot", rContextRoot.get())
-                       .a("rResource", rResource.get())
-                       .a("servletPath", servletPath)
-                       .a("rPath", rPath.get());
+                       .a(PROP_aContextRoot, aContextRoot.get())
+                       .a(PROP_aPathInfo, aPathInfo.get())
+                       .a(PROP_aServletPath, aServletPath.get())
+                       .a(PROP_authority, authority)
+                       .a(PROP_contextRoot, contextRoot)
+                       .a(PROP_parentPath, parentPath)
+                       .a(PROP_pathInfo, pathInfo)
+                       .a(PROP_rContextRoot, rContextRoot.get())
+                       .a(PROP_rResource, rResource.get())
+                       .a(PROP_servletPath, servletPath)
+                       .a(PROP_rPath, rPath.get());
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicBeanStore.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicBeanStore.java
index ec98318fa2..60a8c47102 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicBeanStore.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicBeanStore.java
@@ -85,6 +85,13 @@ public class BasicBeanStore {
        private static final String ARG_bean = "bean";
        private static final String ARG_type = "type";
 
+       // Property name constants
+       private static final String PROP_entries = "entries";
+       private static final String PROP_identity = "identity";
+       private static final String PROP_parent = "parent";
+       private static final String PROP_readOnly = "readOnly";
+       private static final String PROP_threadSafe = "threadSafe";
+
        /**
         * Builder class.
         */
@@ -510,11 +517,11 @@ public class BasicBeanStore {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("entries", 
entries.stream().map(Entry::properties).toList())
-                       .a("identity", id(this))
-                       .a("parent", 
parent.map(BasicBeanStore::properties).orElse(null))
-                       .ai(readOnly, "readOnly", readOnly)
-                       .ai(threadSafe, "threadSafe", threadSafe);
+                       .a(PROP_entries, 
entries.stream().map(Entry::properties).toList())
+                       .a(PROP_identity, id(this))
+                       .a(PROP_parent, 
parent.map(BasicBeanStore::properties).orElse(null))
+                       .ai(readOnly, PROP_readOnly, readOnly)
+                       .ai(threadSafe, PROP_threadSafe, threadSafe);
                // @formatter:on
        }
 
@@ -559,6 +566,11 @@ public class BasicBeanStore {
         */
        public static class Entry<T> {
 
+               // Property name constants
+               private static final String PROP_bean = "bean";
+               private static final String PROP_name = "name";
+               private static final String PROP_type = "type";
+
                /**
                 * Static creator.
                 *
@@ -642,9 +654,9 @@ public class BasicBeanStore {
                protected FluentMap<String,Object> properties() {
                        // @formatter:off
                        return filteredBeanPropertyMap()
-                               .a("type", cns(getType()))
-                               .a("bean", id(get()))
-                               .a("name", getName());
+                               .a(PROP_type, cns(getType()))
+                               .a(PROP_bean, id(get()))
+                               .a(PROP_name, getName());
                        // @formatter:on
                }
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java
index 7452072be2..12fe6f06e2 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java
@@ -52,6 +52,14 @@ import org.apache.juneau.commons.io.*;
 @SuppressWarnings("resource")
 public class BasicFileFinder implements FileFinder {
 
+       // Property name constants
+       private static final String PROP_cachingLimit = "cachingLimit";
+       private static final String PROP_class = "class";
+       private static final String PROP_exclude = "exclude";
+       private static final String PROP_hashCode = "hashCode";
+       private static final String PROP_include = "include";
+       private static final String PROP_roots = "roots";
+
        private static final ResourceBundle.Control RB_CONTROL = 
ResourceBundle.Control.getControl(Control.FORMAT_DEFAULT);
 
        private final Map<String,LocalFile> files = new ConcurrentHashMap<>();
@@ -120,12 +128,12 @@ public class BasicFileFinder implements FileFinder {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("cachingLimit", cachingLimit)
-                       .a("class", cns(getClass()))
-                       .a("exclude", excludePatterns)
-                       .a("include", includePatterns)
-                       .a("roots", roots)
-                       .a("hashCode", hashCode);
+                       .a(PROP_cachingLimit, cachingLimit)
+                       .a(PROP_class, cns(getClass()))
+                       .a(PROP_exclude, excludePatterns)
+                       .a(PROP_include, includePatterns)
+                       .a(PROP_roots, roots)
+                       .a(PROP_hashCode, hashCode);
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java
index e37a6830e4..dc3a24100d 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java
@@ -85,6 +85,21 @@ import org.apache.juneau.xml.*;
 @SuppressWarnings("java:S110")
 public class HtmlDocSerializer extends HtmlStrippedDocSerializer {
 
+       // Property name constants
+       private static final String PROP_aside = "aside";
+       private static final String PROP_asideFloat = "asideFloat";
+       private static final String PROP_footer = "footer";
+       private static final String PROP_head = "head";
+       private static final String PROP_header = "header";
+       private static final String PROP_nav = "nav";
+       private static final String PROP_navlinks = "navlinks";
+       private static final String PROP_noResultsMessage = "noResultsMessage";
+       private static final String PROP_nowrap = "nowrap";
+       private static final String PROP_style = "style";
+       private static final String PROP_stylesheet = "stylesheet";
+       private static final String PROP_template = "template";
+       private static final String PROP_widgets = "widgets";
+
        /**
         * Builder class.
         */
@@ -1870,18 +1885,18 @@ final AsideFloat asideFloat;
        @Override /* Overridden from HtmlSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("aside", aside)
-                       .a("asideFloat", asideFloat)
-                       .a("footer", footer)
-                       .a("head", head)
-                       .a("header", header)
-                       .a("nav", nav)
-                       .a("navlinks", navlinks)
-                       .a("noResultsMessage", noResultsMessage)
-                       .a("nowrap", nowrap)
-                       .a("style", style)
-                       .a("stylesheet", stylesheet)
-                       .a("template", template)
-                       .a("widgets", widgets);
+                       .a(PROP_aside, aside)
+                       .a(PROP_asideFloat, asideFloat)
+                       .a(PROP_footer, footer)
+                       .a(PROP_head, head)
+                       .a(PROP_header, header)
+                       .a(PROP_nav, nav)
+                       .a(PROP_navlinks, navlinks)
+                       .a(PROP_noResultsMessage, noResultsMessage)
+                       .a(PROP_nowrap, nowrap)
+                       .a(PROP_style, style)
+                       .a(PROP_stylesheet, stylesheet)
+                       .a(PROP_template, template)
+                       .a(PROP_widgets, widgets);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerSession.java
index c23715d779..763b2df554 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerSession.java
@@ -46,6 +46,10 @@ import org.apache.juneau.svl.*;
 @SuppressWarnings("java:S110")
 public class HtmlDocSerializerSession extends HtmlStrippedDocSerializerSession 
{
 
+       // Property name constants
+       private static final String PROP_ctx = "ctx";
+       private static final String PROP_varResolver = "varResolver";
+
        /**
         * Builder class.
         */
@@ -385,7 +389,7 @@ public class HtmlDocSerializerSession extends 
HtmlStrippedDocSerializerSession {
        @Override /* Overridden from HtmlStrippedDocSerializerSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("ctx", ctx)
-                       .a("varResolver", getVarResolver());
+                       .a(PROP_ctx, ctx)
+                       .a(PROP_varResolver, getVarResolver());
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializer.java
index 6f605c01d2..2e43dd5641 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializer.java
@@ -61,6 +61,9 @@ import org.apache.juneau.xml.*;
 @SuppressWarnings("java:S110")
 public class HtmlSchemaSerializer extends HtmlSerializer {
 
+       // Property name constants
+       private static final String PROP_generator = "generator";
+
        /**
         * Builder class.
         */
@@ -1106,7 +1109,7 @@ public class HtmlSchemaSerializer extends HtmlSerializer {
        @Override /* Overridden from HtmlSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("generator", generator);
+                       .a(PROP_generator, generator);
        }
 
        JsonSchemaGenerator getGenerator() { return generator; }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializer.java
index c60d1abc48..162ac3895f 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializer.java
@@ -149,6 +149,14 @@ import org.apache.juneau.xml.*;
 @SuppressWarnings({"java:S110", "java:S115"})
 public class HtmlSerializer extends XmlSerializer implements HtmlMetaProvider {
 
+       // Property name constants
+       private static final String PROP_addBeanTypesHtml = "addBeanTypesHtml";
+       private static final String PROP_addKeyValueTableHeaders = 
"addKeyValueTableHeaders";
+       private static final String PROP_detectLabelParameters = 
"detectLabelParameters";
+       private static final String PROP_detectLinksInStrings = 
"detectLinksInStrings";
+       private static final String PROP_labelParameter = "labelParameter";
+       private static final String PROP_uriAnchorText = "uriAnchorText";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
@@ -1566,11 +1574,11 @@ public class HtmlSerializer extends XmlSerializer 
implements HtmlMetaProvider {
        @Override /* Overridden from XmlSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addBeanTypesHtml", addBeanTypesHtml)
-                       .a("addKeyValueTableHeaders", addKeyValueTableHeaders)
-                       .a("detectLabelParameters", detectLabelParameters)
-                       .a("detectLinksInStrings", detectLinksInStrings)
-                       .a("labelParameter", labelParameter)
-                       .a("uriAnchorText", uriAnchorText);
+                       .a(PROP_addBeanTypesHtml, addBeanTypesHtml)
+                       .a(PROP_addKeyValueTableHeaders, 
addKeyValueTableHeaders)
+                       .a(PROP_detectLabelParameters, detectLabelParameters)
+                       .a(PROP_detectLinksInStrings, detectLinksInStrings)
+                       .a(PROP_labelParameter, labelParameter)
+                       .a(PROP_uriAnchorText, uriAnchorText);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializer.java
index e14dc9e76e..c905e86679 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializer.java
@@ -53,6 +53,9 @@ import org.apache.juneau.jsonschema.*;
 @SuppressWarnings("java:S110")
 public class JsonSchemaSerializer extends JsonSerializer implements 
JsonSchemaMetaProvider {
 
+       // Property name constants
+       private static final String PROP_generator = "generator";
+
        /**
         * Builder class.
         */
@@ -1022,7 +1025,7 @@ public class JsonSchemaSerializer extends JsonSerializer 
implements JsonSchemaMe
        @Override /* Overridden from JsonSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("generator", generator);
+                       .a(PROP_generator, generator);
        }
 
        JsonSchemaGenerator getGenerator() { return generator; }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializer.java
index fdefe1212f..7bcb00d939 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializer.java
@@ -112,6 +112,11 @@ import org.apache.juneau.serializer.*;
 @SuppressWarnings({"java:S110", "java:S115"})
 public class JsonSerializer extends WriterSerializer implements 
JsonMetaProvider {
 
+       // Property name constants
+       private static final String PROP_addBeanTypesJson = "addBeanTypesJson";
+       private static final String PROP_escapeSolidus = "escapeSolidus";
+       private static final String PROP_simpleAttrs = "simpleAttrs";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_copyFrom = "copyFrom";
 
@@ -1148,8 +1153,8 @@ public class JsonSerializer extends WriterSerializer 
implements JsonMetaProvider
        @Override /* Overridden from WriterSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addBeanTypesJson", addBeanTypesJson)
-                       .a("escapeSolidus", escapeSolidus)
-                       .a("simpleAttrs", simpleAttrs);
+                       .a(PROP_addBeanTypesJson, addBeanTypesJson)
+                       .a(PROP_escapeSolidus, escapeSolidus)
+                       .a(PROP_simpleAttrs, simpleAttrs);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java
index a216c8ef27..2d4e00dc7f 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java
@@ -52,8 +52,18 @@ public class JsonSchemaGenerator extends BeanTraverseContext 
implements JsonSche
 
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
+       private static final String ARG_values = "values";
        private static final String ARG_copyFrom = "copyFrom";
 
+       // Property name constants
+       private static final String PROP_addDescriptionsTo = 
"addDescriptionsTo";
+       private static final String PROP_addExamplesTo = "addExamplesTo";
+       private static final String PROP_allowNestedDescriptions = 
"allowNestedDescriptions";
+       private static final String PROP_allowNestedExamples = 
"allowNestedExamples";
+       private static final String PROP_beanDefMapper = "beanDefMapper";
+       private static final String PROP_ignoreTypes = "ignoreTypes";
+       private static final String PROP_useBeanDefs = "useBeanDefs";
+
        /**
         * Builder class.
         */
@@ -158,7 +168,7 @@ public class JsonSchemaGenerator extends 
BeanTraverseContext implements JsonSche
                 * @return This object.
                 */
                public Builder addDescriptionsTo(TypeCategory...values) {
-                       assertArgNoNulls("values", values);
+                       assertArgNoNulls(ARG_values, values);
                        addDescriptionsTo = addAll(addDescriptionsTo, values);
                        return this;
                }
@@ -198,7 +208,7 @@ public class JsonSchemaGenerator extends 
BeanTraverseContext implements JsonSche
                 * @return This object.
                 */
                public Builder addExamplesTo(TypeCategory...values) {
-                       assertArgNoNulls("values", values);
+                       assertArgNoNulls(ARG_values, values);
                        addExamplesTo = addAll(addExamplesTo, values);
                        return this;
                }
@@ -617,7 +627,7 @@ public class JsonSchemaGenerator extends 
BeanTraverseContext implements JsonSche
                 * @return This object.
                 */
                public Builder ignoreTypes(String...values) {
-                       assertArgNoNulls("values", values);
+                       assertArgNoNulls(ARG_values, values);
                        ignoreTypes = addAll(ignoreTypes, values);
                        return this;
                }
@@ -995,13 +1005,13 @@ public class JsonSchemaGenerator extends 
BeanTraverseContext implements JsonSche
        @Override /* Overridden from BeanTraverseContext */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addDescriptionsTo", addDescriptionsTo)
-                       .a("addExamplesTo", addExamplesTo)
-                       .a("allowNestedDescriptions", allowNestedDescriptions)
-                       .a("allowNestedExamples", allowNestedExamples)
-                       .a("beanDefMapper", beanDefMapper)
-                       .a("ignoreTypes", ignoreTypes)
-                       .a("useBeanDefs", useBeanDefs);
+                       .a(PROP_addDescriptionsTo, addDescriptionsTo)
+                       .a(PROP_addExamplesTo, addExamplesTo)
+                       .a(PROP_allowNestedDescriptions, 
allowNestedDescriptions)
+                       .a(PROP_allowNestedExamples, allowNestedExamples)
+                       .a(PROP_beanDefMapper, beanDefMapper)
+                       .a(PROP_ignoreTypes, ignoreTypes)
+                       .a(PROP_useBeanDefs, useBeanDefs);
        }
 
        JsonParser getJsonParser() { return jsonParser; }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
index 300a375ea1..66f75fa4a2 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
@@ -54,6 +54,9 @@ public class MsgPackSerializer extends OutputStreamSerializer 
implements MsgPack
        private static final String ARG_builder = "builder";
        private static final String ARG_copyFrom = "copyFrom";
 
+       // Property name constants
+       private static final String PROP_addBeanTypesMsgPack = 
"addBeanTypesMsgPack";
+
        /** Default serializer, BASE64 string output. */
        @SuppressWarnings("java:S110")
        public static class Base64 extends MsgPackSerializer {
@@ -822,6 +825,6 @@ public class MsgPackSerializer extends 
OutputStreamSerializer implements MsgPack
        @Override /* Overridden from OutputStreamSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addBeanTypesMsgPack", addBeanTypesMsgPack);
+                       .a(PROP_addBeanTypesMsgPack, addBeanTypesMsgPack);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParser.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParser.java
index 8985d16558..3dc4503713 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParser.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParser.java
@@ -54,6 +54,9 @@ public class InputStreamParser extends Parser {
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
 
+       // Property name constants
+       private static final String PROP_binaryFormat = "binaryFormat";
+
        /**
         * Builder class.
         */
@@ -667,6 +670,6 @@ public class InputStreamParser extends Parser {
        @Override /* Overridden from Parser */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("binaryFormat", binaryFormat);
+                       .a(PROP_binaryFormat, binaryFormat);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
index ecbec4e811..911c8f4eed 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
@@ -140,6 +140,14 @@ import org.apache.juneau.xml.*;
  */
 public class Parser extends BeanContextable {
 
+       // Property name constants
+       private static final String PROP_autoCloseStreams = "autoCloseStreams";
+       private static final String PROP_debugOutputLines = "debugOutputLines";
+       private static final String PROP_listener = "listener";
+       private static final String PROP_strict = "strict";
+       private static final String PROP_trimStrings = "trimStrings";
+       private static final String PROP_unbuffered = "unbuffered";
+
        /**
         * Builder class.
         */
@@ -1418,11 +1426,11 @@ public class Parser extends BeanContextable {
        @Override /* Overridden from BeanContextable */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("autoCloseStreams", autoCloseStreams)
-                       .a("debugOutputLines", debugOutputLines)
-                       .a("listener", listener)
-                       .a("strict", strict)
-                       .a("trimStrings", trimStrings)
-                       .a("unbuffered", unbuffered);
+                       .a(PROP_autoCloseStreams, autoCloseStreams)
+                       .a(PROP_debugOutputLines, debugOutputLines)
+                       .a(PROP_listener, listener)
+                       .a(PROP_strict, strict)
+                       .a(PROP_trimStrings, trimStrings)
+                       .a(PROP_unbuffered, unbuffered);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSession.java
index cee0387512..a4bc032490 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSession.java
@@ -52,6 +52,11 @@ import org.apache.juneau.swap.*;
 @SuppressWarnings("java:S115")
 public class ParserSession extends BeanSession {
 
+       // Property name constants
+       private static final String PROP_javaMethod = "javaMethod";
+       private static final String PROP_listener = "listener";
+       private static final String PROP_outer = "outer";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
 
@@ -1080,9 +1085,9 @@ public class ParserSession extends BeanSession {
        @Override /* Overridden from BeanSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("javaMethod", javaMethod)
-                       .a("listener", listener)
-                       .a("outer", outer);
+                       .a(PROP_javaMethod, javaMethod)
+                       .a(PROP_listener, listener)
+                       .a(PROP_outer, outer);
        }
 
        /**
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParser.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParser.java
index 2048b9edfd..68281986b3 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParser.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParser.java
@@ -51,6 +51,10 @@ import org.apache.juneau.commons.reflect.*;
 @SuppressWarnings("java:S115")
 public class ReaderParser extends Parser {
 
+       // Property name constants
+       private static final String PROP_fileCharset = "fileCharset";
+       private static final String PROP_streamCharset = "streamCharset";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_copyFrom = "copyFrom";
 
@@ -721,7 +725,7 @@ public class ReaderParser extends Parser {
        @Override /* Overridden from Parser */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("fileCharset", fileCharset)
-                       .a("streamCharset", streamCharset);
+                       .a(PROP_fileCharset, fileCharset)
+                       .a(PROP_streamCharset, streamCharset);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserSession.java
index 45137e203b..aeb30b56ff 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserSession.java
@@ -42,6 +42,10 @@ import org.apache.juneau.httppart.*;
 @SuppressWarnings("java:S115")
 public class ReaderParserSession extends ParserSession {
 
+       // Property name constants
+       private static final String PROP_fileCharset = "fileCharset";
+       private static final String PROP_streamCharset = "streamCharset";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
 
@@ -275,7 +279,7 @@ public class ReaderParserSession extends ParserSession {
        @Override /* Overridden from ParserSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("fileCharset", fileCharset)
-                       .a("streamCharset", streamCharset);
+                       .a(PROP_fileCharset, fileCharset)
+                       .a(PROP_streamCharset, streamCharset);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
index f1ee32d253..190e82af80 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
@@ -42,6 +42,9 @@ import org.apache.juneau.commons.reflect.*;
 @SuppressWarnings("java:S115")
 public class OutputStreamSerializer extends Serializer {
 
+       // Property name constants
+       private static final String PROP_binaryFormat = "binaryFormat";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
@@ -777,6 +780,6 @@ public class OutputStreamSerializer extends Serializer {
        @Override /* Overridden from Serializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("binaryFormat", binaryFormat);
+                       .a(PROP_binaryFormat, binaryFormat);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
index 4aa8f1fe0d..a714f3dc32 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
@@ -73,6 +73,20 @@ import org.apache.juneau.soap.*;
 @SuppressWarnings("java:S115")
 public class Serializer extends BeanTraverseContext {
 
+       // Property name constants
+       private static final String PROP_addBeanTypes = "addBeanTypes";
+       private static final String PROP_addRootType = "addRootType";
+       private static final String PROP_keepNullProperties = 
"keepNullProperties";
+       private static final String PROP_listener = "listener";
+       private static final String PROP_sortCollections = "sortCollections";
+       private static final String PROP_sortMaps = "sortMaps";
+       private static final String PROP_trimEmptyCollections = 
"trimEmptyCollections";
+       private static final String PROP_trimEmptyMaps = "trimEmptyMaps";
+       private static final String PROP_trimStrings = "trimStrings";
+       private static final String PROP_uriContext = "uriContext";
+       private static final String PROP_uriRelativity = "uriRelativity";
+       private static final String PROP_uriResolution = "uriResolution";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_copyFrom = "copyFrom";
 
@@ -1602,17 +1616,17 @@ public class Serializer extends BeanTraverseContext {
        @Override /* Overridden from BeanTraverseContext */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addBeanTypes", addBeanTypes)
-                       .a("addRootType", addRootType)
-                       .a("keepNullProperties", keepNullProperties)
-                       .a("listener", listener)
-                       .a("sortCollections", sortCollections)
-                       .a("sortMaps", sortMaps)
-                       .a("trimEmptyCollections", trimEmptyCollections)
-                       .a("trimEmptyMaps", trimEmptyMaps)
-                       .a("trimStrings", trimStrings)
-                       .a("uriContext", uriContext)
-                       .a("uriRelativity", uriRelativity)
-                       .a("uriResolution", uriResolution);
+                       .a(PROP_addBeanTypes, addBeanTypes)
+                       .a(PROP_addRootType, addRootType)
+                       .a(PROP_keepNullProperties, keepNullProperties)
+                       .a(PROP_listener, listener)
+                       .a(PROP_sortCollections, sortCollections)
+                       .a(PROP_sortMaps, sortMaps)
+                       .a(PROP_trimEmptyCollections, trimEmptyCollections)
+                       .a(PROP_trimEmptyMaps, trimEmptyMaps)
+                       .a(PROP_trimStrings, trimStrings)
+                       .a(PROP_uriContext, uriContext)
+                       .a(PROP_uriRelativity, uriRelativity)
+                       .a(PROP_uriResolution, uriResolution);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSession.java
index e1616e409b..34b1819d8c 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSession.java
@@ -65,6 +65,9 @@ import org.apache.juneau.swap.*;
 @SuppressWarnings("java:S115")
 public class SerializerSession extends BeanTraverseSession {
 
+       // Property name constants
+       private static final String PROP_uriResolver = "uriResolver";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
 
@@ -985,7 +988,7 @@ public class SerializerSession extends BeanTraverseSession {
        @Override /* Overridden from BeanTraverseSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("uriResolver", uriResolver);
+                       .a(PROP_uriResolver, uriResolver);
        }
 
        /**
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
index 689fac799d..004109b1a8 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
@@ -45,6 +45,13 @@ import org.apache.juneau.json.*;
 @SuppressWarnings("java:S115")
 public class WriterSerializer extends Serializer {
 
+       // Property name constants
+       private static final String PROP_fileCharset = "fileCharset";
+       private static final String PROP_maxIndent = "maxIndent";
+       private static final String PROP_quoteChar = "quoteChar";
+       private static final String PROP_streamCharset = "streamCharset";
+       private static final String PROP_useWhitespace = "useWhitespace";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_copyFrom = "copyFrom";
 
@@ -1118,11 +1125,11 @@ public class WriterSerializer extends Serializer {
        @Override /* Overridden from Serializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("fileCharset", fileCharset)
-                       .a("maxIndent", maxIndent)
-                       .a("quoteChar", quoteChar)
-                       .a("streamCharset", streamCharset)
-                       .a("useWhitespace", useWhitespace);
+                       .a(PROP_fileCharset, fileCharset)
+                       .a(PROP_maxIndent, maxIndent)
+                       .a(PROP_quoteChar, quoteChar)
+                       .a(PROP_streamCharset, streamCharset)
+                       .a(PROP_useWhitespace, useWhitespace);
        }
 
        /**
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
index 782a5a6218..2fc130b7bc 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
@@ -53,6 +53,11 @@ import org.apache.juneau.svl.*;
 @SuppressWarnings("java:S115")
 public class WriterSerializerSession extends SerializerSession {
 
+       // Property name constants
+       private static final String PROP_fileCharset = "fileCharset";
+       private static final String PROP_streamCharset = "streamCharset";
+       private static final String PROP_useWhitespace = "useWhitespace";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
 
@@ -343,8 +348,8 @@ public class WriterSerializerSession extends 
SerializerSession {
        @Override /* Overridden from SerializerSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("fileCharset", fileCharset)
-                       .a("streamCharset", streamCharset)
-                       .a("useWhitespace", useWhitespace);
+                       .a(PROP_fileCharset, fileCharset)
+                       .a(PROP_streamCharset, streamCharset)
+                       .a(PROP_useWhitespace, useWhitespace);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
index 693c2268b8..5e55ac59af 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
@@ -50,6 +50,9 @@ import org.apache.juneau.xml.*;
 @SuppressWarnings({"java:S110", "java:S115"})
 public class SoapXmlSerializer extends XmlSerializer implements 
SoapXmlMetaProvider {
 
+       // Property name constants
+       private static final String PROP_soapAction = "soapAction";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
@@ -899,6 +902,6 @@ public class SoapXmlSerializer extends XmlSerializer 
implements SoapXmlMetaProvi
        @Override /* Overridden from XmlSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("soapAction", soapAction);
+                       .a(PROP_soapAction, soapAction);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolverSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolverSession.java
index efaefb2a22..f3ea8a8515 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolverSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolverSession.java
@@ -55,6 +55,11 @@ import org.apache.juneau.cp.*;
 @SuppressWarnings("resource")
 public class VarResolverSession {
 
+       // Property name constants
+       private static final String PROP_contextBeanStore = "context.beanStore";
+       private static final String PROP_sessionBeanStore = "session.beanStore";
+       private static final String PROP_var = "var";
+
        private static final AsciiSet AS1 = AsciiSet.of("\\{");
        private static final AsciiSet AS2 = AsciiSet.of("\\${}");
 
@@ -442,9 +447,9 @@ public class VarResolverSession {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("context.beanStore", this.context.beanStore)
-                       .a("var", this.context.getVarMap().keySet())
-                       .a("session.beanStore", beanStore);
+                       .a(PROP_contextBeanStore, this.context.beanStore)
+                       .a(PROP_var, this.context.getVarMap().keySet())
+                       .a(PROP_sessionBeanStore, beanStore);
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
index 57d6d3714a..2e69aec968 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
@@ -55,6 +55,10 @@ import org.apache.juneau.parser.*;
 @SuppressWarnings("java:S115")
 public class UonParser extends ReaderParser implements HttpPartParser, 
UonMetaProvider {
 
+       // Property name constants
+       private static final String PROP_decoding = "decoding";
+       private static final String PROP_validateEnd = "validateEnd";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_copyFrom = "copyFrom";
 
@@ -858,7 +862,7 @@ public class UonParser extends ReaderParser implements 
HttpPartParser, UonMetaPr
        @Override /* Overridden from ReaderParser */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("decoding", decoding)
-                       .a("validateEnd", validateEnd);
+                       .a(PROP_decoding, decoding)
+                       .a(PROP_validateEnd, validateEnd);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
index 81e3e5c0fa..b9ccb1d472 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
@@ -52,6 +52,9 @@ import org.apache.juneau.swap.*;
 @SuppressWarnings({ "unchecked", "rawtypes", "resource" })
 public class UonParserSession extends ReaderParserSession implements 
HttpPartParserSession {
 
+       // Property name constants
+       private static final String PROP_decoding = "decoding";
+
        /**
         * Builder class.
         */
@@ -970,6 +973,6 @@ public class UonParserSession extends ReaderParserSession 
implements HttpPartPar
        @Override /* Overridden from ReaderParserSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("decoding", decoding);
+                       .a(PROP_decoding, decoding);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
index 96084d739c..6ad168f80a 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
@@ -140,6 +140,11 @@ import org.apache.juneau.serializer.*;
 @SuppressWarnings({"java:S110", "java:S115"})
 public class UonSerializer extends WriterSerializer implements 
HttpPartSerializer, UonMetaProvider {
 
+       // Property name constants
+       private static final String PROP_addBeanTypes = "addBeanTypes";
+       private static final String PROP_encoding = "encoding";
+       private static final String PROP_paramFormat = "paramFormat";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_copyFrom = "copyFrom";
@@ -1202,8 +1207,8 @@ public class UonSerializer extends WriterSerializer 
implements HttpPartSerialize
        @Override /* Overridden from WriterSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addBeanTypes", addBeanTypes2)
-                       .a("encoding", encoding)
-                       .a("paramFormat", paramFormat);
+                       .a(PROP_addBeanTypes, addBeanTypes2)
+                       .a(PROP_encoding, encoding)
+                       .a(PROP_paramFormat, paramFormat);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
index 4f5fdcd9da..69fd68f54f 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
@@ -57,6 +57,9 @@ import org.apache.juneau.uon.*;
 @SuppressWarnings("java:S110")
 public class UrlEncodingParser extends UonParser implements 
UrlEncodingMetaProvider {
 
+       // Property name constants
+       private static final String PROP_expandedParams = "expandedParams";
+
        /**
         * Builder class.
         */
@@ -756,6 +759,6 @@ public class UrlEncodingParser extends UonParser implements 
UrlEncodingMetaProvi
        @Override /* Overridden from UonParser */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("expandedParams", expandedParams);
+                       .a(PROP_expandedParams, expandedParams);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
index 9c122e1f39..ef1dccdb0c 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
@@ -134,6 +134,9 @@ import org.apache.juneau.uon.*;
 @SuppressWarnings("java:S110")
 public class UrlEncodingSerializer extends UonSerializer implements 
UrlEncodingMetaProvider {
 
+       // Property name constants
+       private static final String PROP_expandedParams = "expandedParams";
+
        /**
         * Builder class.
         */
@@ -1047,6 +1050,6 @@ public class UrlEncodingSerializer extends UonSerializer 
implements UrlEncodingM
        @Override /* Overridden from UonSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("expandedParams", expandedParams);
+                       .a(PROP_expandedParams, expandedParams);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java
index 4a66634dd1..7f749faf19 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java
@@ -50,6 +50,10 @@ import org.apache.juneau.commons.collections.*;
  */
 public class BeanDiff {
 
+       // Property name constants
+       private static final String PROP_v1 = "v1";
+       private static final String PROP_v2 = "v2";
+
        /**
         * Builder class.
         *
@@ -234,8 +238,8 @@ public class BeanDiff {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return mapb_so().buildFluent()
-                       .a("v1", v1)
-                       .a("v2", v2);
+                       .a(PROP_v1, v1)
+                       .a(PROP_v2, v2);
                // @formatter:on
        }
 
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java
index 3a2d266b6a..51b36dfc8f 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java
@@ -61,6 +61,13 @@ public class XmlParser extends ReaderParser implements 
XmlMetaProvider {
        // Argument name constants for assertArgNotNull
        private static final String ARG_copyFrom = "copyFrom";
 
+       // Property name constants
+       private static final String PROP_eventAllocator = "eventAllocator";
+       private static final String PROP_preserveRootElement = 
"preserveRootElement";
+       private static final String PROP_reporter = "reporter";
+       private static final String PROP_resolver = "resolver";
+       private static final String PROP_validating = "validating";
+
        /**
         * Builder class.
         */
@@ -885,10 +892,10 @@ public class XmlParser extends ReaderParser implements 
XmlMetaProvider {
        @Override /* Overridden from ReaderParser */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("eventAllocator", eventAllocator)
-                       .a("preserveRootElement", preserveRootElement)
-                       .a("reporter", reporter)
-                       .a("resolver", resolver)
-                       .a("validating", validating);
+                       .a(PROP_eventAllocator, eventAllocator)
+                       .a(PROP_preserveRootElement, preserveRootElement)
+                       .a(PROP_reporter, reporter)
+                       .a(PROP_resolver, resolver)
+                       .a(PROP_validating, validating);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java
index df84be7b2c..a334ec9edd 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java
@@ -137,6 +137,14 @@ import org.apache.juneau.serializer.*;
 @SuppressWarnings({"java:S110", "java:S115"})
 public class XmlSerializer extends WriterSerializer implements XmlMetaProvider 
{
 
+       // Property name constants
+       private static final String PROP_addBeanTypes = "addBeanTypes";
+       private static final String PROP_addNamespaceUrlsToRoot = 
"addNamespaceUrlsToRoot";
+       private static final String PROP_autoDetectNamespaces = 
"autoDetectNamespaces";
+       private static final String PROP_defaultNamespace = "defaultNamespace";
+       private static final String PROP_enableNamespaces = "enableNamespaces";
+       private static final String PROP_namespaces = "namespaces";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_copyFrom = "copyFrom";
        private static final String ARG_builder = "builder";
@@ -1358,11 +1366,11 @@ public class XmlSerializer extends WriterSerializer 
implements XmlMetaProvider {
        @Override /* Overridden from WriterSerializer */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("addBeanTypes", addBeanTypes2)
-                       .a("addNamespaceUrlsToRoot", addNamespaceUrlsToRoot)
-                       .a("autoDetectNamespaces", autoDetectNamespaces)
-                       .a("defaultNamespace", defaultNamespace)
-                       .a("enableNamespaces", enableNamespaces)
-                       .a("namespaces", namespaces);
+                       .a(PROP_addBeanTypes, addBeanTypes2)
+                       .a(PROP_addNamespaceUrlsToRoot, addNamespaceUrlsToRoot)
+                       .a(PROP_autoDetectNamespaces, autoDetectNamespaces)
+                       .a(PROP_defaultNamespace, defaultNamespace)
+                       .a(PROP_enableNamespaces, enableNamespaces)
+                       .a(PROP_namespaces, namespaces);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/BeanExample.java
 
b/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/BeanExample.java
index e074ecf77a..82be5f25ef 100644
--- 
a/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/BeanExample.java
+++ 
b/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/BeanExample.java
@@ -35,6 +35,8 @@ import org.apache.juneau.json.*;
 public class BeanExample {
 
        private static final String CONST_timestamp = "2016-12-31T05:02:03Z";
+       private static final String EXAMPLE_URL_FOO_ORG = "http://foo.org/";;
+       private static final String EXAMPLE_URL_WWW_FOO_ORG = 
"http://www.foo.org/";;
 
        /**
         * DTO Samples
@@ -111,11 +113,11 @@ public class BeanExample {
                        feed("tag:foo.org", "Title", CONST_timestamp)
                        .setSubtitle(text("html").setText("Subtitle"))
                        .setLinks(
-                               link("alternate", "text/html", 
"http://foo.org/";).setHreflang("en"),
+                               link("alternate", "text/html", 
EXAMPLE_URL_FOO_ORG).setHreflang("en"),
                                link("self", "application/atom+xml", 
"http://foo.org/feed.atom";)
                        )
                        .setGenerator(
-                               generator("Example 
Toolkit").setUri("http://www.foo.org/";).setVersion("1.0")
+                               generator("Example 
Toolkit").setUri(EXAMPLE_URL_WWW_FOO_ORG).setVersion("1.0")
                        )
                        .setEntries(
                                entry("tag:foo.org", "Title", CONST_timestamp)
@@ -125,7 +127,7 @@ public class BeanExample {
                                )
                                .setPublished(CONST_timestamp)
                                .setAuthors(
-                                       person("John Smith").setUri(new 
URI("http://foo.org/";)).setEmail("[email protected]")
+                                       person("John Smith").setUri(new 
URI(EXAMPLE_URL_FOO_ORG)).setEmail("[email protected]")
                                )
                                .setContributors(
                                        person("John Smith"),
@@ -134,7 +136,7 @@ public class BeanExample {
                                .setContent(
                                        content("xhtml")
                                        .setLang("en")
-                                       .setBase("http://foo.org/";)
+                                       .setBase(EXAMPLE_URL_FOO_ORG)
                                        .setText("<div><p><i>[Sample 
content]</i></p></div>")
                                )
                        );
diff --git 
a/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/atom/AtomFeed.java
 
b/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/atom/AtomFeed.java
index 99634d5fb5..16fbc73b9d 100644
--- 
a/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/atom/AtomFeed.java
+++ 
b/juneau-examples/juneau-examples-core/src/main/java/org/apache/juneau/examples/bean/atom/AtomFeed.java
@@ -30,6 +30,8 @@ import org.apache.juneau.bean.atom.*;
 public class AtomFeed {
 
        private static final String CONST_timestamp = "2016-12-31T05:02:03Z";
+       private static final String EXAMPLE_URL_FOO_ORG = "http://foo.org/";;
+       private static final String EXAMPLE_URL_WWW_FOO_ORG = 
"http://www.foo.org/";;
 
        /**
         * @return A sample Atom feed.
@@ -41,11 +43,11 @@ public class AtomFeed {
                        feed("tag:foo.org", "Title", CONST_timestamp)
                        .setSubtitle(text("html").setText("Subtitle"))
                        .setLinks(
-                               link("alternate", "text/html", 
"http://foo.org/";).setHreflang("en"),
+                               link("alternate", "text/html", 
EXAMPLE_URL_FOO_ORG).setHreflang("en"),
                                link("self", "application/atom+xml", 
"http://foo.org/feed.atom";)
                        )
                        .setGenerator(
-                               generator("Example 
Toolkit").setUri("http://www.foo.org/";).setVersion("1.0")
+                               generator("Example 
Toolkit").setUri(EXAMPLE_URL_WWW_FOO_ORG).setVersion("1.0")
                        )
                        .setEntries(
                                entry("tag:foo.org", "Title", CONST_timestamp)
@@ -55,7 +57,7 @@ public class AtomFeed {
                                )
                                .setPublished(CONST_timestamp)
                                .setAuthors(
-                                       person("John Smith").setUri(new 
URI("http://foo.org/";)).setEmail("[email protected]")
+                                       person("John Smith").setUri(new 
URI(EXAMPLE_URL_FOO_ORG)).setEmail("[email protected]")
                                )
                                .setContributors(
                                        person("John Smith"),
@@ -64,7 +66,7 @@ public class AtomFeed {
                                .setContent(
                                        content("xhtml")
                                        .setLang("en")
-                                       .setBase("http://foo.org/";)
+                                       .setBase(EXAMPLE_URL_FOO_ORG)
                                        .setText("<div><p><i>[Sample 
content]</i></p></div>")
                                )
                        );
diff --git 
a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/dto/AtomFeedResource.java
 
b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/dto/AtomFeedResource.java
index 29eb66ed97..4d73f8638e 100644
--- 
a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/dto/AtomFeedResource.java
+++ 
b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/dto/AtomFeedResource.java
@@ -69,6 +69,8 @@ public class AtomFeedResource extends BasicRestServlet {
        private static final long serialVersionUID = 1L;
 
        private static final String CONST_timestamp = "2016-12-31T05:02:03Z";
+       private static final String EXAMPLE_URL_FOO_ORG = "http://foo.org/";;
+       private static final String EXAMPLE_URL_WWW_FOO_ORG = 
"http://www.foo.org/";;
 
        private Feed feed;     // The root resource object
 
@@ -90,11 +92,11 @@ public class AtomFeedResource extends BasicRestServlet {
                                feed("tag:foo.org", "Title", CONST_timestamp)
                                .setSubtitle(text("html").setText("Subtitle"))
                                .setLinks(
-                                       link("alternate", "text/html", 
"http://foo.org/";).setHreflang("en"),
+                                       link("alternate", "text/html", 
EXAMPLE_URL_FOO_ORG).setHreflang("en"),
                                        link("self", "application/atom+xml", 
"http://foo.org/feed.atom";)
                                )
                                .setGenerator(
-                                       generator("Example 
Toolkit").setUri("http://www.foo.org/";).setVersion("1.0")
+                                       generator("Example 
Toolkit").setUri(EXAMPLE_URL_WWW_FOO_ORG).setVersion("1.0")
                                )
                                .setEntries(
                                        entry("tag:foo.org", "Title", 
CONST_timestamp)
@@ -104,7 +106,7 @@ public class AtomFeedResource extends BasicRestServlet {
                                        )
                                        .setPublished(CONST_timestamp)
                                        .setAuthors(
-                                               person("John Smith").setUri(new 
URI("http://foo.org/";)).setEmail("[email protected]")
+                                               person("John Smith").setUri(new 
URI(EXAMPLE_URL_FOO_ORG)).setEmail("[email protected]")
                                        )
                                        .setContributors(
                                                person("John Smith"),
@@ -113,7 +115,7 @@ public class AtomFeedResource extends BasicRestServlet {
                                        .setContent(
                                                content("xhtml")
                                                .setLang("en")
-                                               .setBase("http://foo.org/";)
+                                               .setBase(EXAMPLE_URL_FOO_ORG)
                                                .setText("<div><p><i>[Sample 
content]</i></p></div>")
                                        )
                                );
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
index 4d39743299..300a53fb95 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
@@ -1052,6 +1052,18 @@ import org.apache.juneau.xml.*;
 @SuppressWarnings({"resource", "java:S115"})
 public class RestClient extends BeanContextable implements HttpClient, 
Closeable {
 
+       // Property name constants
+       private static final String PROP_errorCodes = "errorCodes";
+       private static final String PROP_executorService = "executorService";
+       private static final String PROP_executorServiceShutdownOnClose = 
"executorServiceShutdownOnClose";
+       private static final String PROP_headerData = "headerData";
+       private static final String PROP_interceptors = "interceptors";
+       private static final String PROP_keepHttpClientOpen = 
"keepHttpClientOpen";
+       private static final String PROP_partParser = "partParser";
+       private static final String PROP_partSerializer = "partSerializer";
+       private static final String PROP_queryData = "queryData";
+       private static final String PROP_rootUrl = "rootUrl";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_itcp = "itcp";
        private static final String ARG_value = "value";
@@ -7955,16 +7967,16 @@ public class RestClient extends BeanContextable 
implements HttpClient, Closeable
        @Override /* Overridden from BeanContextable */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("errorCodes", errorCodes)
-                       .a("executorService", executorService.get())
-                       .a("executorServiceShutdownOnClose", 
executorServiceShutdownOnClose)
-                       .a("headerData", headerData)
-                       .a("interceptors", interceptors)
-                       .a("keepHttpClientOpen", keepHttpClientOpen)
-                       .a("partParser", partParser)
-                       .a("partSerializer", partSerializer)
-                       .a("queryData", queryData)
-                       .a("rootUrl", rootUrl);
+                       .a(PROP_errorCodes, errorCodes)
+                       .a(PROP_executorService, executorService.get())
+                       .a(PROP_executorServiceShutdownOnClose, 
executorServiceShutdownOnClose)
+                       .a(PROP_headerData, headerData)
+                       .a(PROP_interceptors, interceptors)
+                       .a(PROP_keepHttpClientOpen, keepHttpClientOpen)
+                       .a(PROP_partParser, partParser)
+                       .a(PROP_partSerializer, partSerializer)
+                       .a(PROP_queryData, queryData)
+                       .a(PROP_rootUrl, rootUrl);
        }
 
        /**
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestRequest.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestRequest.java
index 9f1d533027..d4ce9489ea 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestRequest.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestRequest.java
@@ -101,6 +101,13 @@ import org.apache.juneau.xml.*;
 @SuppressWarnings({"java:S115", "resource"})
 public class RestRequest extends BeanSession implements HttpUriRequest, 
Configurable, AutoCloseable {
 
+       // Property name constants
+       private static final String PROP_ignoreErrors = "ignoreErrors";
+       private static final String PROP_interceptors = "interceptors";
+       private static final String PROP_requestBodySchema = 
"requestBodySchema";
+       private static final String PROP_response = "response";
+       private static final String PROP_serializer = "serializer";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_client = "client";
        private static final String ARG_method = "method";
@@ -2507,11 +2514,11 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
        protected FluentMap<String,Object> properties() {
                return super.properties()
                        .a(ARG_client, client.properties())
-                       .a("ignoreErrors", ignoreErrors)
-                       .a("interceptors", interceptors)
-                       .a("requestBodySchema", contentSchema)
-                       .a("response", response)
-                       .a("serializer", serializer);
+                       .a(PROP_ignoreErrors, ignoreErrors)
+                       .a(PROP_interceptors, interceptors)
+                       .a(PROP_requestBodySchema, contentSchema)
+                       .a(PROP_response, response)
+                       .a(PROP_serializer, serializer);
        }
 
        RestRequest formDataArg(String name, Object value, HttpPartSchema 
schema, HttpPartSerializer serializer, boolean skipIfEmpty) {
diff --git 
a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock/MockPathResolver.java
 
b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock/MockPathResolver.java
index 8349f43b9a..6038ded7d6 100644
--- 
a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock/MockPathResolver.java
+++ 
b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock/MockPathResolver.java
@@ -37,6 +37,14 @@ import org.apache.juneau.rest.util.*;
  */
 class MockPathResolver {
 
+       // Property name constants
+       private static final String PROP_contextPath = "contextPath";
+       private static final String PROP_error = "error";
+       private static final String PROP_remainder = "remainder";
+       private static final String PROP_servletPath = "servletPath";
+       private static final String PROP_target = "target";
+       private static final String PROP_uri = "uri";
+
        private static String fixSegment(String s, Map<String,Object> pathVars) 
{
                s = formatNamed(emptyIfNull(s), pathVars);
                if (s.isEmpty() || s.equals("/"))
@@ -125,12 +133,12 @@ class MockPathResolver {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("contextPath", contextPath)
-                       .a("error", error)
-                       .a("remainder", remainder)
-                       .a("servletPath", servletPath)
-                       .a("target", target)
-                       .a("uri", uri);
+                       .a(PROP_contextPath, contextPath)
+                       .a(PROP_error, error)
+                       .a(PROP_remainder, remainder)
+                       .a(PROP_servletPath, servletPath)
+                       .a(PROP_target, target)
+                       .a(PROP_uri, uri);
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java
index d45a268aa0..137d63d420 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java
@@ -126,6 +126,30 @@ import jakarta.servlet.http.*;
 @SuppressWarnings("java:S115")
 public class RestContext extends Context {
 
+       // Property name constants
+       private static final String PROP_allowContentParam = 
"allowContentParam";
+       private static final String PROP_allowedHeaderParams = 
"allowedHeaderParams";
+       private static final String PROP_allowedMethodHeader = 
"allowedMethodHeader";
+       private static final String PROP_allowedMethodParams = 
"allowedMethodParams";
+       private static final String PROP_beanStore = "beanStore";
+       private static final String PROP_clientVersionHeader = 
"clientVersionHeader";
+       private static final String PROP_consumes = "consumes";
+       private static final String PROP_defaultRequestAttributes = 
"defaultRequestAttributes";
+       private static final String PROP_defaultRequestHeaders = 
"defaultRequestHeaders";
+       private static final String PROP_defaultResponseHeaders = 
"defaultResponseHeaders";
+       private static final String PROP_partParser = "partParser";
+       private static final String PROP_partSerializer = "partSerializer";
+       private static final String PROP_produces = "produces";
+       private static final String PROP_renderResponseStackTraces = 
"renderResponseStackTraces";
+       private static final String PROP_responseProcessors = 
"responseProcessors";
+       private static final String PROP_restOpArgs = "restOpArgs";
+       private static final String PROP_staticFiles = "staticFiles";
+       private static final String PROP_swaggerProvider = "swaggerProvider";
+       private static final String PROP_uriAuthority = "uriAuthority";
+       private static final String PROP_uriContext = "uriContext";
+       private static final String PROP_uriRelativity = "uriRelativity";
+       private static final String PROP_uriResolution = "uriResolution";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_value = "value";
        private static final String ARG_path = "path";
@@ -134,11 +158,6 @@ public class RestContext extends Context {
        private static final String ARG_type = "type";
        private static final String ARG_restContext = "restContext";
 
-       // Property name constants
-       private static final String PROP_defaultRequestAttributes = 
"defaultRequestAttributes";
-       private static final String PROP_defaultRequestHeaders = 
"defaultRequestHeaders";
-       private static final String PROP_defaultResponseHeaders = 
"defaultResponseHeaders";
-
        /**
         * Builder class.
         */
@@ -6194,27 +6213,27 @@ public class RestContext extends Context {
        @Override /* Overridden from Context */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("allowContentParam", allowContentParam)
-                       .a("allowedHeaderParams", allowedHeaderParams)
-                       .a("allowedMethodHeader", allowedMethodHeaders)
-                       .a("allowedMethodParams", allowedMethodParams)
-                       .a("beanStore", beanStore)
-                       .a("clientVersionHeader", clientVersionHeader)
-                       .a("consumes", consumes)
+                       .a(PROP_allowContentParam, allowContentParam)
+                       .a(PROP_allowedHeaderParams, allowedHeaderParams)
+                       .a(PROP_allowedMethodHeader, allowedMethodHeaders)
+                       .a(PROP_allowedMethodParams, allowedMethodParams)
+                       .a(PROP_beanStore, beanStore)
+                       .a(PROP_clientVersionHeader, clientVersionHeader)
+                       .a(PROP_consumes, consumes)
                        .a(PROP_defaultRequestHeaders, defaultRequestHeaders)
                        .a(PROP_defaultResponseHeaders, defaultResponseHeaders)
-                       .a("partParser", partParser)
-                       .a("partSerializer", partSerializer)
-                       .a("produces", produces)
-                       .a("renderResponseStackTraces", 
renderResponseStackTraces)
-                       .a("responseProcessors", responseProcessors)
-                       .a("restOpArgs", restOpArgs)
-                       .a("staticFiles", staticFiles)
-                       .a("swaggerProvider", swaggerProvider)
-                       .a("uriAuthority", uriAuthority)
-                       .a("uriContext", uriContext)
-                       .a("uriRelativity", uriRelativity)
-                       .a("uriResolution", uriResolution);
+                       .a(PROP_partParser, partParser)
+                       .a(PROP_partSerializer, partSerializer)
+                       .a(PROP_produces, produces)
+                       .a(PROP_renderResponseStackTraces, 
renderResponseStackTraces)
+                       .a(PROP_responseProcessors, responseProcessors)
+                       .a(PROP_restOpArgs, restOpArgs)
+                       .a(PROP_staticFiles, staticFiles)
+                       .a(PROP_swaggerProvider, swaggerProvider)
+                       .a(PROP_uriAuthority, uriAuthority)
+                       .a(PROP_uriContext, uriContext)
+                       .a(PROP_uriRelativity, uriRelativity)
+                       .a(PROP_uriResolution, uriResolution);
        }
 
        /**
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpContext.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpContext.java
index 5690a6e1bc..c8dc56466c 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpContext.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpContext.java
@@ -83,6 +83,12 @@ import jakarta.servlet.http.*;
 @SuppressWarnings("java:S115")
 public class RestOpContext extends Context implements 
Comparable<RestOpContext> {
 
+       // Property name constants
+       private static final String PROP_defaultRequestFormData = 
"defaultRequestFormData";
+       private static final String PROP_defaultRequestHeaders = 
"defaultRequestHeaders";
+       private static final String PROP_defaultRequestQueryData = 
"defaultRequestQueryData";
+       private static final String PROP_httpMethod = "httpMethod";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_beanType = "beanType";
        private static final String ARG_value = "value";
@@ -2609,10 +2615,10 @@ public class RestOpContext extends Context implements 
Comparable<RestOpContext>
        @Override /* Overridden from Context */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("defaultRequestFormData", defaultRequestFormData)
-                       .a("defaultRequestHeaders", defaultRequestHeaders)
-                       .a("defaultRequestQueryData", defaultRequestQueryData)
-                       .a("httpMethod", httpMethod);
+                       .a(PROP_defaultRequestFormData, defaultRequestFormData)
+                       .a(PROP_defaultRequestHeaders, defaultRequestHeaders)
+                       .a(PROP_defaultRequestQueryData, 
defaultRequestQueryData)
+                       .a(PROP_httpMethod, httpMethod);
        }
 
        RestConverter[] getConverters() { return converters; }
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpSession.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpSession.java
index 93b03070c0..8c8b835555 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpSession.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOpSession.java
@@ -41,6 +41,10 @@ import org.apache.juneau.rest.logger.*;
 @SuppressWarnings("java:S115")
 public class RestOpSession extends ContextSession {
 
+       // Property name constants
+       private static final String PROP_ctx = "ctx";
+       private static final String PROP_session = "session";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
        private static final String ARG_session = "session";
@@ -230,7 +234,7 @@ public class RestOpSession extends ContextSession {
        @Override /* Overridden from ContextSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("ctx", ctx)
-                       .a(ARG_session, session);
+                       .a(PROP_ctx, ctx)
+                       .a(PROP_session, session);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestSession.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestSession.java
index 4703663727..9370d656a6 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestSession.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestSession.java
@@ -46,6 +46,10 @@ import jakarta.servlet.http.*;
 @SuppressWarnings("java:S115")
 public class RestSession extends ContextSession {
 
+       // Property name constants
+       private static final String PROP_context = "context";
+       private static final String PROP_resource = "resource";
+
        // Argument name constants for assertArgNotNull
        private static final String ARG_ctx = "ctx";
        private static final String ARG_value = "value";
@@ -564,7 +568,7 @@ public class RestSession extends ContextSession {
        @Override /* Overridden from ContextSession */
        protected FluentMap<String,Object> properties() {
                return super.properties()
-                       .a("context", context)
-                       .a("resource", resource);
+                       .a(PROP_context, context)
+                       .a(PROP_resource, resource);
        }
 }
\ No newline at end of file
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/debug/DebugEnablement.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/debug/DebugEnablement.java
index 32d02ea79b..a89734da24 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/debug/DebugEnablement.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/debug/DebugEnablement.java
@@ -41,6 +41,11 @@ import jakarta.servlet.http.*;
  */
 public abstract class DebugEnablement {
 
+       // Property name constants
+       private static final String PROP_conditionalPredicate = 
"conditionalPredicate";
+       private static final String PROP_defaultEnablement = 
"defaultEnablement";
+       private static final String PROP_enablementMap = "enablementMap";
+
        private static final String HEADER_Debug = "Debug";
 
        /**
@@ -280,9 +285,9 @@ public abstract class DebugEnablement {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("conditionalPredicate", conditionalPredicate)
-                       .a("defaultEnablement", defaultEnablement)
-                       .a("enablementMap", enablementMap);
+                       .a(PROP_conditionalPredicate, conditionalPredicate)
+                       .a(PROP_defaultEnablement, defaultEnablement)
+                       .a(PROP_enablementMap, enablementMap);
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLogger.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLogger.java
index 6efec8820b..23c34f0b7e 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLogger.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLogger.java
@@ -96,6 +96,16 @@ import jakarta.servlet.http.*;
  */
 public class CallLogger {
 
+       // Property name constants
+       private static final String PROP_debugRules = "debugRules";
+       private static final String PROP_enabled = "enabled";
+       private static final String PROP_level = "level";
+       private static final String PROP_logger = "logger";
+       private static final String PROP_normalRules = "normalRules";
+       private static final String PROP_requestDetail = "requestDetail";
+       private static final String PROP_responseDetail = "responseDetail";
+       private static final String PROP_thrownStore = "thrownStore";
+
        /**
         * Builder class.
         */
@@ -663,14 +673,14 @@ public class CallLogger {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("debugRules", debugRules)
-                       .a("enabled", enabled)
-                       .a("level", level)
-                       .a("logger", logger)
-                       .a("normalRules", normalRules)
-                       .a("requestDetail", requestDetail)
-                       .a("responseDetail", responseDetail)
-                       .a("thrownStore", thrownStore);
+                       .a(PROP_debugRules, debugRules)
+                       .a(PROP_enabled, enabled)
+                       .a(PROP_level, level)
+                       .a(PROP_logger, logger)
+                       .a(PROP_normalRules, normalRules)
+                       .a(PROP_requestDetail, requestDetail)
+                       .a(PROP_responseDetail, responseDetail)
+                       .a(PROP_thrownStore, thrownStore);
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLoggerRule.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLoggerRule.java
index edc37b5561..4e1efc1e1d 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLoggerRule.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logger/CallLoggerRule.java
@@ -37,6 +37,17 @@ import jakarta.servlet.http.*;
  */
 public class CallLoggerRule {
 
+       // Property name constants
+       private static final String PROP_codeFilter = "codeFilter";
+       private static final String PROP_enabled = "enabled";
+       private static final String PROP_enabledTest = "enabledTest";
+       private static final String PROP_exceptionFilter = "exceptionFilter";
+       private static final String PROP_level = "level";
+       private static final String PROP_requestDetail = "requestDetail";
+       private static final String PROP_requestFilter = "requestFilter";
+       private static final String PROP_responseDetail = "responseDetail";
+       private static final String PROP_responseFilter = "responseFilter";
+
        /**
         * Builder class.
         */
@@ -396,15 +407,15 @@ public class CallLoggerRule {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("codeFilter", statusFilter)
-                       .a("enabled", enabled)
-                       .a("enabledTest", enabledTest)
-                       .a("exceptionFilter", exceptionFilter)
-                       .a("level", level)
-                       .a("requestDetail", requestDetail)
-                       .a("requestFilter", requestFilter)
-                       .a("responseDetail", responseDetail)
-                       .a("responseFilter", responseFilter);
+                       .a(PROP_codeFilter, statusFilter)
+                       .a(PROP_enabled, enabled)
+                       .a(PROP_enabledTest, enabledTest)
+                       .a(PROP_exceptionFilter, exceptionFilter)
+                       .a(PROP_level, level)
+                       .a(PROP_requestDetail, requestDetail)
+                       .a(PROP_requestFilter, requestFilter)
+                       .a(PROP_responseDetail, responseDetail)
+                       .a(PROP_responseFilter, responseFilter);
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/staticfile/BasicStaticFiles.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/staticfile/BasicStaticFiles.java
index 330d05c72b..6fe5555802 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/staticfile/BasicStaticFiles.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/staticfile/BasicStaticFiles.java
@@ -47,6 +47,9 @@ import org.apache.juneau.rest.*;
 @SuppressWarnings("resource")
 public class BasicStaticFiles implements StaticFiles {
 
+       // Property name constants
+       private static final String PROP_headers = "headers";
+
        /**
         * Creates a new builder for this object.
         *
@@ -154,7 +157,7 @@ public class BasicStaticFiles implements StaticFiles {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("headers", headers);
+                       .a(PROP_headers, headers);
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/MethodExecStats.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/MethodExecStats.java
index 54cbad19b4..e0c6edacaf 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/MethodExecStats.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/MethodExecStats.java
@@ -38,6 +38,18 @@ import org.apache.juneau.cp.*;
  */
 public class MethodExecStats {
 
+       // Property name constants
+       private static final String PROP_avgTime = "avgTime";
+       private static final String PROP_errors = "errors";
+       private static final String PROP_guid = "guid";
+       private static final String PROP_maxTime = "maxTime";
+       private static final String PROP_method = "method";
+       private static final String PROP_minTime = "minTime";
+       private static final String PROP_running = "running";
+       private static final String PROP_runs = "runs";
+       private static final String PROP_thrownStore = "thrownStore";
+       private static final String PROP_totalTime = "totalTime";
+
        /**
         * Builder class.
         */
@@ -255,16 +267,16 @@ public class MethodExecStats {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("avgTime", getAvgTime())
-                       .a("errors", getErrors())
-                       .a("guid", guid)
-                       .a("maxTime", getMaxTime())
-                       .a("method", method)
-                       .a("minTime", getMinTime())
-                       .a("running", getRunning())
-                       .a("runs", getRuns())
-                       .a("thrownStore", thrownStore)
-                       .a("totalTime", getTotalTime());
+                       .a(PROP_avgTime, getAvgTime())
+                       .a(PROP_errors, getErrors())
+                       .a(PROP_guid, guid)
+                       .a(PROP_maxTime, getMaxTime())
+                       .a(PROP_method, method)
+                       .a(PROP_minTime, getMinTime())
+                       .a(PROP_running, getRunning())
+                       .a(PROP_runs, getRuns())
+                       .a(PROP_thrownStore, thrownStore)
+                       .a(PROP_totalTime, getTotalTime());
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/ThrownStats.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/ThrownStats.java
index 817d462fb4..e0266f1fed 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/ThrownStats.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/stats/ThrownStats.java
@@ -34,6 +34,17 @@ import org.apache.juneau.cp.*;
  */
 public class ThrownStats implements Cloneable {
 
+       // Property name constants
+       private static final String PROP_causedBy = "causedBy";
+       private static final String PROP_count = "count";
+       private static final String PROP_firstMessage = "firstMessage";
+       private static final String PROP_firstOccurrence = "firstOccurrence";
+       private static final String PROP_guid = "guid";
+       private static final String PROP_hash = "hash";
+       private static final String PROP_lastOccurrence = "lastOccurrence";
+       private static final String PROP_stackTrace = "stackTrace";
+       private static final String PROP_thrownClass = "thrownClass";
+
        /**
         * Builder class.
         */
@@ -271,15 +282,15 @@ public class ThrownStats implements Cloneable {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("causedBy", causedBy.orElse(null))
-                       .a("count", getCount())
-                       .a("firstMessage", firstMessage)
-                       .a("firstOccurrence", getFirstOccurrence())
-                       .a("guid", guid)
-                       .a("hash", hash)
-                       .a("lastOccurrence", getLastOccurrence())
-                       .a("stackTrace", stackTrace)
-                       .a("thrownClass", thrownClass);
+                       .a(PROP_causedBy, causedBy.orElse(null))
+                       .a(PROP_count, getCount())
+                       .a(PROP_firstMessage, firstMessage)
+                       .a(PROP_firstOccurrence, getFirstOccurrence())
+                       .a(PROP_guid, guid)
+                       .a(PROP_hash, hash)
+                       .a(PROP_lastOccurrence, getLastOccurrence())
+                       .a(PROP_stackTrace, stackTrace)
+                       .a(PROP_thrownClass, thrownClass);
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPath.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPath.java
index fcb4127172..6bd63d4809 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPath.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPath.java
@@ -32,6 +32,10 @@ import org.apache.juneau.commons.utils.*;
  */
 public class UrlPath {
 
+       // Property name constants
+       private static final String PROP_parts = "parts";
+       private static final String PROP_raw = "raw";
+
        /**
         * Creates a new parsed {@link UrlPath} object from the specified 
string.
         *
@@ -101,8 +105,8 @@ public class UrlPath {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("parts", parts)
-                       .a("raw", path);
+                       .a(PROP_parts, parts)
+                       .a(PROP_raw, path);
                // @formatter:on
        }
 
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPathMatch.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPathMatch.java
index a4adc709b4..0e0687e3f3 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPathMatch.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/util/UrlPathMatch.java
@@ -34,6 +34,10 @@ import org.apache.juneau.commons.utils.*;
  */
 public class UrlPathMatch {
 
+       // Property name constants
+       private static final String PROP_r = "r";
+       private static final String PROP_v = "v";
+
        private final int matchedParts;
        private final String path;
        private final Map<String,String> vars;
@@ -137,8 +141,8 @@ public class UrlPathMatch {
        protected FluentMap<String,Object> properties() {
                // @formatter:off
                return filteredBeanPropertyMap()
-                       .a("r", getRemainder())
-                       .a("v", getVars());
+                       .a(PROP_r, getRemainder())
+                       .a(PROP_v, getVars());
                // @formatter:on
        }
 

Reply via email to