cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Torsten Römer (JIRA) <j...@apache.org>
Subject [jira] [Commented] (CXF-6769) Underscores in values of FIQL search expressions are incorrectly escaped
Date Fri, 08 Apr 2016 09:35:25 GMT

    [ https://issues.apache.org/jira/browse/CXF-6769?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15231929#comment-15231929
] 

Torsten Römer commented on CXF-6769:
------------------------------------

I've just tried this and while this would solve our problem, we unfortunately can't use in
our setup.

We are running in WildFly 8/10 which includes Apache CXF, but uses RESTEasy instead of CXF's
RS implementation. So we basically just include cxf-rt-rs-extension-search in our WAR deployment
and create our "own" instance of FiqlParser (all we want to do is to convert an FIQL expression
to an SQL query):

{code}
        final FiqlParser<SearchBean> fiqlParser = new FiqlParser<>(SearchBean.class);
        final SearchCondition<SearchBean> searchCondition = fiqlParser.parse(search);
        final SQLPrinterVisitor<SearchBean> visitor = new SQLPrinterVisitor<SearchBean>(table);
        searchCondition.accept(visitor);
        final String sql = visitor.getQuery();
{code}

And like that we are not able to set the property.

Any suggestion?

> Underscores in values of FIQL search expressions are incorrectly escaped
> ------------------------------------------------------------------------
>
>                 Key: CXF-6769
>                 URL: https://issues.apache.org/jira/browse/CXF-6769
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 3.1.2
>         Environment: Webapp deployed to WildFly 10
>            Reporter: Torsten Römer
>            Assignee: Sergey Beryozkin
>            Priority: Minor
>             Fix For: 3.1.6, 3.0.9, 3.2.0
>
>
> We are basically "just" using FIQLParser and SQLPrinterVisitor like this:
> final FiqlParser<SearchBean> fiqlParser = new FiqlParser<>(SearchBean.class);
> final SearchCondition<SearchBean> searchCondition = fiqlParser.parse(search);
> final SQLPrinterVisitor<SearchBean> visitor = new SQLPrinterVisitor<SearchBean>(table);
>         searchCondition.accept(visitor);
> final String sql = visitor.getQuery();
> A search expression like this:
> text==VAL_UE
> yields an SQL query like this:
> SELECT * FROM some_table WHERE text = 'VAL[backslash]_UE'
> (Note [backslash] is supposed to mean a literal "\" which is swallowed here)
> If the table contains a row with text "VAL_UE", the query returns no results because
the underscore in the value was preceded with a backslash.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message