Sad, but I will have to keep using Metro RI wsimport instead of CXF wsdl2java.
daniel.mfreitas wrote: > > Nothing so far... > > I'm feeling stupid right now. I think I will have to go back and learn > more about XML. Problem is, time is not something we can afford :/. Is > there any other way to make them Serializable (without, of course, having > to write our own solution to add that manually)? > > > Jim Ma-3 wrote: >> >> >> <serializable> element is in wrong namespace , you need to change it >> to <jaxb:serializable uid="-6026937020915831338" />. >> >> daniel.mfreitas wrote: >>> Well, the file that worked for me is this: >>> >>> <?xml version="1.0" encoding="UTF-8"?> >>> <jaxws:bindings wsdlLocation="mywsdl.wsdl" >>> xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" >>> xmlns:xs="http://www.w3.org/2001/XMLSchema" >>> xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" >>> xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"> >>> <xs:annotation> >>> <xs:appinfo> >>> <jaxb:globalBindings> >>> <xjc:serializable uid="-6026937020915831338" /> >>> </jaxb:globalBindings> >>> </xs:appinfo> >>> </xs:annotation> >>> </jaxws:bindings> >>> >>> Problem is the classes are still not Serializable. I think >>> <jaxws:bindings> >>> dot not recognize <xs:appinfo> or <xjc:serializable>. >>> >>> Ok let's forget about binding files for a moment. Let's get to the basic >>> problem. I want the generated stubs to implement Serializable. That's >>> all I >>> need. How can I make this happen? >>> >>> >>> James Mao wrote: >>> >>>> You have to make sure all your xmls are well-formed, probably caused by >>>> a missing closing tag, or such >>>> You can check it with your browser >>>> >>>> James >>>> >>>> >>>>> Well, the file you provided as an example throws >>>>> >>>>> WSDLToJava Error : The binding file: file:/jaxb-bindings.xml >>>>> references a >>>>> not well-formed xml document. >>>>> >>>>> The file that I provided as an example and that works with JAXWS RI >>>>> looks >>>>> quite different from the <jaxws:bindings/> file I've seen around. For >>>>> example the root of the document is <xs:schema/>. Also in the file I >>>>> provided I do not have to specify my WSDL file, which makes sense for >>>>> me >>>>> sisnce all I want to do is that the entity stubs implement >>>>> Serializable. >>>>> I >>>>> need them to be serializable so I can use them with other frameworks >>>>> that >>>>> requires it. >>>>> >>>>> >>>>> >>>>> >>>>> Jim Ma-3 wrote: >>>>> >>>>> >>>>>> Hi , >>>>>> Add the wsdlLocation and Xpath express to provide which schema you >>>>>> want >>>>>> to customize , try the following binding file >>>>>> to see if it works for your wsdl: >>>>>> >>>>>> <jaxws:bindings wsdlLocation="${your.wsdl}" >>>>>> xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" >>>>>> xmlns:xs="http://www.w3.org/2001/XMLSchema" >>>>>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> >>>>>> <jaxws:bindings node="wsdl:definitions/wsdl:types/xs:schema"> >>>>>> <jaxb:globalBindings> >>>>>> <xjc:serializable >>>>>> uid="-6026937020915831338"/> >>>>>> </jaxb:globalBindings> >>>>>> </jaxws:bindings> >>>>>> </jaxws:bindings> >>>>>> >>>>>> Regards >>>>>> Jim >>>>>> >>>>>> >>>>>> daniel.mfreitas wrote: >>>>>> >>>>>> >>>>>>> Hello. I want to use wsdl2java to generate the client stubs to be >>>>>>> used >>>>>>> by >>>>>>> my >>>>>>> client web application. I am using Spring Web Flow and it requires >>>>>>> that >>>>>>> objects used in the flow are Serializable. >>>>>>> >>>>>>> I successfully generated Serializable classes using the following >>>>>>> bindings >>>>>>> file and Metro JAXWS RI implementation: >>>>>>> >>>>>>> <?xml version="1.0" encoding="UTF-8"?> >>>>>>> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" >>>>>>> xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" >>>>>>> xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" >>>>>>> elementFormDefault="qualified" attributeFormDefault="unqualified" >>>>>>> jaxb:extensionBindingPrefixes="xjc" jaxb:version="1.0"> >>>>>>> <xs:annotation> >>>>>>> <xs:appinfo> >>>>>>> <jaxb:globalBindings> >>>>>>> <xjc:serializable >>>>>>> uid="-6026937020915831338"/> >>>>>>> </jaxb:globalBindings> >>>>>>> </xs:appinfo> >>>>>>> </xs:annotation> >>>>>>> </xs:schema> >>>>>>> >>>>>>> But because of some limitations of Metro RI, we want to switch to >>>>>>> CXF. >>>>>>> When >>>>>>> calling wsdl2java from a maven build file and we try to supply the >>>>>>> above >>>>>>> binding file, cfx throws >>>>>>> >>>>>>> WSDLToJava Error : Unknown external binding files: >>>>>>> >>>>>>> This is not a FileNotFoundError. wsdl2java does find the file, but >>>>>>> it >>>>>>> seems >>>>>>> it does not understand its contents. I wanted to use CXF for >>>>>>> everything >>>>>>> including java2wsdl and wsdl2java. We have bad experiences to set up >>>>>>> JAXWS >>>>>>> Metro RI and for some developers it is a pain to put it to work. >>>>>>> >>>>>>> So how can I make the entities stubs to implement serializable with >>>>>>> wsdl2java? >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>> >>>> >>> >>> >> >> > > -- View this message in context: http://www.nabble.com/How-to-make-classes-created-from-wsdl2java-implements-serializable--tp14246207p14260132.html Sent from the cxf-user mailing list archive at Nabble.com.