Foren
case insensitive Dynamic Query
Florencia Gadea, geändert vor 11 Jahren.
case insensitive Dynamic Query
Regular Member Beiträge: 146 Beitrittsdatum: 27.03.12 Neueste Beiträge
Hi Everyone,
Here is my dynamic query:
I would like the search to be case insensitive. Is it possible with DynamicQuery? Do I have to add something in the service builder?
TIA,
Flor.
Here is my dynamic query:
DynamicQuery query = DynamicQueryFactoryUtil.forClass(MessageSource.class);
query.add(PropertyFactoryUtil.forName("resourceValue").like("%" + resourceValue + "%"));
query.add(PropertyFactoryUtil.forName("resourceBundle").eq(resourceBundle));
I would like the search to be case insensitive. Is it possible with DynamicQuery? Do I have to add something in the service builder?
TIA,
Flor.
Alireza Zare, geändert vor 11 Jahren.
RE: case insensitive Dynamic Query
Regular Member Beiträge: 110 Beitrittsdatum: 03.09.10 Neueste Beiträge
Hi,
Look at this link:
http://www.liferay.com/community/forums/-/message_boards/message/3936565
Look at this link:
http://www.liferay.com/community/forums/-/message_boards/message/3936565
Florencia Gadea, geändert vor 11 Jahren.
RE: case insensitive Dynamic Query
Regular Member Beiträge: 146 Beitrittsdatum: 27.03.12 Neueste BeiträgeAlireza Zare:
Hi,
Look at this link:
http://www.liferay.com/community/forums/-/message_boards/message/3936565
Hi!
Thank you, it worked! I was supposed to use RestrictionsFactoryUtil instead of PropertyFactoryUtil.
This is how my query ended up:
DynamicQuery query = DynamicQueryFactoryUtil.forClass(MessageSource.class);
query.add(RestrictionsFactoryUtil.ilike("resourceValue", "%" + resourceValue + "%"));
query.add(RestrictionsFactoryUtil.ilike("resourceBundle", resourceBundle));
Best regards!
Flor
Goran Marinkovic, geändert vor 5 Jahren.
RE: case insensitive Dynamic Query
New Member Beiträge: 12 Beitrittsdatum: 27.03.18 Neueste Beiträge
DynamicQuery query = DynamicQueryFactoryUtil.forClass(MessageSource.class);
query.add(PropertyFactoryUtil.forName("resourceValue").like(StringPool.PERCENT + resourceValue + StringPool.PERCENT));
query.add(PropertyFactoryUtil.forName("resourceBundle").eq(resourceBundle));
query.add(PropertyFactoryUtil.forName("resourceValue").like(StringPool.PERCENT + resourceValue + StringPool.PERCENT));
query.add(PropertyFactoryUtil.forName("resourceBundle").eq(resourceBundle));
Hitoshi Ozawa, geändert vor 11 Jahren.
RE: case insensitive Dynamic Query
Liferay Legend Beiträge: 7942 Beitrittsdatum: 24.03.10 Neueste Beiträge
Have you tried using "ilike" instead of "like"