-
Notifications
You must be signed in to change notification settings - Fork 24
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Description
It might be a feature request but starting as a bug since it does not work as "expected" from the first sight.
Since java.sql.Date overrides the toInstance as
@Override
public Instant toInstant() {
throw new java.lang.UnsupportedOperationException();
}
the following error may occur:
java.lang.UnsupportedOperationException: null
at java.sql/java.sql.Date.toInstant(Date.java:316)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.tryNormalizeTemporal(JsonNormalizer.java:225)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.lambda$normalizeWithStrategy$0(JsonNormalizer.java:111)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.AbstractList$RandomAccessSpliterator.tryAdvance(AbstractList.java:706)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalizeWithStrategy(JsonNormalizer.java:113)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalize(JsonNormalizer.java:102)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.lambda$normalizeMap$2(JsonNormalizer.java:266)
at java.base/java.util.HashMap.forEach(HashMap.java:1421)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalizeMap(JsonNormalizer.java:266)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.tryNormalizeCollection(JsonNormalizer.java:246)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.lambda$normalizeWithStrategy$0(JsonNormalizer.java:111)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.AbstractList$RandomAccessSpliterator.tryAdvance(AbstractList.java:706)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalizeWithStrategy(JsonNormalizer.java:113)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalize(JsonNormalizer.java:102)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.lambda$normalizeCollection$1(JsonNormalizer.java:257)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalizeCollection(JsonNormalizer.java:257)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.tryNormalizeCollection(JsonNormalizer.java:244)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.lambda$normalizeWithStrategy$0(JsonNormalizer.java:111)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.AbstractList$RandomAccessSpliterator.tryAdvance(AbstractList.java:706)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalizeWithStrategy(JsonNormalizer.java:113)
at dev.toonformat.jtoon.normalizer.JsonNormalizer.normalize(JsonNormalizer.java:102)
at dev.toonformat.jtoon.JToon.encode(JToon.java:46)
at dev.toonformat.jtoon.JToon.encode(JToon.java:30)```
### Reproduction Steps
1. Call JToon.encode(obj);
where obj is a Map containing java.sql.Date (which might be a ResultSet column value)
2. Observe the result
### Expected Behavior
I expect the conversion will work with no error. Perhaps the java.sql.Date could be processed like LocalDate
### Actual Behavior
The error occurs on processing java.sql.Date
### Environment
implementation 'dev.toonformat:jtoon:1.0.7'
### Additional Context
_No response_
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working