diff --git a/docs/generators/java.md b/docs/generators/java.md
index 62f31a5020a..a620205f723 100644
--- a/docs/generators/java.md
+++ b/docs/generators/java.md
@@ -304,7 +304,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|Nullable|✓|OAS3
|OneOf|✓|OAS3
|Pattern|✓|OAS2,OAS3
-|PatternProperties|✗|OAS3
+|PatternProperties|✓|OAS3
|PrefixItems|✗|OAS3
|Properties|✓|OAS2,OAS3
|PropertyNames|✓|OAS3
diff --git a/samples/client/3_0_3_unit_test/java/.openapi-generator/FILES b/samples/client/3_0_3_unit_test/java/.openapi-generator/FILES
index 84896bf3af2..cb9d2945326 100644
--- a/samples/client/3_0_3_unit_test/java/.openapi-generator/FILES
+++ b/samples/client/3_0_3_unit_test/java/.openapi-generator/FILES
@@ -257,6 +257,7 @@ src/main/java/org/openapijsonschematools/client/schemas/validation/NullValueMeth
src/main/java/org/openapijsonschematools/client/schemas/validation/NumberSchemaValidator.java
src/main/java/org/openapijsonschematools/client/schemas/validation/OneOfValidator.java
src/main/java/org/openapijsonschematools/client/schemas/validation/PathToSchemasMap.java
+src/main/java/org/openapijsonschematools/client/schemas/validation/PatternPropertiesValidator.java
src/main/java/org/openapijsonschematools/client/schemas/validation/PatternValidator.java
src/main/java/org/openapijsonschematools/client/schemas/validation/PropertiesValidator.java
src/main/java/org/openapijsonschematools/client/schemas/validation/PropertyEntry.java
diff --git a/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternIsNotAnchored.md b/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternIsNotAnchored.md
index aeb4f6987b1..9ab179eb48d 100644
--- a/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternIsNotAnchored.md
+++ b/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternIsNotAnchored.md
@@ -19,7 +19,7 @@ A schema class that validates payloads
### Field Summary
| Modifier and Type | Field and Description |
| ----------------- | ---------------------- |
-| Pattern | pattern =
"a+"
)))
|
+| Pattern | pattern = Pattern.compile(
"a+"
)
|
### Method Summary
| Modifier and Type | Method and Description |
diff --git a/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternValidation.md b/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternValidation.md
index 5ec6df41670..5667d79b7b4 100644
--- a/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternValidation.md
+++ b/samples/client/3_0_3_unit_test/java/docs/components/schemas/PatternValidation.md
@@ -19,7 +19,7 @@ A schema class that validates payloads
### Field Summary
| Modifier and Type | Field and Description |
| ----------------- | ---------------------- |
-| Pattern | pattern =
"^a*$"
)))
|
+| Pattern | pattern = Pattern.compile(
"^a*$"
)
|
### Method Summary
| Modifier and Type | Method and Description |
diff --git a/samples/client/3_0_3_unit_test/java/src/main/java/org/openapijsonschematools/client/schemas/validation/AdditionalPropertiesValidator.java b/samples/client/3_0_3_unit_test/java/src/main/java/org/openapijsonschematools/client/schemas/validation/AdditionalPropertiesValidator.java
index 550b384d702..81adeddb054 100644
--- a/samples/client/3_0_3_unit_test/java/src/main/java/org/openapijsonschematools/client/schemas/validation/AdditionalPropertiesValidator.java
+++ b/samples/client/3_0_3_unit_test/java/src/main/java/org/openapijsonschematools/client/schemas/validation/AdditionalPropertiesValidator.java
@@ -19,7 +19,8 @@ public AdditionalPropertiesValidator(Class extends JsonSchema> additionalPrope
JsonSchema schema,
@Nullable Object arg,
ValidationMetadata validationMetadata,
- @Nullable List containsPathToSchemas
+ @Nullable List containsPathToSchemas,
+ @Nullable PathToSchemasMap patternPropertiesPathToSchemas
) {
if (!(arg instanceof Map, ?> mapArg)) {
return null;
@@ -34,11 +35,13 @@ public AdditionalPropertiesValidator(Class extends JsonSchema> additionalPrope
presentAdditionalProperties.removeAll(schema.properties.keySet());
}
PathToSchemasMap pathToSchemas = new PathToSchemasMap();
- // todo add handling for validatedPatternProperties
for(String addPropName: presentAdditionalProperties) {
@Nullable Object propValue = mapArg.get(addPropName);
List