Changing the generated classes is not the way you should go. Is it possible to share your XSD and the generated classes?
Best, Christian On Mon, Apr 16, 2012 at 7:33 PM, atg roxx <atgr...@gmail.com> wrote: > Hi Chirstian, > > After making all the changes suggested by you. Everything is working fine. > > But I have some issue here. I have to go and add namespace at each and > every variable of the generated classes. > > This is big pain. Also if the wsdl get changed then then this process of > adding name space at each and every element has to be repeated again. > > Is there any work around for this. > > -cheers, > atg roxx > > > > On Mon, Apr 16, 2012 at 5:56 PM, atg roxx <atgr...@gmail.com> wrote: > > > Hi Christian, > > > > I got the solution for the previous question asked by me : > > > > You have to simply add the following in the package-info.java > > > > @javax.xml.bind.annotation.XmlSchema(namespace = " > > http://www.camel.apache.org/jaxb/example/order/1" , > > > > xmlns = { > > @XmlNs(namespaceURI = " http://www.camel.apache.org/jaxb/example/order/1", > > prefix = "ns1"), > > @XmlNs(namespaceURI = > http://www.camel.apache.org/jaxb/example/address/1 ", > > prefix = "ns2") > > }, > > elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) > > } > > > > > > > > -cheers, > > atg roxx > > > > On Mon, Apr 16, 2012 at 4:32 PM, atg roxx <atgr...@gmail.com> wrote: > > > >> Hi Christian, > >> > >> Thansk for the link. > >> > >> I run the test case given by you. It works fine but > >> > >> while marshalling I can see the below xml and if you notice we dont > have > >> namespace for <order> or <id> element. > >> > >> > >> <?xml version="1.0" encoding="UTF-8" standalone="yes"?> > >> <order xmlns="http://www.camel.apache.org/jaxb/example/order/1" > >> xmlns:ns2="http://www.camel.apache.org/jaxb/example/address/1"> > >> <id>1</id> > >> <ns2:address> > >> <ns2:street>Main Street</ns2:street> > >> <ns2:streetNumber>3a</ns2:streetNumber> > >> <ns2:zip>65843</ns2:zip> > >> <ns2:city>Sulzbach</ns2:city> > >> </ns2:address> > >> </order> > >> > >> -cheers, > >> atg roxx > >> > >> On Mon, Apr 16, 2012 at 4:02 PM, Christian Müller < > >> christian.muel...@gmail.com> wrote: > >> > >>> It's in SVN: > >>> > >>> > https://svn.apache.org/repos/asf/camel/trunk/components/camel-jaxb/src/test/java/org/apache/camel/example/ > >>> > >>> Best, > >>> Christian > >>> > >>> On Mon, Apr 16, 2012 at 11:41 AM, atg roxx <atgr...@gmail.com> wrote: > >>> > >>> > Hi Christian, > >>> > > >>> > Could you please provide the code for the Order and Address class. > >>> > > >>> > > >>> > -Regards, > >>> > atg roxx > >>> > > >>> > On Sun, Apr 15, 2012 at 12:37 PM, Christian Müller < > >>> > christian.muel...@gmail.com> wrote: > >>> > > >>> > > The interesting part is how do you define the > >>> > > "jaxbGetProductPriceOffersRequest"? > >>> > > However, I added a unit test to make sure it works and to show how > >>> [1]. I > >>> > > hope with this example you are able to solve your issue. > >>> > > > >>> > > [1] > >>> > > > >>> > > > >>> > > >>> > https://svn.apache.org/repos/asf/camel/trunk/components/camel-jaxb/src/test/java/org/apache/camel/converter/jaxb/JaxbDataFormatMultipleNamespacesTest.java > >>> > > > >>> > > Best, > >>> > > Christian > >>> > > > >>> > > On Fri, Apr 13, 2012 at 5:11 PM, atg roxx <atgr...@gmail.com> > wrote: > >>> > > > >>> > > > Hi Arnaud, > >>> > > > > >>> > > > Yes we have different namespace for GetProductPriceOffers and > >>> > > > partner/request element also the classes corresponding to them > have > >>> > their > >>> > > > respective namespace. > >>> > > > > >>> > > > Still I am not able unmarshall. > >>> > > > > >>> > > > My Camel Version is 2.8.2 > >>> > > > I am doing marshalling and unmarshalling in the following way: > >>> > > > from(Constants.ROUTE_GETPRODUCTPRICEOFFERS) > >>> > > > .to(Constants.LOG_IN_INFO_WITH_HEADERS) > >>> > > > .convertBodyTo(String.class) > >>> > > > .unmarshal(jaxbGetProductPriceOffersRequest) > >>> > > > .to(Constants.LOG_IN_INFO_WITH_HEADERS) > >>> > > > .marshal(jaxbGetProductPriceOffersRequest) > >>> > > > .log("after marshalling") > >>> > > > .to(Constants.LOG_IN_INFO_WITH_HEADERS) > >>> > > > .process(new MondialRequestProcessor(userId, password)) > >>> > > > .log("Finished processing > >>> > > > > >>> "+MondialConstants.GETPRODUCTPRICEOFFERS+Constants.LOG_CORRELATIONID); > >>> > > > > >>> > > > > >>> > > > --cheers, > >>> > > > atg roxx > >>> > > > On Fri, Apr 13, 2012 at 12:20 PM, DEPREZ Arnaud AWL-IT < > >>> > > > arnaud.dep...@atos.net> wrote: > >>> > > > > >>> > > > > Maybe it's a problem of namespaces. > >>> > > > > > >>> > > > > Can you tell me if you use different namespaces for > >>> > > GetProductPriceOffers > >>> > > > > and partner/request element ? > >>> > > > > If they are different, it must be specified in your JAXB java > >>> class > >>> > > > model. > >>> > > > > > >>> > > > > KR, > >>> > > > > > >>> > > > > Arnaud Deprez > >>> > > > > > >>> > > > > > >>> > > > > -----Original Message----- > >>> > > > > From: Christian Müller [mailto:christian.muel...@gmail.com] > >>> > > > > Sent: vendredi 13 avril 2012 12:58 > >>> > > > > To: users@camel.apache.org > >>> > > > > Subject: Re: Camel Jaxb- Not able to unmarshall a xml > >>> > > > > > >>> > > > > Which version of Camel do you use? > >>> > > > > How do you use the JAXB Marschaller/Unmarschaller (explicitly > or > >>> via > >>> > > the > >>> > > > > FallbackTypeConverter)? > >>> > > > > Could you share your code? > >>> > > > > > >>> > > > > Best, > >>> > > > > Christian > >>> > > > > > >>> > > > > Sent from a mobile device > >>> > > > > Am 13.04.2012 12:45 schrieb "atg roxx" <atgr...@gmail.com>: > >>> > > > > > >>> > > > > > Hi Guys, > >>> > > > > > > >>> > > > > > I am facing a problem. > >>> > > > > > > >>> > > > > > I am using camel jaxb to marshall and unmarshall java objects > >>> which > >>> > > is > >>> > > > > > working fine for me till now. > >>> > > > > > But now I got a special case where I am not able to properly > >>> > > unmarshall > >>> > > > > an > >>> > > > > > xml whose class have mulitple namespace (different for root > >>> element > >>> > > and > >>> > > > > sub > >>> > > > > > elements). > >>> > > > > > > >>> > > > > > sample xml : > >>> > > > > > > >>> > > > > > Class corresponding to each <element> is having different > >>> > namespace. > >>> > > > > > > >>> > > > > > I am using JaxbDataFormat for this unmarshalling and setting > >>> the > >>> > > > > partclass > >>> > > > > > name to the root element. > >>> > > > > > > >>> > > > > > <GetProductPriceOffers> > >>> > > > > > <partner> > >>> > > > > > <Password>abc</Password> > >>> > > > > > <UserID>xyz</UserID> > >>> > > > > > </partner> > >>> > > > > > > >>> > > > > > <request> > >>> > > > > > <HotelDetails> > >>> > > > > > <HotelAddress> > >>> > > > > > <City /> > >>> > > > > > <Country>GB</Country> > >>> > > > > > <PostalCode /> > >>> > > > > > <Region>GB</Region> > >>> > > > > > </HotelAddress> > >>> > > > > > <HotelChain>Sample Hotel Chain</HotelChain> > >>> > > > > > > <HotelCheckinDate>2011-08-19T04:55:02-04:00</HotelCheckinDate> > >>> > > > > > > >>> <HotelCheckoutDate>2011-08-24T04:55:02-04:00</HotelCheckoutDate> > >>> > > > > > <HotelName>Mariott</HotelName> > >>> > > > > > <HotelRating>5</HotelRating> > >>> > > > > > <NumberOfAdultTravelers>1</NumberOfAdultTravelers> > >>> > > > > > <NumberOfInfantTravelers>0</NumberOfInfantTravelers> > >>> > > > > > <NumberOfKidTravelers>0</NumberOfKidTravelers> > >>> > > > > > <NumberOfRooms>1</NumberOfRooms> > >>> > > > > > <NumberOfSeniorTravelers>0</NumberOfSeniorTravelers> > >>> > > > > > <NumberOfYouthTravelers>2</NumberOfYouthTravelers> > >>> > > > > > </HotelDetails> > >>> > > > > > </request> > >>> > > > > > </GetProductPriceOffers> > >>> > > > > > > >>> > > > > > > >>> > > > > > > >>> > > > > > I am able to unmarshall it but when i check the object > >>> created, I > >>> > > found > >>> > > > > > that the <request> and <partner> object are not set to values > >>> in > >>> > the > >>> > > > xml > >>> > > > > > but are set to null. > >>> > > > > > > >>> > > > > > > >>> > > > > > Could anyone let me know what can be the issue or how to > >>> resolve > >>> > > this . > >>> > > > > > > >>> > > > > > > >>> > > > > > --cheers, > >>> > > > > > atg roxx > >>> > > > > > > >>> > > > > > >>> > > > > > >>> > > > > Atos Worldline SA/NV - Chaussee de Haecht 1442 Haachtsesteenweg > >>> > > > > - 1130 Brussels - Belgium > >>> > > > > RPM-RPR Bruxelles-Brussel - TVA-BTW BE 0418.547.872 > >>> > > > > Bankrekening-Compte Bancaire-Bank Account 310-0269424-44 > >>> > > > > BIC BBRUBEBB - IBAN BE55 3100 2694 2444 > >>> > > > > > >>> > > > > "The information contained in this e-mail and any attachment > >>> thereto > >>> > is > >>> > > > > confidential and may contain information which is protected by > >>> > > > intellectual > >>> > > > > property rights. > >>> > > > > This information is intended for the exclusive use of the > >>> > recipient(s) > >>> > > > > named above. > >>> > > > > This e-mail does not constitute any binding relationship or > offer > >>> > > toward > >>> > > > > any of the addressees. > >>> > > > > If you are not one of the addressees , one of their employees > or > >>> a > >>> > > proxy > >>> > > > > holder entitled to hand over this message to the addressee(s), > >>> any > >>> > use > >>> > > of > >>> > > > > the information contained herein (e.g. reproduction, > divulgation, > >>> > > > > communication or distribution,...) is prohibited. > >>> > > > > If you have received this message in error, please notify the > >>> sender > >>> > > and > >>> > > > > destroy it immediately after. > >>> > > > > The integrity and security of this message cannot be guaranteed > >>> and > >>> > it > >>> > > > may > >>> > > > > be subject to data corruption, interception and unauthorized > >>> > amendment, > >>> > > > for > >>> > > > > which we accept no liability." > >>> > > > > > >>> > > > > > >>> > > > > >>> > > > >>> > > >>> > >> > >> > > >