You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Giorgio Zoppi <gi...@gmail.com> on 2007/08/31 14:17:57 UTC

Notes on ws-binding

Hi again,
i saw tuscany ws binding and it fits my needs both OneWay Invocations
and callbacks work fine. I've put some findings at
http://g4sca.blogspot.com/ so now the next..what i've to do is bootstrap
a node with an EmbeddedNode and use that binding. Axis2 permits some
kind of data-mapping with JiBX( in Axis2 with the -d jibx -E parameters)
for example, do you have a data mapping api so you can pass arbitrary
objects to a Component? Without any data mapping there's an hack for
doing that and it's using reflection inside a component and pass a byte
array with the class serialized. Any suggestions?


Cheers,
Jo.

P.S. Sca remote binding simply hangs, I've not still discovered the
reason, but i'm sure that next week when i'll have a more deep
understanding of ws binding and something working with it..I'll see that
code. The only thing that i've seen is that i do a request to the
ServiceDiscovery Servlet for every request, a caching (o keep-alive)
mechanism would be more useful: every node should be have a partial view
of the domain.



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Notes on ws-binding

Posted by Giorgio Zoppi <gi...@gmail.com>.
Ok. I'll try it again debugging in my lan this night.
Cheers,
Giorgio.

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Notes on ws-binding

Posted by Simon Laws <si...@googlemail.com>.
On 8/31/07, ant elder <an...@gmail.com> wrote:
>
> Tuscany has a data binding framework so that most data bindings could be
> supported, but there has to be a Tuscany databinding extension written for
> each data binding and there's no JiBX one yet, would be really cool if
> someone could help write one...interested in helping? There's a bit of
> documentation on this at [1] and some examples from the existing
> databinding
> extensions at [2], [3], [4].
>
> Until that happens one thing you could do is just use Axiom OMElements for
> the service parameters and do all the conversion to/from XML to JiBX
> objects
> yourself within the component impl. There's one of the Tuscany tests that
> shows working with OMElements at [5]
>
>    ...ant
>
> [1] http://incubator.apache.org/tuscany/tuscany-databinding-guide.html
> [2]
>
> https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/databinding-axiom/
> [3]
>
> https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/databinding-sdo/
> [4]
>
> https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/databinding-jaxb/
> [5]
>
> https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/binding-ws-axis2/src/test/java/org/apache/tuscany/sca/binding/ws/axis2/itests/HelloWorldOMTestCase.java
>
> On 8/31/07, Giorgio Zoppi <gi...@gmail.com> wrote:
> > Hi again,
> > i saw tuscany ws binding and it fits my needs both OneWay Invocations
> > and callbacks work fine. I've put some findings at
> > http://g4sca.blogspot.com/ so now the next..what i've to do is bootstrap
> > a node with an EmbeddedNode and use that binding. Axis2 permits some
> > kind of data-mapping with JiBX( in Axis2 with the -d jibx -E parameters)
> > for example, do you have a data mapping api so you can pass arbitrary
> > objects to a Component? Without any data mapping there's an hack for
> > doing that and it's using reflection inside a component and pass a byte
> > array with the class serialized. Any suggestions?
> >
> >
> > Cheers,
> > Jo.
> >
> > P.S. Sca remote binding simply hangs, I've not still discovered the
> > reason, but i'm sure that next week when i'll have a more deep
> > understanding of ws binding and something working with it..I'll see that
> > code. The only thing that i've seen is that i do a request to the
> > ServiceDiscovery Servlet for every request, a caching (o keep-alive)
> > mechanism would be more useful: every node should be have a partial view
> > of the domain.
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> >
> >
>
Hi Jo

I don't have anything to add to Ants response re. databindings but following
up on the P.S. comments

It's a bit worrying that the remote sca binding hangs for you. Under the
covers it's using the web service binding that you say is working ok so it
must be something to do with the code that goes and looks up endpoints in
the registry. Which version of Tuscany are you running against.

On the second point about repeated requests to ServiceDiscovery. The
Axis2SCAReferenceBindingProvider does some simple caching to prevent
repeated lookup so maybe what you are seeing is an indicator that something
is going wrong. We should get a new binding provider instance for each
component reference so if you are calling down a number of different
references you will see repeated reads. I haven't added caching (and cache
clearing) function to the ServiceDiscovery interface yet as I wanted to keep
it simple in this first instance but if your scenario  needs it let's
discuss what we should do.

Regards

Simon

Re: Notes on ws-binding

Posted by ant elder <an...@gmail.com>.
Tuscany has a data binding framework so that most data bindings could be
supported, but there has to be a Tuscany databinding extension written for
each data binding and there's no JiBX one yet, would be really cool if
someone could help write one...interested in helping? There's a bit of
documentation on this at [1] and some examples from the existing databinding
extensions at [2], [3], [4].

Until that happens one thing you could do is just use Axiom OMElements for
the service parameters and do all the conversion to/from XML to JiBX objects
yourself within the component impl. There's one of the Tuscany tests that
shows working with OMElements at [5]

   ...ant

[1] http://incubator.apache.org/tuscany/tuscany-databinding-guide.html
[2]
https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/databinding-axiom/
[3]
https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/databinding-sdo/
[4]
https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/databinding-jaxb/
[5]
https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/binding-ws-axis2/src/test/java/org/apache/tuscany/sca/binding/ws/axis2/itests/HelloWorldOMTestCase.java

On 8/31/07, Giorgio Zoppi <gi...@gmail.com> wrote:
> Hi again,
> i saw tuscany ws binding and it fits my needs both OneWay Invocations
> and callbacks work fine. I've put some findings at
> http://g4sca.blogspot.com/ so now the next..what i've to do is bootstrap
> a node with an EmbeddedNode and use that binding. Axis2 permits some
> kind of data-mapping with JiBX( in Axis2 with the -d jibx -E parameters)
> for example, do you have a data mapping api so you can pass arbitrary
> objects to a Component? Without any data mapping there's an hack for
> doing that and it's using reflection inside a component and pass a byte
> array with the class serialized. Any suggestions?
>
>
> Cheers,
> Jo.
>
> P.S. Sca remote binding simply hangs, I've not still discovered the
> reason, but i'm sure that next week when i'll have a more deep
> understanding of ws binding and something working with it..I'll see that
> code. The only thing that i've seen is that i do a request to the
> ServiceDiscovery Servlet for every request, a caching (o keep-alive)
> mechanism would be more useful: every node should be have a partial view
> of the domain.
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>