public void writeParameter(MessagePartInfo p, XMLStreamWriter writer, MessageContext context, Object value)
throws XFireFault {
Type type = getTypeMapping(context.getService()).getTypeCreator().createType(value.getClass());
MessageWriter mw = new ElementWriter(writer);
if (type.isNillable() && value == null) {
mw.writeXsiNil();
return;
}
context.setProperty(CURRENT_MESSAGE_PART, p);
type.writeObject(value, mw, context);
}
Thanks,
Franz
Franz Garsombke <[EMAIL PROTECTED]> wrote:
Allright...so I have the new transport and channel classes created that basically just return the SOAP request as a String. This can then be used to post to a JMS topic, etc. We don't want to be bound to a 'JMS Transport'.
I have one more thing that I need to figure out. We would much rather call send(Object obj) then send(MyDataType dataType). The problem with that is the first signature creates an exception because the schema type of ObjectType is created versus an XmlBeansType. I have tracked this down to the XmlBeansTypeCreator.createType method. My question is...if I had a signature like send(Object obj, Class classType) how can I use classType as the class that is used by the TypeCreator vs. clazz = m.getParameterTypes()[index]; ? If this isssue can be resolved we can have a generic SOAP request creator versus having to maintain a Service class with dozens of send(MyDataType dataType) methods. It looks like I might have to tweak the AegisBindingProvider getParameterType(TypeMapping tm, MessagePartInfo param, int paramtype) so that when it calls type = tm.getTypeCreator().createType(op.getMethod(), param.getIndex()); I can pass in more than the Method and parameter. How can I pass the class type I know ahead of time into this whole mechanism?
Thanks again for a great framework. After this piece is solved both ways (taking in a String SOAP request and creating a String SOAP request with full marshalling) will be complete.
Thanks,
Franz
Brings words and photos together (easily) with
PhotoMail - it's free and works with Yahoo! Mail.
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo!
Mail has the best spam protection around
http://mail.yahoo.com
