Sorry, copy paste error.

For the schema that lead to an exception, it was :
  <xsd:complexType name="content" mixed="false">
      <xsd:sequence minOccurs="0" maxOccurs="unbounded">
        <xsd:any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
  </xsd:complexType>

Nicolas

Frank Budinsky wrote:
Nicolas,

One more thing I noticed. Your schema has an error:

This part:

  <xsd:element ref="um:userref" minOccurs="0"/>

should be:

  <xsd:element type="um:userref" minOccurs="0"/>

since userref is a type, not a global element.

Frank.


Frank Budinsky/Toronto/i...@ibmca wrote on 08/21/2009 01:08:01 PM:

 > This part seems quite wrong:
 >
 > Property contentProp = do_audit.getType().getProperty("content");
 > DataObject contentDO = dobj.createDataObject(contentProp,
 > contentProp.getType());
 > contentDO.getList("userref").add(dobj);
 > do_audit.setDataObject(contentProp, contentDO);
 >
 > I think it should be something like this:
 >
 > DataObject contentDO = do_audit.createDataObject("content");
 > contentDO.getList("userref").add(dobj);
 >
 > Frank.
 >
 >
 > Nicolas Nobelis <n...@blue-elephant-systems.com> wrote on 08/21/2009
 > 12:20:49 PM:
 >
 > > Greetings !
 > >
 > > Sorry for this huge post but I'm completely stuck with SDO ...
 > >
 > > I am using Tuscany tuscany-sdo-impl-1.1.1.jar with JDK 6.
 > >
 > > I have a XML schema audit.xsd :
 > > <xsd:schema targetNamespace="http://example.com/request/1.0";
 > >    xmlns:xsd="http://www.w3.org/2001/XMLSchema";
 > >    xmlns:req="http://example.com/request/1.0";
 > >    xmlns:um="http://example.com/usermodel/1.0";
 > >    xmlns="http://example.com/request/1.0";
 > >    elementFormDefault="qualified">
 > >
 > >    <xsd:include schemaLocation="usermodel.xsd"/>
 > >
 > >    <xsd:complexType name="auditlog">
 > >      <xsd:all>
 > >       [...]
 > >        <xsd:element name="content" type="content" minOccurs="0"
 > > maxOccurs="1"/>
 > >      </xsd:all>
 > >    </xsd:complexType>
 > >
 > >    <xsd:complexType name="content" mixed="false">
 > >        <xsd:sequence minOccurs="0" maxOccurs="unbounded">
 > >          <xsd:element ref="um:userref" minOccurs="0"/>
 > >        </xsd:sequence>
 > >    </xsd:complexType>
 > > </xsd:schema>
 > >
 > > This schema references usermodel.xsd which contains :
 > >    <xsd:complexType name="umref">
 > >      <xsd:all>
 > >        <xsd:element name="name" type="xsd:string" minOccurs="1"
 > > maxOccurs="1"/>
 > >      </xsd:all>
 > >    </xsd:complexType>
 > >    <xsd:complexType name="userref">
 > >      <xsd:complexContent>
 > >        <xsd:extension base="um:umref">
 > >        </xsd:extension>
 > >      </xsd:complexContent>
 > >    </xsd:complexType>
 > >
 > > So I give these two schemas to the XSDHelper through the "define"
 > > method. From the same HelperContext, I create a userref DO :
 > > dobj = getDataFactory().create("http://example.com/usermodel/1.0";,
 > > "userref");
 > > I set its property :
 > > dobj.setString("name", "blabla");
 > >
 > > Then, I take an AuditLog DataObject do_audit and I add dobj as the
 > > attribute "content" :
 > >
 > > Property contentProp = do_audit.getType().getProperty("content");
 > > DataObject contentDO = dobj.createDataObject(contentProp,
 > > contentProp.getType());
 > > contentDO.getList("userref").add(dobj);
 > > do_audit.setDataObject(contentProp, contentDO);
 > >
 > > Finally, from the same HelperContext, I save the do_audit object :
 > >
> > getXMLHelper().save(content, "http://example.com/request/1.0";, "auditlog");
 > >
 > > and I get :
 > >
 > > <?xml version="1.0" encoding="UTF-8"?>
 > > <req:auditlog xmlns:req="http://example.com/request/1.0";
 > > xmlns:um="http://example.com/usermodel/1.0";>
 > >    [...]
 > >    <req:content>
 > >
 > > <um:userref>org.apache.tuscany.sdo.impl.dynamicdataobjecti...@2c47d7
 > > (eClass: org.apache.tuscany.sdo.impl.classi...@1e2a543 (name: userref)
 > > (instanceClassName: null) (abstract: false, interface: false))
 > >      </um:userref>
 > >    </req:content>
 > > </req:auditlog>
 > >
 > > Could anybody tell me why the address of the object is written and not
 > > its contents ?
 > >
 > > Thanks a lot for any tips or advice :)
 > > Best regards and a nice w.e. to all !
 > >
 > > Nicolas Nobelis
 > >
 > >
 > >
 > >


Reply via email to