Uploaded image for project: 'Cayenne'
  1. Cayenne
  2. CAY-1305

EJBQL doesn't support null parameters

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.0 beta 1
    • 3.0RC1
    • Core Library
    • None

    Description

      EJBQL parameter cannot be set as null. Test is simple as follows:

      EJBQLQuery query = new EJBQLQuery("select p from Painting p WHERE p.toArtist=:x");
      query.setParameter("x", null);
      createDataContext().performQuery(query);

      Caused by: java.lang.ClassCastException: org.apache.cayenne.reflect.generic.DataObjectToOneProperty cannot be cast to org.apache.cayenne.reflect.AttributeProperty
      at org.apache.cayenne.access.jdbc.EJBQLConditionTranslator.processParameter(EJBQLConditionTranslator.java:708)
      at org.apache.cayenne.access.jdbc.EJBQLConditionTranslator.visitNamedInputParameter(EJBQLConditionTranslator.java:345)

      Attachments

        Activity

          People

            antidote Andrey Razumovsky
            antidote Andrey Razumovsky
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: