I just opened a ticket and attached a test case using the template provided.
http://jira.codehaus.org/browse/CASTOR-3042 Thanks again, John On Mon, Feb 28, 2011 at 11:46 AM, John Dzak <[email protected]> wrote: > Can do, thanks. > > > On Sat, Feb 26, 2011 at 5:52 AM, Werner Guttmann <[email protected]>wrote: > >> John, >> >> can you please create an issue at >> >> http://jira.codehaus.org/browse/CASTOR >> >> and attach all relevant files. Ideally you could (should) attach a working >> test case (if possible based upon the test case template we supply). >> >> Kind Regards >> Werner >> >> >> On 25.02.2011 21:45, John Dzak wrote: >> >>> Hello list, >>> >>> I've been having a problem with keeping elements ordered according to the >>> mapping file when marshalling an object. The mapping file is being used >>> because changes I make to the mapping file are immediately reflected in >>> the >>> marshaled output. I'm also not using the static marshal method. I put >>> my >>> code, mapping file, expected output, and actual output in pastebin[1] for >>> easier reading. I also included those artifacts below for the mailing >>> archive. >>> >>> Does anyone have any suggestions? >>> >>> Thanks, >>> John >>> >>> [1]: http://pastebin.com/Htg4FBq7 >>> >>> ------------------------------ >>> ------------------------------- >>> >>> /* Marshaller */ >>> ResourceLoader resourceLoader = new DefaultResourceLoader(); >>> StringWriter writer = new StringWriter(); >>> Marshaller marshaller = new Marshaller(writer); >>> >>> URL url = >>> resourceLoader.getResource("classpath:castor-mapping.xml").getURL(); >>> Mapping mapping = new Mapping(); >>> mapping.loadMapping(url); >>> marshaller.setMapping(mapping); >>> >>> marshaller.marshal(inputObject); >>> /* Marshaller */ >>> >>> ----------------------------------------------------------------- >>> >>> /* Mapping XML */ >>> <?xml version="1.0"?> >>> <mapping> >>> <description>Description of the mapping</description> >>> <class >>> >>> name="edu.northwestern.bioinformatics.studycalendar.domain.ScheduledStudySegment" >>> auto-complete="false"> >>> <field name="root"> >>> <bind-xml name="root" node="attribute" location="id"/> >>> </field> >>> <field name="extension"> >>> <bind-xml name="extension" node="attribute" location="id"/> >>> </field> >>> <field name="startDate" >>> >>> handler="edu.northwestern.bioinformatics.studycalendar.xml.writers.nes.DateFieldHandler" >>> type="string"> >>> <bind-xml name="value" node="attribute" location="start-date"/> >>> </field> >>> <field name="startDay" >>> >>> handler="edu.northwestern.bioinformatics.studycalendar.xml.writers.nes.IntegerFieldHandler" >>> type="integer"> >>> <bind-xml name="value" node="attribute" location="start-day"/> >>> </field> >>> <field name="studySegment"> >>> <bind-xml name="study-segment-id" node="element"/> >>> </field> >>> <field name="activities" >>> >>> type="edu.northwestern.bioinformatics.studycalendar.domain.ScheduledActivity" >>> collection="arraylist"> >>> <bind-xml name="scheduled-activity" node="element"/> >>> </field> >>> </class> >>> </mapping> >>> /* Mapping XML */ >>> >>> ------------------------------------------------------ >>> >>> /* Expected Output */ >>> <?xml version="1.0"?> >>> <scheduled-study-segment> >>> <id root="NU" extension="200.1"/> >>> <start-date value="20091205"/> >>> <start-day value="3"/> >>> <study-segment-id root="NU" extension="200.2"/> >>> <scheduled-activity/> >>> <scheduled-activity/> >>> </scheduled-study-segment> >>> /* Expected Output */ >>> >>> -------------------------------------------------------- >>> >>> /* Actual Output */ >>> <?xml version="1.0" encoding="UTF-8"?> >>> <scheduled-study-segment> >>> <study-segment-id root="NU" extension="200.2"/> >>> <scheduled-activity/> >>> <scheduled-activity/> >>> <id root="NU" extension="200.1"/> >>> <start-date value="20091205"/> >>> <start-day value="3"/> >>> </scheduled-study-segment> >>> /* Actual Output */ >>> >>> >

