You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cxf.apache.org by Dan Diephouse <da...@envoisolutions.com> on 2007/08/07 19:18:51 UTC
APP & CXF [was Re: 2.1 thoughts......]
Hi James,
I've thought about APP and CXF a bit, and I've not yet seen a great way to
bring the two together. The way you design & model your services is
completely different. Can you go into more detail about how you see the two
coming together?
I thought Sanjiva from Axis2 actually had a good summary recently of why
bringing together the RESTful and operation/WSDL oriented approach is quite
tricky: http://www.bloglines.com/blog/sanjiva?id=227. I've also written
about it before:
http://netzooid.com/blog/2006/12/07/resource-vs-service-oriented-data-design/
- Dan
On 8/7/07, James Strachan <ja...@gmail.com> wrote:
>
> I'd love to see AtomPub support as a new kinda front end / binding.
> http://atompub.org/rfc4287.html
>
> I've had brief conversations in bars in various coutries in the past
> with DanD about this - previously we looked at some annotations to
> expose RESTful resources using individual annotations on operations;
> to bind a specific method/property to a URI etc.
>
> Am wondering if an AtomPub binding could be simpler and a little
> cleverer; as AtomPub automatically understands collections &
> navigations through types together with the basic operations. e.g.
> relationships, collections, add/remove/update semantics etc.
>
>
> Another thing I'd like to see is some tooling/maven plugins/whatever
> so folks can do contract first development, but instead of having to
> edit WSDL, they could just edit RelaxNG Compact Syntax to define the
> structure of messages; which then could auto-generate the XSD / WSDL.
> Or even supply some example XML documents - which by using Trang could
> then generate the XSD/WSDL. For more background see...
>
> http://www.nabble.com/contract-first-using-either-XSD-or-XML-plus-Trang-tf3679800.html#a10288179
>
>
> On 8/7/07, Daniel Kulp <dk...@apache.org> wrote:
> >
> > With 2.0.1 almost out the door (getting votes when everyone is on
> > vacation sucks), I'd like to take a minute to think about what should go
> > into 2.1. We've tossed around a bunch of ideas and I'd like to get
> > them written down. I'll probably start a "wish list" wiki page once
> > the ideas get flowing, but for now, here's my list of stuff I've seen
> > floating around:
> >
> > 1) JAX-WS 2.1/JAXB 2.1 - this is a fairly large amount of work as there
> > are some very significant changes that will involve code generation
> > changes, java -> wsdl changes, runtime support changes, etc....
> >
> > 2) Data bindings - XmlBeans and JIBX have been on the list for a while
> > and I'm sure more XFire folks could find CXF more useful if we got those
> > working. There are two parts: runtime and tooling.
> >
> > 3) JavaScript stuff - the javascript frontend needs some refactoring to
> > allow calling other services with it, make it not dependent on the jaxws
> > frontend, etc.... Also the js donation from Basis Tech would be great
> > to get wired in. (if we can get the grant set, too many people on
> > vacation)
> >
> > 4) Rest stuff - all the buzzword compatible stuff. :-)
> >
> > 5) WS-* specs - do we have time to tackle any more of these at this
> > point? Which ones should we prioritize?
> >
> > 6) OSGI bundling - I think adding simple OSGI manifests for our jars
> > would be fairly easy. However, should we create some "bundles" to
> > represent common functionality? (like JAX-WS/SOAP/HTTP bundle)
> >
> >
> > I hate to ask for more ideas as that alone is a TON of work, but at this
> > point, let's get the ideas flowing. :-)
> >
> > --
> > J. Daniel Kulp
> > Principal Engineer
> > IONA
> > P: 781-902-8727 C: 508-380-7194
> > daniel.kulp@iona.com
> > http://www.dankulp.com/blog
> >
>
>
> --
> James
> -------
> http://macstrac.blogspot.com/
>
--
Dan Diephouse
Envoi Solutions
http://envoisolutions.com | http://netzooid.com/blog
Re: APP & CXF [was Re: 2.1 thoughts......]
Posted by Dan Diephouse <da...@envoisolutions.com>.
Personally, I don't really want to write an APP implementation from scratch,
so I would recommend that we look at making it easy to hook in Abdera and
build off that. James Snell recently did some annotation work:
http://mail-archives.apache.org/mod_mbox/incubator-abdera-dev/200708.mbox/browser
I mentioned the JPA/JAXB idea there, but not sure that it picked up any
steam. :-)
- Dan
On 8/8/07, James Strachan <ja...@gmail.com> wrote:
>
> On 8/7/07, Dan Diephouse <da...@envoisolutions.com> wrote:
> > Hi James,
> >
> > I've thought about APP and CXF a bit, and I've not yet seen a great way
> to
> > bring the two together. The way you design & model your services is
> > completely different. Can you go into more detail about how you see the
> two
> > coming together?
>
> Am not totally sure yet :) Was hoping someone less heavily loaded
> would dive in and experiment :)
>
> I guess the most natural starting point could be to just model JPA
> beans first - as entity beans are naturally CRUD-ish, map nicely to
> RESTful resources, have definite collections, relationships &
> navigation paths. So start with entity beans & get those working (i.e.
> expose all/any JPA entity beans as APP easily); then see if we can
> work on other things afterwards as a pseudo entity bean maybe?
>
> Resources often map to 'entities' of some kind (little blobs of XML, a
> row in a database etc) so rather than starting with the random
> any-old-Java-object service model - starting with entity beans might
> be a better start?
>
>
> --
> James
> -------
> http://macstrac.blogspot.com/
>
--
Dan Diephouse
Envoi Solutions
http://envoisolutions.com | http://netzooid.com/blog
Re: APP & CXF [was Re: 2.1 thoughts......]
Posted by James Strachan <ja...@gmail.com>.
On 8/7/07, Dan Diephouse <da...@envoisolutions.com> wrote:
> Hi James,
>
> I've thought about APP and CXF a bit, and I've not yet seen a great way to
> bring the two together. The way you design & model your services is
> completely different. Can you go into more detail about how you see the two
> coming together?
Am not totally sure yet :) Was hoping someone less heavily loaded
would dive in and experiment :)
I guess the most natural starting point could be to just model JPA
beans first - as entity beans are naturally CRUD-ish, map nicely to
RESTful resources, have definite collections, relationships &
navigation paths. So start with entity beans & get those working (i.e.
expose all/any JPA entity beans as APP easily); then see if we can
work on other things afterwards as a pseudo entity bean maybe?
Resources often map to 'entities' of some kind (little blobs of XML, a
row in a database etc) so rather than starting with the random
any-old-Java-object service model - starting with entity beans might
be a better start?
--
James
-------
http://macstrac.blogspot.com/
RE: APP & CXF [was Re: 2.1 thoughts......]
Posted by "Liu, Jervis" <jl...@iona.com>.
> -----Original Message-----
> From: Dan Diephouse [mailto:dan@envoisolutions.com]
> Sent: 2007?8?8? 1:19
> To: cxf-dev@incubator.apache.org
> Subject: APP & CXF [was Re: 2.1 thoughts......]
>
>
> Hi James,
>
> I've thought about APP and CXF a bit, and I've not yet seen a
> great way to
> bring the two together. The way you design & model your services is
> completely different. Can you go into more detail about how
> you see the two
> coming together?
>
> I thought Sanjiva from Axis2 actually had a good summary
> recently of why
> bringing together the RESTful and operation/WSDL oriented
> approach is quite
> tricky: http://www.bloglines.com/blog/sanjiva?id=227. I've
> also written
> about it before:
> http://netzooid.com/blog/2006/12/07/resource-vs-service-orient
> ed-data-design/
>
This is probably another compelling reason why we want to look into JSR311. As you or Sanjiva already mentioned, what CXF or AXIS2 currently offered, let it be CXF's JRA annotation, CXF HTTP binding or AXIS2's WSDL2.0 HTTP binding, does not give you a RESTful system automatically, it only enables you to go RESTful. What we actually doing is nothing more than setting up a decent HTTP layer on top of java functions. Is this really RESTful or is this resource-oriented?
As far as I can see, JSR 311 did make a step further to enforce a somewhat ROA programming model. For example, if you look into the terminologies used by JSR311, everything is around the concept of resource, like the Resource class, Resource method, sub-resource locator etc.
> - Dan
>
> On 8/7/07, James Strachan <ja...@gmail.com> wrote:
> >
> > I'd love to see AtomPub support as a new kinda front end / binding.
> > http://atompub.org/rfc4287.html
> >
> > I've had brief conversations in bars in various coutries in the past
> > with DanD about this - previously we looked at some annotations to
> > expose RESTful resources using individual annotations on operations;
> > to bind a specific method/property to a URI etc.
> >
> > Am wondering if an AtomPub binding could be simpler and a little
> > cleverer; as AtomPub automatically understands collections &
> > navigations through types together with the basic operations. e.g.
> > relationships, collections, add/remove/update semantics etc.
> >
> >
> > Another thing I'd like to see is some tooling/maven plugins/whatever
> > so folks can do contract first development, but instead of having to
> > edit WSDL, they could just edit RelaxNG Compact Syntax to define the
> > structure of messages; which then could auto-generate the
> XSD / WSDL.
> > Or even supply some example XML documents - which by using
> Trang could
> > then generate the XSD/WSDL. For more background see...
> >
> >
> http://www.nabble.com/contract-first-using-either-XSD-or-XML-p
> lus-Trang-tf3679800.html#a10288179
> >
> >
> > On 8/7/07, Daniel Kulp <dk...@apache.org> wrote:
> > >
> > > With 2.0.1 almost out the door (getting votes when everyone is on
> > > vacation sucks), I'd like to take a minute to think about
> what should go
> > > into 2.1. We've tossed around a bunch of ideas and I'd
> like to get
> > > them written down. I'll probably start a "wish list"
> wiki page once
> > > the ideas get flowing, but for now, here's my list of
> stuff I've seen
> > > floating around:
> > >
> > > 1) JAX-WS 2.1/JAXB 2.1 - this is a fairly large amount of
> work as there
> > > are some very significant changes that will involve code
> generation
> > > changes, java -> wsdl changes, runtime support changes, etc....
> > >
> > > 2) Data bindings - XmlBeans and JIBX have been on the
> list for a while
> > > and I'm sure more XFire folks could find CXF more useful
> if we got those
> > > working. There are two parts: runtime and tooling.
> > >
> > > 3) JavaScript stuff - the javascript frontend needs some
> refactoring to
> > > allow calling other services with it, make it not
> dependent on the jaxws
> > > frontend, etc.... Also the js donation from Basis Tech
> would be great
> > > to get wired in. (if we can get the grant set, too many
> people on
> > > vacation)
> > >
> > > 4) Rest stuff - all the buzzword compatible stuff. :-)
> > >
> > > 5) WS-* specs - do we have time to tackle any more of
> these at this
> > > point? Which ones should we prioritize?
> > >
> > > 6) OSGI bundling - I think adding simple OSGI manifests
> for our jars
> > > would be fairly easy. However, should we create some
> "bundles" to
> > > represent common functionality? (like JAX-WS/SOAP/HTTP bundle)
> > >
> > >
> > > I hate to ask for more ideas as that alone is a TON of
> work, but at this
> > > point, let's get the ideas flowing. :-)
> > >
> > > --
> > > J. Daniel Kulp
> > > Principal Engineer
> > > IONA
> > > P: 781-902-8727 C: 508-380-7194
> > > daniel.kulp@iona.com
> > > http://www.dankulp.com/blog
> > >
> >
> >
> > --
> > James
> > -------
> > http://macstrac.blogspot.com/
> >
>
>
>
> --
> Dan Diephouse
> Envoi Solutions
> http://envoisolutions.com | http://netzooid.com/blog
>
----------------------------
IONA Technologies PLC (registered in Ireland)
Registered Number: 171387
Registered Address: The IONA Building, Shelbourne Road, Dublin 4, Ireland