Uploaded image for project: 'OpenJPA'
  1. OpenJPA
  2. OPENJPA-2260

Parenthesis-augmented parameters are improperly processed at EM level

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.1.0, 2.1.1, 2.2.0
    • Fix Version/s: 2.1.2, 2.2.1, 2.3.0
    • Component/s: jpa
    • Labels:
      None

      Description

      The processing of properties for the creation of an EntityManager do not properly handle simple value types that can be augmented by parenthesized configuration options.

      For example,

      Map propMap = new HashMap();
      propMap.put("openjpa.jdbc.QuerySQLCache", "true(EnableStatistics=true)");
      EntityManager em = emf.createEntityManager(propMap);

      actually results in the creation of an EntityManager instance where the Query SQL Cache is disabled. This is because the entire value, "true(EnableStatistics=true)" is passed into Strings.parse() which returns the result of a Boolean.valueOf() operation. Since "true" doesn't match "true(EnableStatistics=true)", the call to parse() returns false - so in this case, the QuerySQLCache property is set to false causing it to be disabled for that instance of EntityManager.

        Activity

        There are no comments yet on this issue.

          People

          • Assignee:
            fyrewyld Jody Grassel
            Reporter:
            fyrewyld Jody Grassel
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development