You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@olingo.apache.org by "Paul Sun (Jira)" <ji...@apache.org> on 2021/07/15 04:53:00 UTC

[jira] [Created] (OLINGO-1534) Error serializing CsdlLogicalOrComparisonExpression to json format

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)