I solved the problem.
It is because I'm not inserting other-side class (on @OneToOne relation) in my schema generator (which is not needed in non-annotated version) : AnnotationConfiguration().addAnnotatedClass(otherClass.class).addAnnotatedClass...bla....bla....
I've temporarily change the code ToOneMappedBySecondPass.java in package org.hibernate.cfg line 38 :
Code:
throw new AnnotationException("Unknown mappedBy in: " + StringHelper.qualify(ownerEntity, ownerProperty)
+ ", referenced property unknown: "
+ StringHelper.qualify( value.getReferencedEntityName(), value.getReferencedPropertyName() )
The NullPointerException actually raised from the second StringHelper.qualify (line 40).
So I've commented line 39 & 40 to track down the problem.
Suggestion :
To made more informative errors, how about checking every null possible values (if it is null) before printed them. In this case the get getReferencedEntityName() and getReferencedPropertyName().
Thanks for the response.