Apache CXF -- JAX-RS Search

submited by
Style Pass
2024-12-28 02:30:36

CXF supports mapping the advanced query expressions to the typed Search API with the help of query language specific parsers.   

lets users search for all the Apache projects with the name 'CXF' and the version greater or equal to '2.2'. The initial '=' separates the name of the query '_s' from the FIQL expression, while '==' and '=ge=' convey 'equals to' and 'greater or equals to' respectively. An expression such as "name==CXF*" can be used to do the partial equality check (example: the name should start from "CXF").

The last two operators, ","(OR) and ";"(AND) are used to concatenate and build composite (possibly nested) expressions, while the first 6 operators are used to build so called primitive expressions.

From CXF 2.7.7: single '=' operator can be optionally supported instead of '==': set a "fiql.support.single.equals.operator" contextual property to "true".

As you can see FIQL is rich enough for the service implementations to offer a more interesting search experience around the well-known data, while still keeping the complexity of URI expressions under control which makes it simpler to share such URI queries as well as use the same query language no matter what data store is used internally by the service.

Leave a Comment
Related Posts