We need to protect against cases where the design is null.  This probably shouldn't happen in practice when used via the UI, but when the API is accessed directly it is possible.  I think there are some unit tests that fail due to this.  Can you either override the getDesign(argument) method to return an empty ReportDesign object if null would otherwise be returned, or create a "getPropertyValue" utility method that protects against a null report design?