Multivalue properties with one value become single value properties after xml
export -> import
-----------------------------------------------------------------------------------------------
Key: MAGNOLIA-3035
URL: http://jira.magnolia-cms.com/browse/MAGNOLIA-3035
Project: Magnolia
Issue Type: Bug
Components: core
Affects Versions: 4.2.3
Reporter: Ernst Bunders
Assignee: Philipp Bärfuss
I found this working with (stk) categorization. A page that can have categories
store uuid's to category nodes in the data workspace as a multi value property.
When you set only one category an array of one javax.jcr.Value instances will
be set, and it will be a multi value property non the less. You can come back
to it later and add more values.
But if you export this page to xml, it will be serialized as something like
this:
<sv:property sv:name="categories" sv:type="String">
<sv:value>d7ba9d64-b7b8-4b93-8a3d-ecd14a049bb8</sv:value>
</sv:property>
This is exactly the way a single value property is stored. So when you reimport
the xml, a single value property is created for this value.
When you try to add a value to it, you get:
2010-01-26 13:56:53,893 ERROR
nfo.magnolia.module.admininterface.SaveHandlerImpl: Single-valued property can
not be set to an array of values:
javax.jcr.ValueFormatException: Single-valued property can not be set to an
array of values:property /tegenlicht/nieuws/2010/januari/wie-is-wi
at
org.apache.jackrabbit.core.PropertyImpl.checkSetValue(PropertyImpl.java:244)
at
org.apache.jackrabbit.core.PropertyImpl.setValue(PropertyImpl.java:646)
at
org.apache.jackrabbit.core.PropertyImpl.setValue(PropertyImpl.java:629)
at
info.magnolia.cms.core.DefaultNodeData.setValue(DefaultNodeData.java:504)
at
info.magnolia.cms.core.DefaultContent.setNodeData(DefaultContent.java:351)
at
info.magnolia.cms.util.NodeDataUtil.getOrCreateAndSet(NodeDataUtil.java:392)
.......
When you add more than one value before you export it to xml it works ok. The
importer finds multiple values, and creates a multi value property accordingly.
This seems more of a jackrabbit, or even a specification bug, but perhaps it
can be somehow cought in magnolia?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.magnolia-cms.com/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
----------------------------------------------------------------
For list details see
http://www.magnolia-cms.com/home/community/mailing-lists.html
To unsubscribe, E-mail to: <[email protected]>
----------------------------------------------------------------