2013/7/11 Violeta Georgieva <miles...@gmail.com>: > Hi, > > I have the following question about: > > 1. Method setValue > There is some mismatch in the javadoc. In the method description there is > the following statement: > > "If the property exists but does not have a setter, then a > PropertyNotFoundException is thrown." > > But the throws clause states: > > "PropertyNotWritableException - if this resolver was constructed in > read-only mode, or if there is no setter for the property." > > Our implementation currently throws PropertyNotFoundException. > I'm going to change it to throw PropertyNotWritableException. > What do you think? > > Also I'm going to report a bug for this against the spec. >
The javadoc at http://docs.oracle.com/javaee/7/api/javax/el/BeanELResolver.html says: "If this resolver was constructed in read-only mode, this method will always throw PropertyNotWritableException." I think it is what should actually happen. It is also easier to check a boolean property either than use reflection to lookup whether a property exists. I see no specification bug here. > 2. Method isReadOnly > There is not explicit statement what should be returned in case > base/property are null. > However there is statement that: > > "If this resolver was constructed in read-only mode, this method will > always return true." > The same as for ResourceBundleELResolver. (That resolver is inherently read-only but you recently changed it to return false in a similar method). The return value does not matter if the property has not been marked as resolved. The docs require the caller to ignore the return value in such a case. > What do you think about this change: > > @@ -195,7 +195,7 @@ > throw new NullPointerException(); > } > if (base == null || property == null) { > - return false; > + return readOnly; > } > > context.setPropertyResolved(base, property); > Best regards, Konstantin Kolinko --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org