Paul Sun created OLINGO-1534:
--------------------------------

             Summary: Error serializing CsdlLogicalOrComparisonExpression to 
json format
                 Key: OLINGO-1534
                 URL: https://issues.apache.org/jira/browse/OLINGO-1534
             Project: Olingo
          Issue Type: Bug
          Components: odata4-server
            Reporter: Paul Sun


I use code below to generate a CsdlLogicalOrComparisonExpression.

 
{code:java}
CsdlLogicalOrComparisonExpression conditionExp =
  new 
CsdlLogicalOrComparisonExpression(CsdlLogicalOrComparisonExpression.LogicalOrComparisonExpressionType.Eq);
conditionExp.setLeft(new CsdlPath().setValue("age"));
conditionExp.setRight(new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.Int, 
"30"));
{code}
If serialize with ODataXmlSerializer, it works fine, result is as below.

 

 
{code:java}
<Eq><Path>age</Path> <Int>30</Int> </Eq>
{code}
But when I use ODataJsonSerializer, an error occurs.

 

Caused by: com.fasterxml.jackson.core.JsonGenerationException: Can not write a 
field name, expecting a valueCaused by: 
com.fasterxml.jackson.core.JsonGenerationException: Can not write a field name, 
expecting a value at 
com.fasterxml.jackson.core.JsonGenerator._reportError(JsonGenerator.java:2080) 
at 
com.fasterxml.jackson.core.json.UTF8JsonGenerator.writeFieldName(UTF8JsonGenerator.java:220)
 at 
com.fasterxml.jackson.core.JsonGenerator.writeObjectFieldStart(JsonGenerator.java:1754)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendConstantExpression(MetadataDocumentJsonSerializer.java:1086)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendExpression(MetadataDocumentJsonSerializer.java:844)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendLogicalOrComparisonExpression(MetadataDocumentJsonSerializer.java:1051)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendDynamicExpression(MetadataDocumentJsonSerializer.java:870)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendExpression(MetadataDocumentJsonSerializer.java:846)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendDynamicExpression(MetadataDocumentJsonSerializer.java:1020)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendExpression(MetadataDocumentJsonSerializer.java:846)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendAnnotations(MetadataDocumentJsonSerializer.java:831)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendEntityTypes(MetadataDocumentJsonSerializer.java:624)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendSchema(MetadataDocumentJsonSerializer.java:176)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.appendDataServices(MetadataDocumentJsonSerializer.java:157)
 at 
org.apache.olingo.server.core.serializer.json.MetadataDocumentJsonSerializer.writeMetadataDocument(MetadataDocumentJsonSerializer.java:151)
 at 
org.apache.olingo.server.core.serializer.json.ODataJsonSerializer.metadataDocument(ODataJsonSerializer.java:167)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to