boon icon indicating copy to clipboard operation
boon copied to clipboard

Joda DateTime

Open RichardHightower opened this issue 8 years ago • 1 comments

Ever seen issues with stackOverflow error and DateTime in json parsing? Boon/QBit fail in a horrible way if you use a JODA DateTime.

Exception in thread "WebSocketProtocolEncoder-4" java.lang.StackOverflowError

at io.advantageous.boon.json.serializers.impl.FieldSerializerUseAnnotationsImpl.serializeField(FieldSerializerUseAnnotationsImpl.java:118)
at io.advantageous.boon.json.serializers.impl.JsonSerializerImpl.serializeField(JsonSerializerImpl.java:181)
at io.advantageous.boon.json.serializers.impl.InstanceSerializerImpl.serializeSubtypeInstance(InstanceSerializerImpl.java:84)
at io.advantageous.boon.json.serializers.impl.JsonSerializerImpl.serializeSubtypeInstance(JsonSerializerImpl.java:240)
at io.advantageous.boon.json.serializers.impl.FieldSerializerUseAnnotationsImpl.serializeField(FieldSerializerUseAnnotationsImpl.java:374)
at io.advantageous.boon.json.serializers.impl.JsonSerializerImpl.serializeField(JsonSerializerImpl.java:181)
at io.advantageous.boon.json.serializers.impl.InstanceSerializerImpl.serializeSubtypeInstance(InstanceSerializerImpl.java:84)

RichardHightower avatar Jun 08 '16 17:06 RichardHightower

Note that the StackOverflow was not a consistent thing, and specifically happened in the context not of Boon serialization itself but over the websocket in the context of QBit.

E.G. This works, but the response is crazy big and I wonder if it is related to this.

public class BoonDateTimeBugTest {

@Test
public void testBoonDateTimeBug() {

    System.out.println(io.advantageous.boon.json.JsonFactory.toJson(org.joda.time.DateTime.now()));
}

}

revelfire avatar Jun 08 '16 17:06 revelfire