Torque
  1. Torque
  2. TORQUE-76

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

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.3-RC1
    • Fix Version/s: 3.3
    • Component/s: Generator
    • Labels:
      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>
      ...

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Thomas Vandahl
            Reporter:
            Ronny Völker
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development