Change By: Hardy Ferentschik (28/Jun/12 5:47 AM)
Description: This has been spawned from a forum posting.
If a bean validated with the
 MethodValidationInterceptor  _MethodValidationInterceptor_  has two methods with the same name that are prefixed with get/has/is, calling one of these methods will result in a  NullPointerException  _NullPointerException_ .

{noformat}
java.lang.NullPointerException
 at org.hibernate.validator.internal.engine.ValidatorImpl.validateParametersInContext(ValidatorImpl.java:846)
 at org.hibernate.validator.internal.engine.ValidatorImpl.validateAllParameters(ValidatorImpl.java:218)
 at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:88)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
 at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
 at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
{noformat}

Code snippet example:
Problem experienced when calling following methods on method validated bean.

{code}
ValidatedObject getMyValidObject(arg1);
ValidatedObject getMyValidObject(arg1, arg2);
{code}

Workaround:
{code}
ValidatedObject retrieveMyValidObject(arg1);
ValidatedObject retrieveMyValidObject(arg1, arg2);
{code}

or:
{code}
ValidatedObject getMyValidObject(arg1);
ValidatedObject getMyValidObjectDifferentMethodName(arg1, arg2);
{code}


I'm not aware of a workaround that doesn't involve having to change the interface!
A detailed description with some code references is available here:
https://forum.hibernate.org/viewtopic.php?f=9&t=1016470&p=2456768#p2456768
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