Sounds good to me (more happy because makes it is similar to Axis 1.X :)

-- dims

On 7/20/06, Thilina Gunarathne <[EMAIL PROTECTED]> wrote:
Big +1....:)

Any suggestions from others?/

> ·         Write a MessageReceiver that would support delivery of
> javax.mail.internet.MimeMessage objects to a service. The MessageReceiver
> would convert the response javax.mail.internet.MimeMessage object to a
> org.apache.axiom.soap.SOAPMessage object and store it in
> the MessageContext, or it would just put the SOAPEnvelope in the
> MessageContext and construct an Attachment object, and then set a flag in
> the MessageContext indicating that the response should be serialized in the
> MimeMessage format and not in the MTOM format.
>
I don't think a service implementer will need to deal with MIME. They
would be well off with DataHandlers. Better get rid of the
MIMEmessages at the transport level.

Thanks,
~Thilina

On 7/21/06, Ben Malek, Hamid <[EMAIL PROTECTED]> wrote:
>
>
>
>
> [Thilina]: OMElement as in  ServiceClient.sendReceive(OMElement elem)
> represents the XML payload which goes inside the SOAP body. IMHO SwA
> attachments belong to the SOAP message level. They do not belong to the SOAP
> envelope or the XML payload, since they do not have defined relationship to
> the XML payload. According to what I understand MessageContext is the Axis2
> entity which contains the SOAP message level information. I believe SwA
> attachments should be put in to MsgContext. I do not see any justifiable
> placeholder  for SwA type attachments in XML representation of the payload.
> This is just how I feel:).
>
>
>
> [Hamid]: Thilina, you are right about this. I forgot that the method
> ServiceClient.sendReceive(OMElement) puts the element inside the SOAP body.
>
> How about the following:
>
> ·         add a method getAttachments() to the interface
> org.apache.axiom.soap.SOAPMessage
>
> ·         add an instance variable of type
> org.apache.axiom.attachments.Attachments to the classes
> org.apache.axiom.soap.impl.llom.SOAPMessageImpl and
> org.apache.axiom.soap.impl.dom.SOAPMessageImpl
>
> ·         add appropriate methods to the interface
> org.apache.axiom.soap.SOAPMessage for adding attachments
> (things like addDataHandler(dh), addAttachment(File file, String contentID),
> etc....)
>
> ·         add some flag, as suggested by Paul, not to the OMText, but to the
> SOAPMessage interface to indicate whether the SOAPMessage will be a
> MimeMessage when serialized over the wire or it will be in an MTOM
> serialization format. If an OMText element is added to the SOAP header or
> SOAP body of the SOAPMessage and the OMText object is an MTOM thing, then
> the flag of the SOAPMessage interface should automatically change to
> indicate the SOAPMessage object will be serialized in MTOM format.
>
> ·         Modify the serialization method of the SOAPMessageImpl classes to
> take into consideration the mime flag of the SOAPMessage interface and if
> the SOAPMessage is an SwA that is non-MTOM, then the serialization should
> write the MimeHeaders correctly, together with the attachments. (in
> Axis-1.x, the SOAPMessage when serialized over the wire, it writes the
> MimeHeaders as well as the attachments).
>
> ·         Add methods to the ServiceClient class such as: public SOAPMessage
> sendReceive(SOAPMessage),
> sendReceiveNonBlocking(SOAPMessage, Callback), etc...
> (unlike the sendReceive(OMElement) behavior, these new methods will not put
> the argument in the SOAP body, but would serialize the object directly as it
> is on the wire).
>
> ·         On the receiving side, if the input stream is a MimeMessage
> stream, the axis servlet should construct a SOAPMessage object and put it as
> a property in the MessageContext (instead of putting the Attachment object
> in the MessageContext). Or keep the implementation as it is, but add a flag
> to the MessageContext to indicate that the received message is a SwA that is
> not an MTOM.
>
> ·         Modify the transport senders so that they first check the
> MessageContext if it has a SOAPMessage object stored as a property. If
> that's the case, then serialize the SOAPMessage object (it will be a
> MimeMessage serialization). If the MessageContext does not have a
> SOAPMessage object stored as a property, then do the normal serialization of
> the SOAPEnvelope that is present in the MessageContext.
>
> ·         Write a MessageReceiver that would support delivery of
> javax.mail.internet.MimeMessage objects to a service. The MessageReceiver
> would convert the response javax.mail.internet.MimeMessage object to a
> org.apache.axiom.soap.SOAPMessage object and store it in
> the MessageContext, or it would just put the SOAPEnvelope in the
> MessageContext and construct an Attachment object, and then set a flag in
> the MessageContext indicating that the response should be serialized in the
> MimeMessage format and not in the MTOM format.
>
>


--
"May the SourcE be with u"
http://webservices.apache.org/~thilina/
http://thilinag.blogspot.com/
http://www.bloglines.com/blog/Thilina

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Davanum Srinivas : http://www.wso2.net (Oxygen for Web Service Developers)

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to