多值 属性

Multivalued property

我想为多值 属性 validation.

获取一个值

我使用的代码如下:

        println ("*** Listed are properties for the " +  childArea.getName() + " child: ***");
        while(propOfChildArea.hasNext())
        {
            Property pchildofarea = propOfChildArea.nextProperty();
             if (!pchildofarea.isMultiple()) {

                        String namechofarea = pchildofarea.getName();
                        String valchofarea = pchildofarea.getString();
                        println(String.format("|%-50s", "property_name:"+ namechofarea) + String.format("|%-50s"," property_value: " + valchofarea));

                    } else{
                        println("################here is a multiple property: "+ pchildofarea.getName());
                        Value[] value = pchildofarea.getValues();
                        println("value is:" + value[value.size()-1]);
                    }


        }

我希望得到这个属性的值,但我得到的是 org.apache.jackrabbit.spi.commons.value.QValueValue@5c24b9c

当一个人这样做时 getValues() 它实际上获取了一个值对象 @see ->

javax.jcr.Value

最重要的是,您应该获得 属性 的具体值,这取决于预期的 属性 类型。通常,您可以通过 javax.jcr.Value#getString

获取值

干杯,

希望对您有所帮助,