You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Marat Gubaidullin (Jira)" <ji...@apache.org> on 2021/12/07 17:06:00 UTC

[jira] [Created] (CAMEL-17294) camel-jbang: Json library enums are case sensitive

Marat Gubaidullin created CAMEL-17294:
-----------------------------------------

             Summary: camel-jbang: Json library enums are case sensitive
                 Key: CAMEL-17294
                 URL: https://issues.apache.org/jira/browse/CAMEL-17294
             Project: Camel
          Issue Type: Improvement
            Reporter: Marat Gubaidullin


Json DataFormat library names are case sensitive, ex. the following code work fine:
{code:java}
- from:
    uri: "platform-http:/hello"
    steps:
      - set-body:
          constant: "Hello World"
      - marshal:
          json: 
            library: Gson
 {code}

However {code:java} library: gson {code} throws an exception

{noformat}
java.lang.IllegalArgumentException: No enum constant org.apache.camel.model.dataformat.JsonLibrary.gson
        at java.base/java.lang.Enum.valueOf(Enum.java:240)
        at org.apache.camel.model.dataformat.JsonLibrary.valueOf(JsonLibrary.java:25)
        at org.apache.camel.dsl.yaml.deserializers.ModelDeserializers$JsonDataFormatDeserializer.setProperty(ModelDeserializers.java:7375)
{noformat}

For {code:java} library: jackson {code} throws an exception
{noformat}
java.lang.IllegalArgumentException: No enum constant org.apache.camel.model.dataformat.JsonLibrary.jackson
        at java.base/java.lang.Enum.valueOf(Enum.java:240)
        at org.apache.camel.model.dataformat.JsonLibrary.valueOf(JsonLibrary.java:25)
        at org.apache.camel.dsl.yaml.deserializers.ModelDeserializers$JsonDataFormatDeserializer.setProperty(ModelDeserializers.java:7375)
        at org.apache.camel.dsl.yaml.deserializers.ModelDeserializers$JsonDataFormatDeserializer.setProperty(ModelDeserializers.java:7269)
        at org.apache.camel.dsl.yaml.common.YamlDeserializerBase.setProperties(YamlDeserializerBase.java:103)
        at org.apache.camel.dsl.yaml.common.YamlDeserializerBase.construct(YamlDeserializerBase.java:51)
{noformat}




--
This message was sent by Atlassian Jira
(v8.20.1#820001)