I have generated the Java classes using Axis 1.4 using wsdl2java and
have created a class extended JaxRpcPortProxyFactoryBean and added
mappings for the generated classes.
Code:
public class CmPortProxyFactoryBean extends JaxRpcPortProxyFactoryBean
{
/** The namespace URI for the Content Manager web service's dto
classes. */
public static final String CM_DTO_NAMESPACE
= "http://localhost/2006/01/cmdocument.xsd";
protected void postProcessJaxRpcService(Service service) {
TypeMappingRegistry registry =
service.getTypeMappingRegistry();
TypeMapping mapping = registry.createTypeMapping();
//add the classes to the mapping
registerBeanMapping(mapping, ApplicationError.class,
"ApplicationError");
registerBeanMapping(mapping, AttributeData.class,
"AttributeData");
registerBeanMapping(mapping, StoreDocumentRequest.class,
"StoreDocumentRequest");
registerBeanMapping(mapping, StoreDocumentResponse.class,
"StoreDocumentResponse");
registerBeanMapping(mapping, StoreDocumentResult.class,
"StoreDocumentResult");
.....
//register the mapping
registry.register("http://schemas.xmlsoap.org/soap/encoding/",
mapping);
}
protected void registerBeanMapping(TypeMapping mapping, Class type,
String name) {
QName qName = new QName(CM_DTO_NAMESPACE, name);
mapping.register(type,
qName,
new BeanSerializerFactory(type, qName),
new BeanDeserializerFactory(type, qName));
}
}
I can call the web service and see the expected SOAP/XML being returned
from the web service but I keep getting the following exception:
Quote:org.xml.sax.SAXException: Deserializing parameter
'storeDocumentResponse': could not find deserializer for type
{http://localhost/2006/01/cmdocument.xsd}>storeDocumentResponse
(I am not sure why there is a > before the storeDocumentResponse
element but adding variations of the element's name does not help.)
I have seen several posting about encoding, etc and trying doing:
Code:
//register the mapping
registry.register("", mapping);
But that just generated more exceptions:
Quote:org.xml.sax.SAXException: Bad types (interface
javax.xml.soap.SOAPElement -> class
za.co.sanlam.cm.cmdocument.dto.StoreDocumentReques t) Message being
parsed:
What underlying web service framework are you using? I have used Axis
2.1, but currently reverted to Axis 1.4 since I was able to get
further.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "CTJUG
Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/CTJUG-Forum
For the ctjug home page see http://www.ctjug.org.za
-~----------~----~----~----~------~----~------~--~---