You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@syncope.apache.org by "Francesco Chicchiriccò (Jira)" <ji...@apache.org> on 2019/09/10 10:11:00 UTC

[jira] [Closed] (SYNCOPE-1490) Incorrect decoding when constructing fiql query

     [ https://issues.apache.org/jira/browse/SYNCOPE-1490?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Francesco Chicchiriccò closed SYNCOPE-1490.
-------------------------------------------
    Resolution: Not A Problem

> Incorrect decoding when constructing fiql query
> -----------------------------------------------
>
>                 Key: SYNCOPE-1490
>                 URL: https://issues.apache.org/jira/browse/SYNCOPE-1490
>             Project: Syncope
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 2.0.12
>            Reporter: Dmitriy B.
>            Priority: Major
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> The incoming org.apache.cxf.jaxrs.ext.search.PrimitiveStatement#value value is already decoded in org.apache.syncope.core.persistence.api.search.SearchCondVisitor#visitPrimitive.
> Thus, the useless logic that does decoding should be removed.
> Otherwise, it leads to incorrect behavior: e.g. when special chars present it the property values.
> For example, I have user with "phone" attribute and value of this attribute is "+1234556789112"
> After double decoding, I'll have the " 1234556789112" instead of the original value.
> Example of search request:
> {code:language=java}
> String fiqlQuery = SyncopeClient.getUserSearchConditionBuilder()
>                 .is("phone").equalTo("+1234556789112")
>                 .query();
> AnyQuery anyQuery = new AnyQuery.Builder().realm(SyncopeConstants.ROOT_REALM).fiql(fiqlQuery).build();
>         PagedResult<UserTO> matchingUsers = userService.search(anyQuery);
> {code}



--
This message was sent by Atlassian Jira
(v8.3.2#803003)