[ 
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)

Reply via email to