Uploaded image for project: 'Tuscany'
  1. Tuscany
  2. TUSCANY-3387

ClassCastException ...impl.ClassImpl cannot be cast to ....ecore.EDataType. tying track changes in OppositeProperty sample

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • Java-SDO-Next
    • None
    • jdk1.6.0_16
      win xp SP2
      trunk src #834610

    Description

      trunk/sample/src/main/resources/sports.xsd#834610

      1. add in "<xsd:schema" -> xmlns:sdo="commonj.sdo"
      <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:sdo="commonj.sdo"
      xmlns:sdoJava="commonj.sdo/java"
      xmlns:sdoXML="commonj.sdo/xml"
      xmlns:spt="http://www.apache.org/tuscany/sports"
      targetNamespace="http://www.apache.org/tuscany/sports">

      2. put sdo:ChangeSummaryType:changes
      <xsd:complexType name="SportingUnion">
      <xsd:sequence>
      <xsd:element name="member" type="spt:Player" maxOccurs="unbounded" />
      <xsd:element name="team" type="spt:Team" maxOccurs="unbounded" />
      <xsd:element name="changes" type="sdo:ChangeSummaryType"/>
      </xsd:sequence>
      </xsd:complexType>

      trunk/sample/src/main/java/org/apache/tuscany/samples\sdo\intermediate\OppositeProperty.java#834610
      3. start logging
      DataObject union = unionDoc.getRootObject();
      union.getChangeSummary().beginLogging();

      RESULT:
      <?xml version="1.0" encoding="ASCII"?>
      <spt:union xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:spt="http://www.apache.org/tuscany/sports"
      xsi:schemaLocation="http://www.apache.org/tuscany/sports sports.xsd">
      <member ID="p0" captainFor="t0">
      <name>p 0</name>
      </member>
      <member ID="p1" captainFor="t1">
      <name>p 1</name>
      </member>
      <member ID="p2">
      <name>p 2</name>
      </member>
      <member ID="p3">
      <name>p 3</name>
      </member>
      <team ID="t0" captain="p0">
      <name>t 0</name>
      <player>p0</player>
      <player>p3</player>
      </team>
      <team ID="t1" captain="p1">
      <name>t 1</name>
      <player>p1</player>
      <player>p2</player>
      </team>
      <changes logging="false" />
      </spt:union>
      Exception in thread "main" java.lang.ClassCastException: org.apache.tuscany.sdo.impl.ClassImpl cannot be cast to org.eclipse.emf.ecore.EDataType
      at org.apache.tuscany.sdo.util.resource.ChangeSummaryStreamSerializer.convertToString(ChangeSummaryStreamSerializer.java:363)
      at org.apache.tuscany.sdo.util.resource.ChangeSummaryStreamSerializer.saveChangeSummary(ChangeSummaryStreamSerializer.java:644)
      at org.apache.tuscany.sdo.util.resource.SDOXMLResourceImpl$SDOXMLSaveImpl.saveChangeSummary(SDOXMLResourceImpl.java:857)
      at org.apache.tuscany.sdo.util.resource.SDOXMLResourceImpl$SDOXMLSaveImpl.saveDataTypeElementSingle(SDOXMLResourceImpl.java:867)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.saveFeatures(XMLSaveImpl.java:1370)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.saveElementID(XMLSaveImpl.java:2462)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.saveElement(XMLSaveImpl.java:1036)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.saveElement(XMLSaveImpl.java:922)
      at org.apache.tuscany.sdo.util.resource.SDOXMLResourceImpl$SDOXMLSaveImpl.saveElementFeatureMap(SDOXMLResourceImpl.java:895)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.saveFeatures(XMLSaveImpl.java:1355)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.writeTopObject(XMLSaveImpl.java:627)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.traverse(XMLSaveImpl.java:552)
      at org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.save(XMLSaveImpl.java:233)
      at org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doSave(XMLResourceImpl.java:203)
      at org.eclipse.emf.ecore.resource.impl.ResourceImpl.save(ResourceImpl.java:993)
      at org.apache.tuscany.sdo.helper.XMLDocumentImpl.save(XMLDocumentImpl.java:209)
      at org.apache.tuscany.sdo.helper.XMLDocumentImpl.save(XMLDocumentImpl.java:160)
      at org.apache.tuscany.sdo.helper.XMLDocumentImpl.save(XMLDocumentImpl.java:167)
      at org.apache.tuscany.sdo.helper.XMLHelperImpl.save(XMLHelperImpl.java:168)
      at org.apache.tuscany.samples.sdo.intermediate.OppositeProperty.run(OppositeProperty.java:83)
      at org.apache.tuscany.samples.sdo.intermediate.OppositeProperty.main(OppositeProperty.java:52)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)

      Process finished with exit code 1

      Attachments

        Activity

          People

            Unassigned Unassigned
            euee Kravchenko Eugene
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: