Hi Rutger,
> I've just started using fluid to generate domain objects and fluid
looks like a very nice package for this :-)
Thank you.
You are right about the restrictins in generating list of complex types.
It is a limitation of processing SDO properties in Fluid and not of
OpenJPA. My local sandbox copy of Fluid generates mapping for
List<String>. I will update a version in the website (can not do it now
because I have broken some other things :).
If this is support is urgent for you, you can patch
src/main/java/org/apache/openjpa/sdo/mapping/PrimitiveListMapping.java
as follows:
public String getFieldTypeName() {
- return "java.util.List<" +
- ImplHelper.getComponentType(property.getType()).
- getInstanceClass().getName() + ">";
+ Type elementType =
ImplHelper.getComponentType(property.getType());
+ if (elementType==null)
+ elementType = property.getType();
+ return "java.util.List<" +
elementType.getInstanceClass().getName() + ">";
}
FYI, in the next version Fluid will support dynamic bytecode
generation such that no intermediate code generation will be required.
Pinaki Poddar
972.834.2865
________________________________
From: Rutger Lubbers [mailto:[EMAIL PROTECTED]
Sent: Monday, August 20, 2007 8:34 AM
To: Pinaki Poddar
Subject: Question about lists in fluid / xsd
Hi Pinaki,
I've just started using fluid to generate domain objects and
fluid looks like a very nice package for this :-)
A small question about the xsd that fluid (openJPA?) accepts.
It accepts a complex type as a definition of a list, but it does
not allow a primitive type to be defined as a list.
I mean, that it does accept:
<xs:element name="authors" >
<xs:complexType>
<xs:sequence>
<xs:element name="authorName"
type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
And does not accept:
<xs:element name="authors" type="xs:string" minOccurs="1"
maxOccurs="unbounded"/>
Is there a reason for this? (I haven't been able to dig deeper
into this, but it looks like the type mapping generated returns a null
implementation for the type of this list...)
Why this question? The last one is a bit easier to model :-)
Thanks & Kind Regards,
Rutger Lubbers
Notice: This email message, together with any attachments, may contain
information of BEA Systems, Inc., its subsidiaries and affiliated
entities, that may be confidential, proprietary, copyrighted and/or legally
privileged, and is intended solely for the use of the individual or entity
named in this message. If you are not the intended recipient, and have received
this message in error, please immediately return this by email and then delete
it.