]
Hardy Ferentschik commented on HV-438:
--------------------------------------
Your test project does not contain a build file (Maven, Ant, ...) and no instructions on
how to reproduce the error. You have much better chances to get this investigated if you
add a unit test.
In this context it seems strange that you cannot reproduce the problem in a JUnit test
yourself. This seems to indicate a setup problem.
Call to TraversableResolver.isReachable() threw an exception
------------------------------------------------------------
Key: HV-438
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HV-438
Project: Hibernate Validator
Issue Type: Bug
Components: engine
Affects Versions: 4.1.0.Final, 4.2.0.Beta1
Environment: hibernate 3.6.1.Final and hibernate validator 4.1.0.Final, GlassFish
Server Open Source Edition 3.0.1, Spring 3.0.5
Reporter: Denis Chapligin
I have a problem with custom class level constraint. When I try to validate a simple
entity, like:
{code}
@Entity
@Table(name="users")
@Unique //My custom constraint
public class User implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="id")
private Integer id;
}
{code}
using a spring validation helper:
{code}
User u = new User();
Errors result = new BindException(u, "User");
validator.validate(u, result);
{code}
It throws a {{NullPointerException}}:
{noformat}
Caused by: java.lang.NullPointerException
at java.lang.Class.searchFields(Class.java:2599)
at java.lang.Class.getDeclaredField(Class.java:1880)
at
org.hibernate.ejb.util.PersistenceUtilHelper$MetadataCache.findMember(PersistenceUtilHelper.java:190)
at
org.hibernate.ejb.util.PersistenceUtilHelper$MetadataCache.getMember(PersistenceUtilHelper.java:178)
at
org.hibernate.ejb.util.PersistenceUtilHelper.get(PersistenceUtilHelper.java:91)
at
org.hibernate.ejb.util.PersistenceUtilHelper.isLoadedWithReference(PersistenceUtilHelper.java:83)
at
org.hibernate.ejb.HibernatePersistence$1.isLoadedWithReference(HibernatePersistence.java:93)
at
javax.persistence.Persistence$PersistenceUtilImpl.isLoaded(Persistence.java:120)
at
org.hibernate.validator.engine.resolver.JPATraversableResolver.isReachable(JPATraversableResolver.java:33)
at
org.hibernate.validator.engine.resolver.DefaultTraversableResolver.isReachable(DefaultTraversableResolver.java:112)
at
org.hibernate.validator.engine.resolver.SingleThreadCachedTraversableResolver.isReachable(SingleThreadCachedTraversableResolver.java:47)
at
org.hibernate.validator.engine.ValidatorImpl.isValidationRequired(ValidatorImpl.java:764)
{noformat}
Some investigation revealed, that in PersistenceUtil calls the 'property'
parameter value is null and in the validator.engine functions 'name' var in value
of the first and single entry of propertyPath.nodeList is null too.
Most interested thing is that when i try validation code, shown above, in JUnit
environment, it works well.
I've attached a simple webapp, that reproduces the issue. It is too big, to be
uploaded here, so i put it to the dropbox:
http://dl.dropbox.com/u/17691684/hvbug.tar.gz
Initial report was on hibernate forums:
https://forum.hibernate.org/viewtopic.php?f=9&t=1009612&start=0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: