|
Example:
@Field(name="Number", index=Index.YES, analyze=Analyze.YES, store=Store.NO) private String number;
Hibernate property name of this field is 'Number' (uppercase).
therefore AbstractDocumentBuilder.isDirty(..) will be called with an Array containing 'Number' (note: uppercased because it is requested via EntityPersister.getPropertyNames()) and looks for a PropertyMetadata under name 'Number' (typeMetadata.getPropertyMetadataForProperty("Number")) which does not exist, since the map storing PropertyMetadata's (propertyGetterNameToPropertyMetadata) contains the java field names as its key.
So typeMetadata.getPropertyMetadataForProperty("Number") fails because it assumes "number" instead of "Number"
|