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

JVMVRFY012 when using openjpa together with hyperjaxb3

    XMLWordPrintableJSON

Details

    Description

      We are facing a problem with class enhancing generated by hyperjaxb3.

      "Caused by: java.lang.VerifyError: JVMVRFY012 stack shape inconsistent; class=foo/Bar, metoda=pcgetDataTimeItem()Ljava/util/Date;, pc=7"

      The problem occurs on every usage of non JPA compatible type like XMLGregorianCalendar.
      For those types, the hyperjaxb3 plugin creates a kind of "proxy" setter/getter that uses JPA capable type.

      Example of such proxy getter/setter:
      <code>
      @Basic
      @Column(name = "DATATIMEITEM")
      @Temporal(TemporalType.TIMESTAMP)
      public Date getDataTimeItem()

      { return XmlAdapterUtils.unmarshall(XMLGregorianCalendarAsDateTime.class, this.getDataTime()); }

      </code>

      then the XmlAdapterUtils.unmarshall looks like:

      <code>
      public static <ValueType, BoundType> BoundType unmarshall(
      Class<? extends XmlAdapter<ValueType, BoundType>> xmlAdapterClass,
      ValueType v) {
      try

      { final XmlAdapter<ValueType, BoundType> xmlAdapter = getXmlAdapter(xmlAdapterClass); return xmlAdapter.unmarshal(v); }

      catch (Exception ex)

      { throw new RuntimeException(ex); }

      }
      </code>

      I have found that the problem occurs only because of the type of XmlAdapterUtils.unmarshall method. The problem is that it's 1st type is a "Class". Changing the 1st type from Class type to any other like Object solves the problem but it is not a solution.

      I think the problem is somewhere in serp project as after the enhancment process of classes containing non JPA capable XSD types, each call of that class generates the JVMVRFY012 exception- even during junit tests.

      Please note, that this bug is a blocker for my project.

      Attachments

        1. serp-1.14.1.pom
          4 kB
          Kevin W. Sutter
        2. serp-1.14.1.jar
          202 kB
          Kevin W. Sutter
        3. OpenJpa2240BugTestProject_v1.1.tar.gz
          4 kB
          Piotr Klimczak
        4. mvn.out
          2 kB
          Kevin W. Sutter

        Issue Links

          Activity

            People

              kwsutter Kevin W. Sutter
              nannou9 Piotr Klimczak
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: