[
https://issues.apache.org/jira/browse/SLING-3674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Justin Edelson resolved SLING-3674.
-----------------------------------
Resolution: Fixed
Assignee: Justin Edelson
Thanks for submitting these tests. Very helpful! (although in the future, it
would be better to submit a patch file when you are changing an existing test).
This is fixed in r1603159.
> Array of wrappers to primitives conversion in Sling Models
> ----------------------------------------------------------
>
> Key: SLING-3674
> URL: https://issues.apache.org/jira/browse/SLING-3674
> Project: Sling
> Issue Type: Bug
> Components: Extensions
> Affects Versions: Sling Models Implementation 1.0.4
> Reporter: Krystian Panek
> Assignee: Justin Edelson
> Labels: models
> Fix For: Sling Models Implementation 1.0.6
>
> Attachments: ArrayPrimitivesModel.java, ResourceModelClassesTest.java
>
>
> Problem is related with: https://issues.apache.org/jira/browse/SLING-3547
> Suppose that I have:
> {quote}
> @Inject
> private int[] scores;
> @Inject
> private Integer[] scores;
> {quote}
> For first declaration injection does not work, because in my environment
> ValueMap contains array of wrapped integers and type cast to array of
> primitives cannot be done. I noticed an exception:
> {quote}
> 27 [main] ERROR org.apache.sling.models.impl.ModelAdapterFactory - unable to
> create object
> java.lang.ClassCastException: [I cannot be cast to [Ljava.lang.Object;
> at
> org.apache.sling.api.wrappers.ValueMapDecorator.convertToArray(ValueMapDecorator.java:100)
> {quote}
> Second declaration seems to work but how to apply default value for it?
> According to Sling Models documentation, example with default value for array
> of integers currently it is not possible to get it working. Same error as for
> first declaration.
> I wrote unit test for it. I hope, useful for reproducing problem, see
> attachments.
--
This message was sent by Atlassian JIRA
(v6.2#6252)