Class JAFDataHandlerDeserializer

    • Field Detail

      • log

        protected static org.apache.commons.logging.Log log
    • Constructor Detail

      • JAFDataHandlerDeserializer

        public JAFDataHandlerDeserializer()
    • Method Detail

      • startElement

        public void startElement​(java.lang.String namespace,
                                 java.lang.String localName,
                                 java.lang.String prefix,
                                 org.xml.sax.Attributes attributes,
                                 DeserializationContext context)
                          throws org.xml.sax.SAXException
        Description copied from class: DeserializerImpl
        This method is invoked when an element start tag is encountered. DeserializerImpl provides default behavior, which involves the following: - directly handling the deserialization of a nill value - handling the registration of the id value. - handling the registration of a fixup if this element is an href. - calling onStartElement to do the actual deserialization if not nill or href cases.
        Specified by:
        startElement in interface Deserializer
        Overrides:
        startElement in class DeserializerImpl
        Parameters:
        namespace - is the namespace of the element
        localName - is the name of the element
        prefix - is the prefix of the element
        attributes - are the attributes on the element...used to get the type
        context - is the DeserializationContext Normally a specific Deserializer (FooDeserializer) should extend DeserializerImpl. Here is the flow that will occur in such cases: 1) DeserializerImpl.startElement(...) will be called and do the id/href/nill stuff. 2) If real deserialization needs to take place DeserializerImpl.onStartElement will be invoked, which will attempt to install the specific Deserializer (FooDeserializer) 3) The FooDeserializer.startElement(...) will be called to do the Foo specific stuff. This results in a call to FooDeserializer.onStartElement(...) if startElement was not overridden. 4) The onChildElement(...) method is called for each child element. Nothing occurs if not overridden. The FooDeserializer.onStartChild(...) method should return the deserializer for the child element. 5) When the end tag is reached, the endElement(..) method is invoked. The default behavior is to handle hrefs/ids, call onEndElement and then call the Deserializer valueComplete method. So the methods that you potentially want to override are: onStartElement, onStartChild, componentsReady, setValue(object, hint) You probably should not override startElement or endElement. If you need specific behaviour at the end of the element consider overriding onEndElement. See the pre-existing Deserializers for more information.
        Throws:
        org.xml.sax.SAXException
      • onStartChild

        public SOAPHandler onStartChild​(java.lang.String namespace,
                                        java.lang.String localName,
                                        java.lang.String prefix,
                                        org.xml.sax.Attributes attributes,
                                        DeserializationContext context)
                                 throws org.xml.sax.SAXException
        Deserializer interface called on each child element encountered in the XML stream.
        Specified by:
        onStartChild in interface Deserializer
        Overrides:
        onStartChild in class DeserializerImpl
        Parameters:
        namespace - is the namespace of the child element
        localName - is the local name of the child element
        prefix - is the prefix used on the name of the child element
        attributes - are the attributes of the child element
        context - is the deserialization context.
        Returns:
        is a Deserializer to use to deserialize a child (must be a derived class of SOAPHandler) or null if no deserialization should be performed.
        Throws:
        org.xml.sax.SAXException