100% correct. Werner
Ralf Joachim wrote: > Werner, > > the problem I had using 1.2 release was that the initialization: > > Mapping mapping = new Mapping(); > mapping.loadMapping(...); > ClassDescriptorResolver classDescriptorResolver = > ClassDescriptorResolverFactory > .createClassDescriptorResolver(BindingType.XML); > MappingUnmarshaller mappingUnmarshaller = new MappingUnmarshaller(); > MappingLoader mappingLoader = mappingUnmarshaller.getMappingLoader( > mapping, BindingType.XML); > classDescriptorResolver.setMappingLoader(mappingLoader); > > worked for Unmarshaller but not for Marshaller. As far as I recall a > NullPointerException was thrown but I'm not sure about that. Therefore > my suggestion to try it yourself first. > > To summarize what I understood so far. > > (XML)ClassDescriptorResolver initialization did not work with latest > relase (1.2) but the problem is already fixed in trunk. As pointed out > at mail thread: > > NullPointerException when using a ClassDescriptorResolver > > documentation on Castor home page has not been updated with changes > after 1.2 so the current description would lead the user to write code > that does not work, at least for Marshaller. > > Is this interpretation correct now or did I miss anything. > > Regards > Ralf > > > Werner Guttmann schrieb: >> Ralf, >> >> there's a test case in SVN trunk that checks the correct working of both >> XMLContext and (XML)ClassDescriptorResolver. And - apart from an issue >> that has been fixed breifly after the 1.2 release - this test has been >> working all time. >> >> What is the problem you are seeing, if I may ask ? >> >> Werner >> >> Ralf Joachim wrote: >>> Werner, >>> >>> try to use the XMLClassDescriptorResolver yourself first. According to >>> my experience this doesn't work any more since the introduction of >>> XMLContext. I had to change all my marshaling code to fix that after >>> upgrade to 1.2. >>> >>> Regards >>> Ralf >>> >>> >>> Werner Guttmann schrieb: >>>> Hi, >>>> >>>> how about trying things with the XMLClassDescriptorResolver document >>>> first, to get and/or keep you going. >>>> >>>> Have a look at the XML best practise document at http://www.castor.org, >>>> and let us know whether this is enough information. >>>> >>>> Werner >>>> >>>> brandywheat wrote: >>>>> Hi, >>>>> I do not have enough experience with castor (yet) to see either method >>>>> being beneficial over the other ... so I will take what ever you suggest. >>>>> Working from the snapshot is not an issue, nor is waiting a couple of >>>>> days >>>>> a problem - what ever is best for you - I'll be happy when it is working! >>>>> >>>>> I do have a couple of class to marshal and these include quite a few >>>>> classes (30+) which are included in the output structure - I am not sure >>>>> if >>>>> this would be an issue with option b (do I have to add a >>>>> classDescriptionResolver for each class ?). >>>>> >>>>> Many, many thanks for the super response on this, I am suitably >>>>> impressed >>>>> :-) >>>>> >>>>> Thanks, >>>>> Brian >>>>> >>>>> >>>>> >>>>> Werner Guttmann wrote: >>>>>> Well, in that case, there's two options: >>>>>> >>>>>> a) switch to XMLContext (where we'd have to add a setClassLoader() >>>>>> method, which is sufficiently easy; if you are fine working against a >>>>>> snapshot releaswe, this could be done within one or two days). >>>>>> >>>>>> b) Set an XMLClassDescriptorResolver on your Marshaller, and use >>>>>> XMLClassDescriptorResolver.setClassLoader() to set a custom class loader. >>>>>> >>>>>> Does this make sense ... >>>>>> >>>>>> Werner >>>>>> >>>>>> >>>>>> brandywheat wrote: >>>>>>> Hi, >>>>>>> I'm on the latest castor version (1.2) ... >>>>>>> >>>>>>> Thanks, >>>>>>> Brian >>>>>>> >>>>>>> >>>>>>> >>>>>>> Werner Guttmann wrote: >>>>>>>> Hi, >>>>>>>> >>>>>>>> What version of Castor are you using ? There's a solution to this >>>>>>>> problem, but it depends on whether you are on a release that has >>>>>>>> support >>>>>>>> for XMLContext already (or not). >>>>>>>> >>>>>>>> Werner >>>>>>>> >>>>>>>> brandywheat wrote: >>>>>>>>> Hi, >>>>>>>>> I am currently having problems with the castor marshaller and >>>>>>>>> classloaders. >>>>>>>>> My code works in the unit tests but fails once included in a netbeans >>>>>>>>> RPC - >>>>>>>>> the problem looks to be the classloader and the modules within the >>>>>>>>> RPC. >>>>>>>>> >>>>>>>>> I can resolve the issue of the classloader with the code: >>>>>>>>> Marshaller m = new Marshaller(); >>>>>>>>> Mapping mapping = new >>>>>>>>> Mapping(Thread.currentThread().getContextClassLoader()); >>>>>>>>> mapping.loadMapping("c:\\temp\\mapping.xml"); >>>>>>>>> m.setMapping(mapping); >>>>>>>>> m.marshal(this, writer); >>>>>>>>> >>>>>>>>> But this forces me to write a mapping file, which I do not have >>>>>>>>> available >>>>>>>>> and do not really want to generate. >>>>>>>>> >>>>>>>>> Is it possible to set the classloader for the marshaller without >>>>>>>>> having >>>>>>>>> to >>>>>>>>> define a mapping file, e.g. have it use the default structure it would >>>>>>>>> generated without a mapping file? (If I skip the loadMapping then the >>>>>>>>> setMapping gives an exception saying a mapping must be loaded >>>>>>>>> first....) >>>>>>>>> >>>>>>>>> Thanks in Advance, >>>>>>>>> Brian >>>>>>>>> >>>>>>>> --------------------------------------------------------------------- >>>>>>>> To unsubscribe from this list, please visit: >>>>>>>> >>>>>>>> http://xircles.codehaus.org/manage_email >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe from this list, please visit: >>>>>> >>>>>> http://xircles.codehaus.org/manage_email >>>>>> >>>>>> >>>>>> >>>>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe from this list, please visit: >>>> >>>> http://xircles.codehaus.org/manage_email >>>> >>> --------------------------------------------------------------------- >>> To unsubscribe from this list, please visit: >>> >>> http://xircles.codehaus.org/manage_email >>> >>> >> --------------------------------------------------------------------- >> To unsubscribe from this list, please visit: >> >> http://xircles.codehaus.org/manage_email >> > --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email

