We have defined both isVoided() and getVoided() methods in BaseOpenmrsData (and isRetired() and getRetired() in BaseOpenmrsMetadata), which is technically not right according to bean specifications. The Jackson JSON library bombs on this, like:
Selected approach (per the Design Forum on 15-Aug-2012):
- Go through the API and find all methods with the signature "Boolean isXyz()", and for each of them:
- Verify we have a correct "Boolean getXyz()" method
- Deprecate the incorrect isXyz() method, saying to use the getXyz() method instead
- Add the @JsonIgnore annotation to the incorrect isXyz method
It may be possible to salvage Saptarshi's attached patch here, but given the amount of time that has passed since he wrote it, it may be easier to just re-do the work against trunk.