Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fastjson/jackson compatibility #251

Closed
trydofor opened this issue Jun 4, 2024 · 5 comments
Closed

fastjson/jackson compatibility #251

trydofor opened this issue Jun 4, 2024 · 5 comments
Labels
break :boom: breaking change dependencies Pull requests that update a dependency file
Milestone

Comments

@trydofor
Copy link
Owner

trydofor commented Jun 4, 2024

should NOT use fastjson outside if u can,

in wings, should use FastjsonHelper to

  • boolean - true/false without "
  • number - string with "
  • datetime - many format
@trydofor trydofor added the dependencies Pull requests that update a dependency file label Jun 4, 2024
@trydofor trydofor added this to the Batrider milestone Jun 4, 2024
@trydofor
Copy link
Owner Author

trydofor commented Jun 4, 2024

  • bool
  • number
  • datetime
  • enum

@trydofor trydofor added the break :boom: breaking change label Jun 5, 2024
@trydofor
Copy link
Owner Author

trydofor commented Jun 5, 2024

jackson breaking

  • change LocaleZoneIdUtil.Xxx from Supplier to method
  • only auto timezone on ObjectMapper bean
  • JacksonHelper do NOT auto timezone

fastjson breaking

  • delete FastJsonFilters
  • delete FastJsonReaders
  • delete FastJsonHelper.enableXxx

@trydofor
Copy link
Owner Author

trydofor commented Jun 5, 2024

  • kryo - ignore transient field
  • jackson - ignore transient field and @transient method
  • fastjson - ignore transient field

@trydofor
Copy link
Owner Author

trydofor commented Jun 5, 2024

change

  • chagne LocaleZoneIdUtil.Xxx from Supplier to method
  • delete FastJsonFilters, FastJsonReaders
  • JacksonHelper do NOT auto timezone
  • FastjsonHelper delete enableXxx

@trydofor trydofor changed the title fastjson compatible unittest fastjson/jackson compatibility Jun 6, 2024
@trydofor
Copy link
Owner Author

trydofor commented Jun 6, 2024

"wings.slardar.number.decimal.separator=_",
"wings.slardar.number.floats.format=#.00",
"wings.slardar.number.decimal.format=#.00",

interfere unittest context

2024-06-06T14:41:40.3690588Z 2024-06-06 22:41:40.334  INFO 8011 --- [slardar-webmvc] [           main] p.f.w.s.json.JsonHelperCompatibleTest    : jackson, value=BoxingArray(boolArrNull=null, boolArrEmpty=[], boolArrValue=[true, false], byteArrNull=null, byteArrEmpty=[-128, 127], byteArrValue=[-128, 127], charArrNull=null, charArrEmpty=[], charArrValue=[�, �], shortArrNull=null, shortArrEmpty=[], shortArrValue=[-32768, 32767], intArrNull=null, intArrEmpty=[], intArrValue=[-2147483648, 2147483647], longArrNull=null, longArrEmpty=[], longArrValue=[-9223372036854775808, 9223372036854775807], floatArrNull=null, floatArrEmpty=[], floatArrValue=[-3.1415927, 3.1415927], doubleArrNull=null, doubleArrEmpty=[], doubleArrValue=[-3.141592653589793, 3.141592653589793])
2024-06-06T14:41:40.4077387Z 2024-06-06 22:41:40.385  INFO 8011 --- [slardar-webmvc] [           main] p.f.w.s.json.JsonHelperCompatibleTest    : jsonByJackPlain={"boolArrNull":null,"boolArrEmpty":[],"boolArrValue":[true,false],"byteArrNull":null,"byteArrEmpty":[-128,127],"byteArrValue":[-128,127],"charArrNull":null,"charArrEmpty":[],"charArrValue":["\u0000","�"],"shortArrNull":null,"shortArrEmpty":[],"shortArrValue":[-32768,32767],"intArrNull":null,"intArrEmpty":[],"intArrValue":[-2147483648,2147483647],"longArrNull":null,"longArrEmpty":[],"longArrValue":[-9223372036854775808,9223372036854775807],"floatArrNull":null,"floatArrEmpty":[],"floatArrValue":[-3.1415927,3.1415927],"doubleArrNull":null,"doubleArrEmpty":[],"doubleArrValue":[-3.141592653589793,3.141592653589793]}
2024-06-06T14:41:40.4090292Z 2024-06-06 22:41:40.391  INFO 8011 --- [slardar-webmvc] [           main] p.f.w.s.json.JsonHelperCompatibleTest    : jsonByJackWings={"boolArrEmpty":[],"boolArrValue":[true,false],"byteArrEmpty":[-128,127],"byteArrValue":[-128,127],"charArrEmpty":[],"charArrValue":["\u0000","�"],"shortArrEmpty":[],"shortArrValue":[-32768,32767],"intArrEmpty":[],"intArrValue":[-2147483648,2147483647],"longArrEmpty":[],"longArrValue":["-9223372036854775808","9223372036854775807"],"floatArrEmpty":[],"floatArrValue":["-3.15","3.14"],"doubleArrEmpty":[],"doubleArrValue":["-3.15","3.14"]}, class=BoxingArray, ins-len=2
2024-06-06T14:41:40.4290271Z [ERROR] Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.499 s <<< FAILURE! -- in pro.fessional.wings.slardar.json.JsonHelperCompatibleTest
2024-06-06T14:41:40.4293869Z [ERROR] pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.testJackson -- Time elapsed: 0.066 s <<< FAILURE!
2024-06-06T14:41:40.4307899Z org.opentest4j.AssertionFailedError: expected: <BoxingArray(boolArrNull=null, boolArrEmpty=[], boolArrValue=[true, false], byteArrNull=null, byteArrEmpty=[-128, 127], byteArrValue=[-128, 127], charArrNull=null, charArrEmpty=[], charArrValue=[�, �], shortArrNull=null, shortArrEmpty=[], shortArrValue=[-32768, 32767], intArrNull=null, intArrEmpty=[], intArrValue=[-2147483648, 2147483647], longArrNull=null, longArrEmpty=[], longArrValue=[-9223372036854775808, 9223372036854775807], floatArrNull=null, floatArrEmpty=[], floatArrValue=[-3.1415927, 3.1415927], doubleArrNull=null, doubleArrEmpty=[], doubleArrValue=[-3.141592653589793, 3.141592653589793])> but was: <BoxingArray(boolArrNull=null, boolArrEmpty=[], boolArrValue=[true, false], byteArrNull=null, byteArrEmpty=[-128, 127], byteArrValue=[-128, 127], charArrNull=null, charArrEmpty=[], charArrValue=[�, �], shortArrNull=null, shortArrEmpty=[], shortArrValue=[-32768, 32767], intArrNull=null, intArrEmpty=[], intArrValue=[-2147483648, 2147483647], longArrNull=null, longArrEmpty=[], longArrValue=[-9223372036854775808, 9223372036854775807], floatArrNull=null, floatArrEmpty=[], floatArrValue=[-3.15, 3.14], doubleArrNull=null, doubleArrEmpty=[], doubleArrValue=[-3.15, 3.14])>
2024-06-06T14:41:40.4332244Z 	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
2024-06-06T14:41:40.4334863Z 	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
2024-06-06T14:41:40.4337182Z 	at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
2024-06-06T14:41:40.4339523Z 	at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
2024-06-06T14:41:40.4341606Z 	at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:177)
2024-06-06T14:41:40.4343649Z 	at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:1145)
2024-06-06T14:41:40.4346124Z 	at pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.jackson(JsonHelperCompatibleTest.java:223)
2024-06-06T14:41:40.4348928Z 	at pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.jackson(JsonHelperCompatibleTest.java:202)
2024-06-06T14:41:40.4351831Z 	at pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.testJackson(JsonHelperCompatibleTest.java:159)
2024-06-06T14:41:40.4354116Z 	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
2024-06-06T14:41:40.4355823Z 	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
2024-06-06T14:41:40.4357505Z 	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
2024-06-07T01:45:47.3219656Z 2024-06-07 09:45:47.292  INFO 7351 --- [slardar-webmvc] [           main] p.f.w.s.json.JsonHelperCompatibleTest    : jackson, value=3.1415927
2024-06-07T01:45:47.3223003Z 2024-06-07 09:45:47.293  INFO 7351 --- [slardar-webmvc] [           main] p.f.w.s.json.JsonHelperCompatibleTest    : jsonByJackPlain=3.1415927
2024-06-07T01:45:47.3226685Z 2024-06-07 09:45:47.294  INFO 7351 --- [slardar-webmvc] [           main] p.f.w.s.json.JsonHelperCompatibleTest    : jsonByJackWings="3.14", class=Float, ins-len=1
2024-06-07T01:45:47.3230428Z [ERROR] Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.383 s <<< FAILURE! -- in pro.fessional.wings.slardar.json.JsonHelperCompatibleTest
2024-06-07T01:45:47.3233814Z [ERROR] pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.testJackson -- Time elapsed: 0.021 s <<< FAILURE!
2024-06-07T01:45:47.3236530Z org.opentest4j.AssertionFailedError: 3.1415927 not found ==> expected: <true> but was: <false>
2024-06-07T01:45:47.3239217Z 	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
2024-06-07T01:45:47.3241783Z 	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
2024-06-07T01:45:47.3244318Z 	at org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63)
2024-06-07T01:45:47.3246287Z 	at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:36)
2024-06-07T01:45:47.3248250Z 	at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:214)
2024-06-07T01:45:47.3250937Z 	at pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.jackson(JsonHelperCompatibleTest.java:220)
2024-06-07T01:45:47.3253786Z 	at pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.jackson(JsonHelperCompatibleTest.java:203)
2024-06-07T01:45:47.3256688Z 	at pro.fessional.wings.slardar.json.JsonHelperCompatibleTest.testJackson(JsonHelperCompatibleTest.java:173)
2024-06-07T01:45:47.3259061Z 	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
2024-06-07T01:45:47.3260812Z 	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
2024-06-07T01:45:47.3262511Z 	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)

trydofor added a commit that referenced this issue Jun 8, 2024
@trydofor trydofor mentioned this issue Aug 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
break :boom: breaking change dependencies Pull requests that update a dependency file
Projects
Archived in project
Development

No branches or pull requests

1 participant