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

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 38596976cc2 CAMEL-21482: camel-jaxb - JaxbDataFormat ignoreJAXBElement 
is default true
38596976cc2 is described below

commit 38596976cc25602aead62ccf908fea3b211ac38c
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Thu Nov 28 09:47:30 2024 +0100

    CAMEL-21482: camel-jaxb - JaxbDataFormat ignoreJAXBElement is default true
---
 .../org/apache/camel/catalog/dataformats/jaxb.json          |  2 +-
 .../resources/org/apache/camel/catalog/models/jaxb.json     |  2 +-
 .../org/apache/camel/catalog/schemas/camel-spring.xsd       |  2 +-
 .../META-INF/org/apache/camel/converter/jaxb/jaxb.json      |  2 +-
 .../org/apache/camel/converter/jaxb/JaxbDataFormat.java     |  2 +-
 .../META-INF/org/apache/camel/model/dataformat/jaxb.json    |  2 +-
 .../org/apache/camel/model/dataformat/JaxbDataFormat.java   |  2 +-
 .../camel/reifier/dataformat/JaxbDataFormatReifier.java     | 13 ++++++++++++-
 .../java/org/apache/camel/xml/out/ModelWriter.java          |  2 +-
 .../java/org/apache/camel/yaml/out/ModelWriter.java         |  2 +-
 10 files changed, 21 insertions(+), 10 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats/jaxb.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats/jaxb.json
index 1f185260659..6cd6e5d7b40 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats/jaxb.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats/jaxb.json
@@ -23,7 +23,7 @@
     "schemaSeverityLevel": { "index": 4, "kind": "attribute", "displayName": 
"Schema Severity Level", "group": "common", "required": false, "type": "enum", 
"javaType": "java.lang.Integer", "enum": [ "0", "1", "2" ], "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": "0", "description": 
"Sets the schema severity level to use when validating against a schema. This 
level determines the minimum severity error that triggers JAXB to stop continue 
parsing. The default val [...]
     "prettyPrint": { "index": 5, "kind": "attribute", "displayName": "Pretty 
Print", "group": "common", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "To enable pretty printing output nicely 
formatted. Is by default false." },
     "objectFactory": { "index": 6, "kind": "attribute", "displayName": "Object 
Factory", "group": "advanced", "label": "advanced", "required": false, "type": 
"boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "Whether to allow 
using ObjectFactory classes to create the POJO classes during marshalling. This 
only applies to POJO classes that has not been annotated with JAXB and 
providing jaxb.index desc [...]
-    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
+    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
     "mustBeJAXBElement": { "index": 8, "kind": "attribute", "displayName": 
"Must Be JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether marhsalling must be java objects with JAXB annotations. And if not 
then it fails. This option can be set to false to relax that, such as when the 
data is already in XML format." },
     "filterNonXmlChars": { "index": 9, "kind": "attribute", "displayName": 
"Filter Non Xml Chars", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "To 
ignore non xml characheters and replace them with an empty space." },
     "encoding": { "index": 10, "kind": "attribute", "displayName": "Encoding", 
"group": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To overrule and use a specific encoding" },
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/jaxb.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/jaxb.json
index a5157f58459..99ae59bd837 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/jaxb.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/jaxb.json
@@ -20,7 +20,7 @@
     "schemaSeverityLevel": { "index": 4, "kind": "attribute", "displayName": 
"Schema Severity Level", "group": "common", "required": false, "type": "enum", 
"javaType": "java.lang.Integer", "enum": [ "0", "1", "2" ], "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": "0", "description": 
"Sets the schema severity level to use when validating against a schema. This 
level determines the minimum severity error that triggers JAXB to stop continue 
parsing. The default val [...]
     "prettyPrint": { "index": 5, "kind": "attribute", "displayName": "Pretty 
Print", "group": "common", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "To enable pretty printing output nicely 
formatted. Is by default false." },
     "objectFactory": { "index": 6, "kind": "attribute", "displayName": "Object 
Factory", "group": "advanced", "label": "advanced", "required": false, "type": 
"boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "Whether to allow 
using ObjectFactory classes to create the POJO classes during marshalling. This 
only applies to POJO classes that has not been annotated with JAXB and 
providing jaxb.index desc [...]
-    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
+    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
     "mustBeJAXBElement": { "index": 8, "kind": "attribute", "displayName": 
"Must Be JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether marhsalling must be java objects with JAXB annotations. And if not 
then it fails. This option can be set to false to relax that, such as when the 
data is already in XML format." },
     "filterNonXmlChars": { "index": 9, "kind": "attribute", "displayName": 
"Filter Non Xml Chars", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "To 
ignore non xml characheters and replace them with an empty space." },
     "encoding": { "index": 10, "kind": "attribute", "displayName": "Encoding", 
"group": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To overrule and use a specific encoding" },
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
index fb5ec4bf5a2..16bcd286cab 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
@@ -9062,7 +9062,7 @@ classes that has not been annotated with JAXB and 
providing jaxb.index descripto
           <xs:annotation>
             <xs:documentation xml:lang="en">
 <![CDATA[
-Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases. Default value: false
+Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases. Default value: true
 ]]>
             </xs:documentation>
           </xs:annotation>
diff --git 
a/components/camel-jaxb/src/generated/resources/META-INF/org/apache/camel/converter/jaxb/jaxb.json
 
b/components/camel-jaxb/src/generated/resources/META-INF/org/apache/camel/converter/jaxb/jaxb.json
index 1f185260659..6cd6e5d7b40 100644
--- 
a/components/camel-jaxb/src/generated/resources/META-INF/org/apache/camel/converter/jaxb/jaxb.json
+++ 
b/components/camel-jaxb/src/generated/resources/META-INF/org/apache/camel/converter/jaxb/jaxb.json
@@ -23,7 +23,7 @@
     "schemaSeverityLevel": { "index": 4, "kind": "attribute", "displayName": 
"Schema Severity Level", "group": "common", "required": false, "type": "enum", 
"javaType": "java.lang.Integer", "enum": [ "0", "1", "2" ], "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": "0", "description": 
"Sets the schema severity level to use when validating against a schema. This 
level determines the minimum severity error that triggers JAXB to stop continue 
parsing. The default val [...]
     "prettyPrint": { "index": 5, "kind": "attribute", "displayName": "Pretty 
Print", "group": "common", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "To enable pretty printing output nicely 
formatted. Is by default false." },
     "objectFactory": { "index": 6, "kind": "attribute", "displayName": "Object 
Factory", "group": "advanced", "label": "advanced", "required": false, "type": 
"boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "Whether to allow 
using ObjectFactory classes to create the POJO classes during marshalling. This 
only applies to POJO classes that has not been annotated with JAXB and 
providing jaxb.index desc [...]
-    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
+    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
     "mustBeJAXBElement": { "index": 8, "kind": "attribute", "displayName": 
"Must Be JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether marhsalling must be java objects with JAXB annotations. And if not 
then it fails. This option can be set to false to relax that, such as when the 
data is already in XML format." },
     "filterNonXmlChars": { "index": 9, "kind": "attribute", "displayName": 
"Filter Non Xml Chars", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "To 
ignore non xml characheters and replace them with an empty space." },
     "encoding": { "index": 10, "kind": "attribute", "displayName": "Encoding", 
"group": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To overrule and use a specific encoding" },
diff --git 
a/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
 
b/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
index 48def5c620a..1f47c6744de 100644
--- 
a/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
+++ 
b/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
@@ -89,7 +89,7 @@ public class JaxbDataFormat extends ServiceSupport
     private String schemaLocation;
     private String noNamespaceSchemaLocation;
 
-    private boolean prettyPrint = true;
+    private boolean prettyPrint;
     private boolean objectFactory = true;
     private boolean ignoreJAXBElement = true;
     private boolean mustBeJAXBElement;
diff --git 
a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dataformat/jaxb.json
 
b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dataformat/jaxb.json
index a5157f58459..99ae59bd837 100644
--- 
a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dataformat/jaxb.json
+++ 
b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dataformat/jaxb.json
@@ -20,7 +20,7 @@
     "schemaSeverityLevel": { "index": 4, "kind": "attribute", "displayName": 
"Schema Severity Level", "group": "common", "required": false, "type": "enum", 
"javaType": "java.lang.Integer", "enum": [ "0", "1", "2" ], "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": "0", "description": 
"Sets the schema severity level to use when validating against a schema. This 
level determines the minimum severity error that triggers JAXB to stop continue 
parsing. The default val [...]
     "prettyPrint": { "index": 5, "kind": "attribute", "displayName": "Pretty 
Print", "group": "common", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "To enable pretty printing output nicely 
formatted. Is by default false." },
     "objectFactory": { "index": 6, "kind": "attribute", "displayName": "Object 
Factory", "group": "advanced", "label": "advanced", "required": false, "type": 
"boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "Whether to allow 
using ObjectFactory classes to create the POJO classes during marshalling. This 
only applies to POJO classes that has not been annotated with JAXB and 
providing jaxb.index desc [...]
-    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
+    "ignoreJAXBElement": { "index": 7, "kind": "attribute", "displayName": 
"Ignore JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether to ignore JAXBElement elements - only needed to be set to false in 
very special use-cases." },
     "mustBeJAXBElement": { "index": 8, "kind": "attribute", "displayName": 
"Must Be JAXBElement", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether marhsalling must be java objects with JAXB annotations. And if not 
then it fails. This option can be set to false to relax that, such as when the 
data is already in XML format." },
     "filterNonXmlChars": { "index": 9, "kind": "attribute", "displayName": 
"Filter Non Xml Chars", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "To 
ignore non xml characheters and replace them with an empty space." },
     "encoding": { "index": 10, "kind": "attribute", "displayName": "Encoding", 
"group": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To overrule and use a specific encoding" },
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/dataformat/JaxbDataFormat.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/dataformat/JaxbDataFormat.java
index d7181ce785f..fcd9d6f9ee4 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/dataformat/JaxbDataFormat.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/dataformat/JaxbDataFormat.java
@@ -51,7 +51,7 @@ public class JaxbDataFormat extends DataFormatDefinition 
implements ContentTypeH
     @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String objectFactory;
     @XmlAttribute
-    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean", defaultValue 
= "true")
     private String ignoreJAXBElement;
     @XmlAttribute
     @Metadata(label = "advanced", javaType = "java.lang.Boolean")
diff --git 
a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JaxbDataFormatReifier.java
 
b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JaxbDataFormatReifier.java
index 7ac3561b279..fe53e3cf3ba 100644
--- 
a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JaxbDataFormatReifier.java
+++ 
b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JaxbDataFormatReifier.java
@@ -32,7 +32,12 @@ public class JaxbDataFormatReifier extends 
DataFormatReifier<JaxbDataFormat> {
     protected void prepareDataFormatConfig(Map<String, Object> properties) {
         properties.put("prettyPrint", definition.getPrettyPrint());
         properties.put("objectFactory", definition.getObjectFactory());
-        properties.put("ignoreJAXBElement", definition.getIgnoreJAXBElement());
+        if (definition.getIgnoreJAXBElement() != null) {
+            properties.put("ignoreJAXBElement", 
definition.getIgnoreJAXBElement());
+        } else {
+            // is default true
+            properties.put("ignoreJAXBElement", "true");
+        }
         properties.put("mustBeJAXBElement", definition.getMustBeJAXBElement());
         properties.put("filterNonXmlChars", definition.getFilterNonXmlChars());
         properties.put("fragment", definition.getFragment());
@@ -48,6 +53,12 @@ public class JaxbDataFormatReifier extends 
DataFormatReifier<JaxbDataFormat> {
         properties.put("schemaLocation", definition.getSchemaLocation());
         properties.put("noNamespaceSchemaLocation", 
definition.getNoNamespaceSchemaLocation());
         properties.put("jaxbProviderProperties", 
definition.getJaxbProviderProperties());
+        if (definition.getContentTypeHeader() != null) {
+            properties.put("contentTypeHeader", 
definition.getContentTypeHeader());
+        } else {
+            // is default true
+            properties.put("contentTypeHeader", "true");
+        }
         properties.put("accessExternalSchemaProtocols", 
definition.getAccessExternalSchemaProtocols());
     }
 
diff --git 
a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java
 
b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java
index 8a12693001e..8541bcd2473 100644
--- 
a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java
+++ 
b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java
@@ -2624,7 +2624,7 @@ public class ModelWriter extends BaseWriter {
         doWriteAttribute("prettyPrint", def.getPrettyPrint(), null);
         doWriteAttribute("schemaLocation", def.getSchemaLocation(), null);
         doWriteAttribute("contextPathIsClassName", 
def.getContextPathIsClassName(), null);
-        doWriteAttribute("ignoreJAXBElement", def.getIgnoreJAXBElement(), 
null);
+        doWriteAttribute("ignoreJAXBElement", def.getIgnoreJAXBElement(), 
"true");
         doWriteAttribute("xmlStreamWriterWrapper", 
def.getXmlStreamWriterWrapper(), null);
         doWriteAttribute("schemaSeverityLevel", def.getSchemaSeverityLevel(), 
"0");
         doWriteAttribute("contextPath", def.getContextPath(), null);
diff --git 
a/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/ModelWriter.java
 
b/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/ModelWriter.java
index 05404120e77..507136cad0f 100644
--- 
a/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/ModelWriter.java
+++ 
b/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/ModelWriter.java
@@ -2624,7 +2624,7 @@ public class ModelWriter extends BaseWriter {
         doWriteAttribute("prettyPrint", def.getPrettyPrint(), null);
         doWriteAttribute("schemaLocation", def.getSchemaLocation(), null);
         doWriteAttribute("contextPathIsClassName", 
def.getContextPathIsClassName(), null);
-        doWriteAttribute("ignoreJAXBElement", def.getIgnoreJAXBElement(), 
null);
+        doWriteAttribute("ignoreJAXBElement", def.getIgnoreJAXBElement(), 
"true");
         doWriteAttribute("xmlStreamWriterWrapper", 
def.getXmlStreamWriterWrapper(), null);
         doWriteAttribute("schemaSeverityLevel", def.getSchemaSeverityLevel(), 
"0");
         doWriteAttribute("contextPath", def.getContextPath(), null);

Reply via email to