[ 
https://issues.apache.org/jira/browse/CAMEL-17294?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Marat Gubaidullin updated CAMEL-17294:
--------------------------------------
    Description: 
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}


  was:
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}



> 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
>            Priority: Major
>
> 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}



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

Reply via email to