You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Hector Kikuchi Martins (JIRA)" <ji...@apache.org> on 2017/01/18 18:09:26 UTC
[jira] [Commented] (CXF-7213) FIQL Parser: Crashes when parsing a
collection (java.util.Set) inside an object
[ https://issues.apache.org/jira/browse/CXF-7213?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15828489#comment-15828489 ]
Hector Kikuchi Martins commented on CXF-7213:
---------------------------------------------
After some debbuging I found out that maybe several parsers may have the same issue, since the "crash" occurs on the class: AbstractSearchConditionParser on rt-rs-extensions-search project.
The follow attribution on line 214:
Object valueObjectValue = lastTry || !returnCollection
? nextObject : getCollectionSingleton(valueType, nextObject);
The parameter valueType is not an Collection an thus, the getCollectionSingleton method will always return Collections.singletonList() which is an List, crashing the reflection invoke to an setter to a java.util.Set.
I cloned the repository and switched the parameter valueType to returnType and fixed my issue, but since I don't have enough knowledge on the whole project, I didn't know if it can cause any other collateral bug.
> FIQL Parser: Crashes when parsing a collection (java.util.Set) inside an object
> -------------------------------------------------------------------------------
>
> Key: CXF-7213
> URL: https://issues.apache.org/jira/browse/CXF-7213
> Project: CXF
> Issue Type: Bug
> Affects Versions: 3.1.5, 3.1.9
> Reporter: Hector Kikuchi Martins
> Attachments: CxfTest.java
>
>
> The problem occur when an java.util.Set inside an object (not another collection) is parsed.
> Ex: "furniture.spec.features.description==description".
> Furniture is a Set on an Room class.
> Spec is an single Object on Furniture class.
> Features is a Set on Spec class.
> Description is a String on Feature class.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)