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