Uploaded image for project: 'Torque'
  1. Torque
  2. TORQUE-76

broken combatibility to 3.2: incompatible types error when compiling BasePeer classes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.3-RC1
    • 3.3
    • Generator
    • None

    Description

      When compiling Scarab with Torque3.3rc1 lots of incompatible types error are returned.
      When compiling with Torque3.2 everything is compiled successfully.

      The root cause are changes of torque/templates/trunk/src/templates/om/Peer.vm in r373352.
      In this revisions some class casts have been removed which seem to be required in BasePeer classes, if inheritance and interfaces are used in the schema mapping.

      Sample compilation output:
      [javac] C:\elaxy\svn\scarab_trunk\src\java\org\tigris\scarab\om\BaseIssuePeer.java:933: incompatible types
      [javac] found : org.tigris.scarab.om.Module
      [javac] required: org.tigris.scarab.om.ScarabModule
      [javac] ScarabModule temp_obj2 = temp_obj1.getModule();

      The buggy line using Torque3.3rc1 templates:
      Issue temp_obj1 = (Issue) results.get(j);
      ScarabModule temp_obj2 = temp_obj1.getModule();

      The sameline using Torque3.2 templates:
      Issue temp_obj1 = (Issue) results.get(j);
      ScarabModule temp_obj2 = (ScarabModule)temp_obj1.getModule();

      The interface of Issue.getModule() (inherited from BaseIssue):
      public Module getModule()

      The related sections in the schema.xml of Scarab:
      <table name="SCARAB_MODULE" idMethod="idbroker" javaName="ScarabModule"
      baseClass="org.tigris.scarab.om.AbstractScarabModule"
      interface="Module">
      ...

      <table name="SCARAB_ISSUE" idMethod="idbroker" javaName="Issue">
      ...
      <column name="MODULE_ID" required="true" type="INTEGER"></column>

      <foreign-key foreignTable="SCARAB_MODULE">
      <reference local="MODULE_ID" foreign="MODULE_ID"/>
      </foreign-key>
      ...

      Attachments

        1. torque-76-testcase.zip
          1.0 kB
          Ronny Völker

        Activity

          People

            tv Thomas Vandahl
            ronvoe122 Ronny Völker
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: