I'm not quite following what you are doing. Are you trying to match a CXF client with an XFire server, or vica versa, or something else? Where does Castor come into it?
2009/2/24 Manjunatha Nakshathri <[email protected]>: > Dear all, > > > > We are facing some issue while implementing the webservices using the > XFire(version 1.2.1) (JBoss as server). > > > > When i am trying to access the WSDL through the url ( > http://localhost:8080/acs/services/ReleaseManager?wsdl ), server is throwing > the following exception : > > javax.servlet.ServletException: The name "" is not legal for JDOM/XML > namespaces: Namespace URIs must be non-null and non-empty Strings. > org.codehaus.xfire.transport.http.XFireServletController.doService(XFireServletController.java:143) > org.codehaus.xfire.transport.http.XFireServlet.doGet(XFireServlet.java:107) > javax.servlet.http.HttpServlet.service(HttpServlet.java:697) > javax.servlet.http.HttpServlet.service(HttpServlet.java:810) > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) > > root cause > > org.jdom.IllegalNameException: The name "" is not legal for JDOM/XML > namespaces: Namespace URIs must be non-null and non-empty Strings. > org.jdom.Namespace.getNamespace(Namespace.java:164) > org.codehaus.xfire.util.NamespaceHelper.getUniquePrefix(NamespaceHelper.java:58) > org.codehaus.xfire.aegis.type.basic.BeanType.writeSchema(BeanType.java:560) > org.codehaus.xfire.wsdl.AbstractWSDL.addDependency(AbstractWSDL.java:224) > org.codehaus.xfire.wsdl.AbstractWSDL.addDependency(AbstractWSDL.java:233) > org.codehaus.xfire.wsdl11.builder.WSDLBuilder.createDocLitPart(WSDLBuilder.java:403) > org.codehaus.xfire.wsdl11.builder.WSDLBuilder.createPart(WSDLBuilder.java:355) > org.codehaus.xfire.wsdl11.builder.WSDLBuilder.writeParameters(WSDLBuilder.java:509) > > cont....... > > Please find attached service.xml. > > If we comment the <serviceFactory>#castorServiceFactory</serviceFactory> in > the service.xml; then we are able to access the wsdl. But when we call the > service using the client (Using the ObjectServiceFactory().create() and not > the JaxbServiceFactory().create() ), then in the client side it gives > following error: > > org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Nested > exception is org.codehaus.xfire.fault.XFireFault: No write method for > property > {http://xml.model.calculation.jfoundation.pinkroccade.com}choiceValue in > class com.pinkroccade.jfoundation.calculation.model.xml.ReleaseOpen > > org.codehaus.xfire.fault.XFireFault: No write method for property > {http://xml.model.calculation.jfoundation.pinkroccade.com}choiceValue in > class com.pinkroccade.jfoundation.calculation.model.xml.ReleaseOpen > (Complete error log attached ErrorLog.rtf) > > This error is because ReleaseOpen.java file does not have any setter method > for the choiceValue. This ReleaseOpen class is generated by > release-impact-worksheet-3.2.0.xsd using castor. Similar to this class there > are lots of class files which are generated using the castor and which don’t > have some setter methods inside them. So editing the files is not a good > idea (And these are generated every time using the XSD file). > > We searched through the XFire site also ( > http://jira.codehaus.org/browse/XFIRE-509 ). We tried using the > XFire-all-1.2.3.jar. But we are not able to crack the issue. > > We are using the castor to generate the java classes and we should be able > to pass these objects (rather than converting them to String and passing it > on server) over the server. > > I have following question. > > 1. What should I do to make this work? Is there any thing with the way > I am invoking the service? > > 2. Does migrating from XFire to CXF will solve this issue? If yes, > then which version of CXF should I use? > > 3. Is there any guide for Implementation of CXF with castor? > > Thanks for your effort and also for your valuable time. > > > > Thanks and Regards, > > Manjunath > > ________________________________ > http://www.mindtree.com/email/disclaimer.html >
