You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@ws.apache.org by Dmitri Colebatch <di...@bigpond.net.au> on 2001/08/07 09:49:26 UTC

serializing Call object

hey list,

I'm looking at building a system which would allow reliable asynchonous
soap invocations.  I've tried to do a bit of searching on this on the
list but unfortunately two of the keywords I have in my head are
serializable and JMS, which bring up a heap of results, but not what I'm
looking for )o:

So what I have is a soap client "A", a soap service "B" and a middleman
"M".  M is comprised of Ms (the soap part), Mq (the JMS queue) and Mc
(the JMS consumer).  Excuse the bad abbreviations!  What I'm trying to
do is something like:

      <soap>      <jms>        <jms>       <soap>
  A  -------> Ms -------> Mq --------> Mc --------> B

My dilemma is at Ms -> Mq.  Obviously the message needs to be in a
serializable form one way or another.  My first thought was to have some
object represent the relevant bits of the call, and pass that in, but
nothing is serialiable (understandably).  So I'm thinking that I should
be doing something with marshall to "serialize" the relevant details of
the call.

The way I see it I'm probably not the intended user of marshall, and may
not have the information I need to use it this way.... but I'm not
really sure.  As a test, I've written a simple Provider that handles the
incoming call, and in it I've put a persist method... but I'm not really
sure how to call the marshall method.  The sig I'm looking at is:

   marshall(String inScopeEncStyle,
            Class javaType,
            Object src,
            Object context,
            Writer sink,
            NSStack nsStack,
            XMLJavaMappingRegistry xjmr,
            SOAPContext ctx)

Now, I'm assuming that inScopeEncStyle can come from the call encoding
style.  The sink is just some writer I'll create, but I really start to
get lost from there on.  i'm not really sure of any of the others, so if
anyone could point me in the right direction I'd be greatful.

cheers, and tia.
dim

Re: serializing Call object

Posted by Dmitri Colebatch <di...@bigpond.net.au>.
Neil,

Thanks for the suggestion... thing is, that doesn't that then mean that
the JMS client will have to parse it all again.  What I was hoping is
that the JMS client could just reuse the existing call, and invoke it
against a different server (the address contained in the header).

make sense?  I mean I could do what you're suggesting, but it seems
wasteful.

cheesr
dim

Neil Benn wrote:
> 
> Hello,
> 
>         Why don't you get the SOAP envelope and send it as a text message over the
> JMS as a JMS TextMessage?  Or is there something I'm missing...
> 
> Cheers,
> 
> Neil
> 
> -----Original Message-----
> From: dim@nuix.com.au [mailto:dim@nuix.com.au]On Behalf Of Dmitri
> Colebatch
> Sent: 07 August 2001 08:49
> To: soap-user@xml.apache.org
> Subject: serializing Call object
> 
> hey list,
> 
> I'm looking at building a system which would allow reliable asynchonous
> soap invocations.  I've tried to do a bit of searching on this on the
> list but unfortunately two of the keywords I have in my head are
> serializable and JMS, which bring up a heap of results, but not what I'm
> looking for )o:
> 
> So what I have is a soap client "A", a soap service "B" and a middleman
> "M".  M is comprised of Ms (the soap part), Mq (the JMS queue) and Mc
> (the JMS consumer).  Excuse the bad abbreviations!  What I'm trying to
> do is something like:
> 
>       <soap>      <jms>        <jms>       <soap>
>   A  -------> Ms -------> Mq --------> Mc --------> B
> 
> My dilemma is at Ms -> Mq.  Obviously the message needs to be in a
> serializable form one way or another.  My first thought was to have some
> object represent the relevant bits of the call, and pass that in, but
> nothing is serialiable (understandably).  So I'm thinking that I should
> be doing something with marshall to "serialize" the relevant details of
> the call.
> 
> The way I see it I'm probably not the intended user of marshall, and may
> not have the information I need to use it this way.... but I'm not
> really sure.  As a test, I've written a simple Provider that handles the
> incoming call, and in it I've put a persist method... but I'm not really
> sure how to call the marshall method.  The sig I'm looking at is:
> 
>    marshall(String inScopeEncStyle,
>             Class javaType,
>             Object src,
>             Object context,
>             Writer sink,
>             NSStack nsStack,
>             XMLJavaMappingRegistry xjmr,
>             SOAPContext ctx)
> 
> Now, I'm assuming that inScopeEncStyle can come from the call encoding
> style.  The sink is just some writer I'll create, but I really start to
> get lost from there on.  i'm not really sure of any of the others, so if
> anyone could point me in the right direction I'd be greatful.
> 
> cheers, and tia.
> dim

Re: serializing Call object

Posted by Dmitri Colebatch <di...@bigpond.net.au>.
Neil,

Thanks for the suggestion... thing is, that doesn't that then mean that
the JMS client will have to parse it all again.  What I was hoping is
that the JMS client could just reuse the existing call, and invoke it
against a different server (the address contained in the header).

make sense?  I mean I could do what you're suggesting, but it seems
wasteful.

cheesr
dim

Neil Benn wrote:
> 
> Hello,
> 
>         Why don't you get the SOAP envelope and send it as a text message over the
> JMS as a JMS TextMessage?  Or is there something I'm missing...
> 
> Cheers,
> 
> Neil
> 
> -----Original Message-----
> From: dim@nuix.com.au [mailto:dim@nuix.com.au]On Behalf Of Dmitri
> Colebatch
> Sent: 07 August 2001 08:49
> To: soap-user@xml.apache.org
> Subject: serializing Call object
> 
> hey list,
> 
> I'm looking at building a system which would allow reliable asynchonous
> soap invocations.  I've tried to do a bit of searching on this on the
> list but unfortunately two of the keywords I have in my head are
> serializable and JMS, which bring up a heap of results, but not what I'm
> looking for )o:
> 
> So what I have is a soap client "A", a soap service "B" and a middleman
> "M".  M is comprised of Ms (the soap part), Mq (the JMS queue) and Mc
> (the JMS consumer).  Excuse the bad abbreviations!  What I'm trying to
> do is something like:
> 
>       <soap>      <jms>        <jms>       <soap>
>   A  -------> Ms -------> Mq --------> Mc --------> B
> 
> My dilemma is at Ms -> Mq.  Obviously the message needs to be in a
> serializable form one way or another.  My first thought was to have some
> object represent the relevant bits of the call, and pass that in, but
> nothing is serialiable (understandably).  So I'm thinking that I should
> be doing something with marshall to "serialize" the relevant details of
> the call.
> 
> The way I see it I'm probably not the intended user of marshall, and may
> not have the information I need to use it this way.... but I'm not
> really sure.  As a test, I've written a simple Provider that handles the
> incoming call, and in it I've put a persist method... but I'm not really
> sure how to call the marshall method.  The sig I'm looking at is:
> 
>    marshall(String inScopeEncStyle,
>             Class javaType,
>             Object src,
>             Object context,
>             Writer sink,
>             NSStack nsStack,
>             XMLJavaMappingRegistry xjmr,
>             SOAPContext ctx)
> 
> Now, I'm assuming that inScopeEncStyle can come from the call encoding
> style.  The sink is just some writer I'll create, but I really start to
> get lost from there on.  i'm not really sure of any of the others, so if
> anyone could point me in the right direction I'd be greatful.
> 
> cheers, and tia.
> dim

Re: serializing Call object

Posted by Richard Emberson <em...@contact.com>.
How would you use JMS TextMessage if the soap message had mime components?


Neil Benn wrote:

> Hello,
>
>         Why don't you get the SOAP envelope and send it as a text message over the
> JMS as a JMS TextMessage?  Or is there something I'm missing...
>
> Cheers,
>
> Neil
>
> -----Original Message-----
> From: dim@nuix.com.au [mailto:dim@nuix.com.au]On Behalf Of Dmitri
> Colebatch
> Sent: 07 August 2001 08:49
> To: soap-user@xml.apache.org
> Subject: serializing Call object
>
> hey list,
>
> I'm looking at building a system which would allow reliable asynchonous
> soap invocations.  I've tried to do a bit of searching on this on the
> list but unfortunately two of the keywords I have in my head are
> serializable and JMS, which bring up a heap of results, but not what I'm
> looking for )o:
>
> So what I have is a soap client "A", a soap service "B" and a middleman
> "M".  M is comprised of Ms (the soap part), Mq (the JMS queue) and Mc
> (the JMS consumer).  Excuse the bad abbreviations!  What I'm trying to
> do is something like:
>
>       <soap>      <jms>        <jms>       <soap>
>   A  -------> Ms -------> Mq --------> Mc --------> B
>
> My dilemma is at Ms -> Mq.  Obviously the message needs to be in a
> serializable form one way or another.  My first thought was to have some
> object represent the relevant bits of the call, and pass that in, but
> nothing is serialiable (understandably).  So I'm thinking that I should
> be doing something with marshall to "serialize" the relevant details of
> the call.
>
> The way I see it I'm probably not the intended user of marshall, and may
> not have the information I need to use it this way.... but I'm not
> really sure.  As a test, I've written a simple Provider that handles the
> incoming call, and in it I've put a persist method... but I'm not really
> sure how to call the marshall method.  The sig I'm looking at is:
>
>    marshall(String inScopeEncStyle,
>             Class javaType,
>             Object src,
>             Object context,
>             Writer sink,
>             NSStack nsStack,
>             XMLJavaMappingRegistry xjmr,
>             SOAPContext ctx)
>
> Now, I'm assuming that inScopeEncStyle can come from the call encoding
> style.  The sink is just some writer I'll create, but I really start to
> get lost from there on.  i'm not really sure of any of the others, so if
> anyone could point me in the right direction I'd be greatful.
>
> cheers, and tia.
> dim


Re: serializing Call object

Posted by Richard Emberson <em...@contact.com>.
How would you use JMS TextMessage if the soap message had mime components?


Neil Benn wrote:

> Hello,
>
>         Why don't you get the SOAP envelope and send it as a text message over the
> JMS as a JMS TextMessage?  Or is there something I'm missing...
>
> Cheers,
>
> Neil
>
> -----Original Message-----
> From: dim@nuix.com.au [mailto:dim@nuix.com.au]On Behalf Of Dmitri
> Colebatch
> Sent: 07 August 2001 08:49
> To: soap-user@xml.apache.org
> Subject: serializing Call object
>
> hey list,
>
> I'm looking at building a system which would allow reliable asynchonous
> soap invocations.  I've tried to do a bit of searching on this on the
> list but unfortunately two of the keywords I have in my head are
> serializable and JMS, which bring up a heap of results, but not what I'm
> looking for )o:
>
> So what I have is a soap client "A", a soap service "B" and a middleman
> "M".  M is comprised of Ms (the soap part), Mq (the JMS queue) and Mc
> (the JMS consumer).  Excuse the bad abbreviations!  What I'm trying to
> do is something like:
>
>       <soap>      <jms>        <jms>       <soap>
>   A  -------> Ms -------> Mq --------> Mc --------> B
>
> My dilemma is at Ms -> Mq.  Obviously the message needs to be in a
> serializable form one way or another.  My first thought was to have some
> object represent the relevant bits of the call, and pass that in, but
> nothing is serialiable (understandably).  So I'm thinking that I should
> be doing something with marshall to "serialize" the relevant details of
> the call.
>
> The way I see it I'm probably not the intended user of marshall, and may
> not have the information I need to use it this way.... but I'm not
> really sure.  As a test, I've written a simple Provider that handles the
> incoming call, and in it I've put a persist method... but I'm not really
> sure how to call the marshall method.  The sig I'm looking at is:
>
>    marshall(String inScopeEncStyle,
>             Class javaType,
>             Object src,
>             Object context,
>             Writer sink,
>             NSStack nsStack,
>             XMLJavaMappingRegistry xjmr,
>             SOAPContext ctx)
>
> Now, I'm assuming that inScopeEncStyle can come from the call encoding
> style.  The sink is just some writer I'll create, but I really start to
> get lost from there on.  i'm not really sure of any of the others, so if
> anyone could point me in the right direction I'd be greatful.
>
> cheers, and tia.
> dim


RE: serializing Call object

Posted by Neil Benn <ne...@cambridgeantibody.com>.
Hello,

	Why don't you get the SOAP envelope and send it as a text message over the
JMS as a JMS TextMessage?  Or is there something I'm missing...

Cheers,

Neil

-----Original Message-----
From: dim@nuix.com.au [mailto:dim@nuix.com.au]On Behalf Of Dmitri
Colebatch
Sent: 07 August 2001 08:49
To: soap-user@xml.apache.org
Subject: serializing Call object


hey list,

I'm looking at building a system which would allow reliable asynchonous
soap invocations.  I've tried to do a bit of searching on this on the
list but unfortunately two of the keywords I have in my head are
serializable and JMS, which bring up a heap of results, but not what I'm
looking for )o:

So what I have is a soap client "A", a soap service "B" and a middleman
"M".  M is comprised of Ms (the soap part), Mq (the JMS queue) and Mc
(the JMS consumer).  Excuse the bad abbreviations!  What I'm trying to
do is something like:

      <soap>      <jms>        <jms>       <soap>
  A  -------> Ms -------> Mq --------> Mc --------> B

My dilemma is at Ms -> Mq.  Obviously the message needs to be in a
serializable form one way or another.  My first thought was to have some
object represent the relevant bits of the call, and pass that in, but
nothing is serialiable (understandably).  So I'm thinking that I should
be doing something with marshall to "serialize" the relevant details of
the call.

The way I see it I'm probably not the intended user of marshall, and may
not have the information I need to use it this way.... but I'm not
really sure.  As a test, I've written a simple Provider that handles the
incoming call, and in it I've put a persist method... but I'm not really
sure how to call the marshall method.  The sig I'm looking at is:

   marshall(String inScopeEncStyle,
            Class javaType,
            Object src,
            Object context,
            Writer sink,
            NSStack nsStack,
            XMLJavaMappingRegistry xjmr,
            SOAPContext ctx)

Now, I'm assuming that inScopeEncStyle can come from the call encoding
style.  The sink is just some writer I'll create, but I really start to
get lost from there on.  i'm not really sure of any of the others, so if
anyone could point me in the right direction I'd be greatful.

cheers, and tia.
dim


RE: serializing Call object

Posted by Neil Benn <ne...@cambridgeantibody.com>.
Hello,

	Why don't you get the SOAP envelope and send it as a text message over the
JMS as a JMS TextMessage?  Or is there something I'm missing...

Cheers,

Neil

-----Original Message-----
From: dim@nuix.com.au [mailto:dim@nuix.com.au]On Behalf Of Dmitri
Colebatch
Sent: 07 August 2001 08:49
To: soap-user@xml.apache.org
Subject: serializing Call object


hey list,

I'm looking at building a system which would allow reliable asynchonous
soap invocations.  I've tried to do a bit of searching on this on the
list but unfortunately two of the keywords I have in my head are
serializable and JMS, which bring up a heap of results, but not what I'm
looking for )o:

So what I have is a soap client "A", a soap service "B" and a middleman
"M".  M is comprised of Ms (the soap part), Mq (the JMS queue) and Mc
(the JMS consumer).  Excuse the bad abbreviations!  What I'm trying to
do is something like:

      <soap>      <jms>        <jms>       <soap>
  A  -------> Ms -------> Mq --------> Mc --------> B

My dilemma is at Ms -> Mq.  Obviously the message needs to be in a
serializable form one way or another.  My first thought was to have some
object represent the relevant bits of the call, and pass that in, but
nothing is serialiable (understandably).  So I'm thinking that I should
be doing something with marshall to "serialize" the relevant details of
the call.

The way I see it I'm probably not the intended user of marshall, and may
not have the information I need to use it this way.... but I'm not
really sure.  As a test, I've written a simple Provider that handles the
incoming call, and in it I've put a persist method... but I'm not really
sure how to call the marshall method.  The sig I'm looking at is:

   marshall(String inScopeEncStyle,
            Class javaType,
            Object src,
            Object context,
            Writer sink,
            NSStack nsStack,
            XMLJavaMappingRegistry xjmr,
            SOAPContext ctx)

Now, I'm assuming that inScopeEncStyle can come from the call encoding
style.  The sink is just some writer I'll create, but I really start to
get lost from there on.  i'm not really sure of any of the others, so if
anyone could point me in the right direction I'd be greatful.

cheers, and tia.
dim