Hi!... I could tie a deserializer via onStartChild and onEndChild methods
and reading was successfull, but I can't return my value, it still returns a
Document. Does anyone know how to do this?
2007/10/31, Ernesto Pin <[EMAIL PROTECTED]>:
>
> ¡wow!... it sounds very difficult for my project's context. The idea is to
> have (external) web services as information source, and let an administrator
> add new web services to compose new sources, and we have not much time.
>
> I think it would be easier to read server's response (which is correct) by
> myself, but I don't find how to. I've tried to register my own deserializer,
> but it doesn't works. Methods are never called.
>
> First: is this possible? how?
> Second: is something wrong with next?
>
> ----------------
> Deser registration (replacing what was on the first code I posted)
>
>
> call.setReturnType(new QName( name.getNamespaceURI(),
> "GeoIP"));
> call.setReturnClass(GeoIP.class);
>
> call.registerTypeMapping(GeoIP.class,
> new QName(name.getNamespaceURI(), "GeoIP"),
> DocumentSerializerFactory.class,
> CustomDeseralizerFactory.class,
> true
> );
> ----------------
> Deser factory
>
> package deser;
>
> import javax.xml.rpc.JAXRPCException;
> import javax.xml.rpc.encoding.Deserializer;
>
> import org.apache.axis.encoding.ser.DocumentDeserializerFactory;
> import org.jboss.logging.Logger ;
>
> public class CustomDeseralizerFactory extends DocumentDeserializerFactory{
>
> /**
> *
> */
> private static final long serialVersionUID = 1L;
>
>
> public CustomDeseralizerFactory() {
> super();
> }
>
>
> @Override
> public Deserializer getDeserializerAs(String arg0) throws
> JAXRPCException {
> Logger.getLogger(this.getClass()).info(arg0);
> return new CustomDeserializer();
> }
>
> }
> ----------------
> Deser class: actually, is doing nothing, because I still can't make custom
> factory's methods to be called
> ----------------
>
>
> 2007/10/31, Jeff Greif <[EMAIL PROTECTED]>:
> >
> > Getting the specifications is not hard, but using them is a significant
> > project.
> >
> > 1. Find wsdl4j via web search and use it to analyze the WSDL. It will
> > also collect the schema types you need for the message elements. (There
> >
> > is also some wsdl-cracking machinery in axis2 which may be better.)
> >
> > 2. You can use the XML Schema API
> >
> >
> > http://www.w3.org/Submission/2004/SUBM-xmlschema-api-20040122/xml-schema-api.html#Interface-XSModel
> >
> > implemented in the Xerces-J package to traverse the XML Schema
> > components of the types you need for the message. *In principle*, this
> > is enough to construct a form for input of some type and for displaying
> > an instance of a type.
> >
> > 3. If you do this yourself, it's a major project. Most likely there is
> > a way to use XForms.
> >
> > Jeff
> >
>
>
>
> --
> Saludos,
> Ernesto Pin
--
Saludos,
Ernesto Pin