[ 
https://issues.apache.org/jira/browse/OAK-3621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15004001#comment-15004001
 ] 

angela commented on OAK-3621:
-----------------------------

[~asanso], i had a second look at the test with the {{mix:title}} case (see 
your attachement and the test case): what happens is that a property called 
{{jcr:title}} with the non-String type is due to the unstructured primary type 
of your node defined by {{nt:unstructured}} i.e. the property (despite being 
name {{jcr:title}} has a declaring node type with is NOT {{mix:title}} but 
rather {{nt:unstructured}} and is thus a residual single valued property with a 
required type == {{UNDEFINED}}.

executing the same test with a node that has type {{nt:folder}} (i.e. one that 
doesn't define a property with required type UNDEFINED), will in fact have the 
desired effect and the {{jcr:title}} property will be of type {{STRING}} (and 
defined by {{mix:title}}.

i will adjust that specific test-case accordingly.

> Required property type not respected
> ------------------------------------
>
>                 Key: OAK-3621
>                 URL: https://issues.apache.org/jira/browse/OAK-3621
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: core, jcr
>            Reporter: Antonio Sanso
>         Attachments: OAK-3621_test.patch, mixin_definition.png, 
> property_type.png
>
>
> It seems like Section 7.1.5 Adding and Writing Properties of jsr 170 
> {code}
>                                               Sets the specified (single 
> value) property of this node
> to the specified value. If the property does not yet
> exist, it is created. The property type of the property
> will be that specified by the node type of this node.
>                                               If the property type of the 
> supplied Value object is
> different from that required, then a best-effort
> conversion is attempted. If the conversion fails, a
> ValueFormatException is thrown. If another error
> occurs, a RepositoryException is thrown.
>                                               If the node type of this node 
> does not indicate a
> specific property type, then the property type of the
> supplied Value object is used and if the property
> already exists (has previously been set) it assumes
> both the new value and new property type.
> {code}
> is not respected.In the provided screenshots you can see a mixin definition 
> having a long property. But the property type in the creation node is Boolean



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to