Index: src/main/java/org/apache/jackrabbit/core/PropertyImpl.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/PropertyImpl.java (revision 602118) +++ src/main/java/org/apache/jackrabbit/core/PropertyImpl.java (working copy) @@ -445,6 +445,8 @@ * {@inheritDoc} */ public Value[] getValues() throws ValueFormatException, RepositoryException { + PropertyState state = (PropertyState) getItemState(); + // check state of this instance sanityCheck(); @@ -454,7 +456,6 @@ + " is not multi-valued"); } - PropertyState state = (PropertyState) getItemState(); InternalValue[] internalValues = state.getValues(); Value[] values = new Value[internalValues.length]; for (int i = 0; i < internalValues.length; i++) { @@ -467,6 +468,8 @@ * {@inheritDoc} */ public Value getValue() throws ValueFormatException, RepositoryException { + PropertyState state = (PropertyState) getItemState(); + // check state of this instance sanityCheck(); @@ -476,7 +479,6 @@ + " is multi-valued and can therefore only be retrieved as an array of values"); } - PropertyState state = (PropertyState) getItemState(); try { InternalValue val = state.getValues()[0]; return val.toJCRValue(session.getNamePathResolver());