[ https://issues.apache.org/jira/browse/OFBIZ-4991?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jacques Le Roux closed OFBIZ-4991. ---------------------------------- Resolution: Duplicate Duplicate of OFBIZ-4992 > GenericEntity.get should not clutter logs with warnings > ------------------------------------------------------- > > Key: OFBIZ-4991 > URL: https://issues.apache.org/jira/browse/OFBIZ-4991 > Project: OFBiz > Issue Type: Bug > Reporter: Christoph Neuroth > > This code in GenericEntity.java: > {code} > Debug.logWarning("The field name (or key) [" + name + "] is not > valid for entity [" + this.getEntityName() + "], printing > IllegalArgumentException instead of throwing it because Map interface > specification does not allow throwing that exception.", module); > {code} > is not only really annoying but also wrong. First, it does not print an > exception, it only prints that string with no stacktrace (I think that was > changed at some point). Second, IllegalArgument is a RuntimeException so the > interface does not need to allow it to be thrown. > Personally, I think the warning is not even neccessary. With this code, to > prevent excessive log clutter, we have to wrap each call with a > "containsKey", which is really ugly. A java map will just return null > silently as well. > If anyone is really worried about accessing fields wrong (your tests should > catch that error), there could be an extra method "getOrThrow" or something, > but get should just return the value or null. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira