[
https://issues.apache.org/jira/browse/THRIFT-452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12698172#action_12698172
]
Bryan Duxbury commented on THRIFT-452:
--------------------------------------
The isset should only be true if you "set" that field's value to 0. If you do
that, then the struct should fail to serialize in the first place. Maybe I'm
missing the pattern that gets you to this spot; can you elaborate a little?
> Gotcha with Java enums not having a zero value
> ----------------------------------------------
>
> Key: THRIFT-452
> URL: https://issues.apache.org/jira/browse/THRIFT-452
> Project: Thrift
> Issue Type: Bug
> Components: Compiler (Java)
> Reporter: Ben Maurer
>
> In the java library, if you define an enum that does not have a value
> declared for 0, it seems like you can get into a strange situation. In java,
> the field for the enum will be set to zero, but isset will be true. Compare
> to a language like Python where the value will be None, causing isset to
> effectively be false. When the value is deserialized, Java will check if the
> enum value is valid, find that it is not, and throw an exception.
> Any thoughts on the best behavior?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.