[
https://issues.apache.org/jira/browse/OPENJPA-2426?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13760279#comment-13760279
]
Glenn Silverman commented on OPENJPA-2426:
------------------------------------------
I'm sorry for the misunderstanding. It seems when I mix opoenjpa with
Postgresql 9.1, and run this query:
SELECT p FROM Patient p where p.firstname like :firstname
I get this error:
Exception: <openjpa-2.2.2-r422266:1468616 fatal general error>
> org.apache.openjpa.persistence.PersistenceException: ERROR:
> unterminated quoted string at or near "'\')"
> Position: 841 {prepstmnt 1174610866 SELECT t0.patientid, t0.active,
> t0.addedat, t0.address1, t0.firstname,... WHERE (t0.firstname LIKE ?
> ESCAPE '\')} [code=0, state=42601]
I don't get an error when I use a different JPA implementation, such as
hibernate. I don't want to switch from openjpa if I don't have to.
Now, if I replace the LIKE operator with =, the query works fine.
> LIKE operator fails with Postgresql v 9.1
> -----------------------------------------
>
> Key: OPENJPA-2426
> URL: https://issues.apache.org/jira/browse/OPENJPA-2426
> Project: OpenJPA
> Issue Type: Question
> Components: jpa
> Affects Versions: 2.2.2
> Environment: Apache Karaf v 2.3.2 and Aries JPA
> Reporter: Glenn Silverman
> Labels: Aries, JPA
>
> I'm getting very discouraged with OpenJPA as it relates to Postgresql v 9.1
> and and creating queries using the LIKE operator. I know there was an issue
> a few years back, https://issues.apache.org/jira/browse/OPENJPA-2056, but
> I've tried everything mentioned there as a workaround to get a simple query
> like this to work:
> Query query = em.createQuery("SELECT p FROM Patient p where p.lastname =
> :lastname");
> query.setParameter("lastname", "Silver");
>
> List<Patient> patients = query.getResultList();
> I've tried different property settings in my persistence.xml:
> <property name="openjpa.jdbc.DBDictionary" value="postgres"/>
> and this:
> <property name="openjpa.jdbc.DBDictionary"
> value="postgres(SearchStringEscape=\)"/>
> and even this:
> <property name="openjpa.jdbc.DBDictionary"
> value="postgresRequiresSearchStringEscapeForLike=false)"/>
> Nothing works. I'm not even convinced Aries JPA, the environment I'm running
> in under Karaf, even recognizes these property settings.
> When I use Hibernate as my persistence provider, I don't have this problem.
> I don't want to give up on OpenJPA in my OSGi environment, but I may have to
> if no one has a solution.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira