Yeah, I see your point about the the Discovery interaction, though I guess this could be achieved directly from a pure JAX-WS application by just registering a ServicePublication.
However, just thinking through the Discovery aspect for a moment, would it be a case of directly exposing the JAX-WS service endpoint interface as the published service? In that case, wouldn't the JAX-WS annotation classes have to be pulled in on the client-side also? I'm thinking here of the case where the client is a "pure" OSGi client and has no awareness that JAX-WS is being used on the server-side. Well, I guess these annotation classes could be bundled up in the "interface bundle" so that they become available fairly transparently on the client-side. One other point that occurred to me ... in a pure JAX-WS application, you're pretty much guaranteed that only full-on remote invocations will be dispatched to the implementor (modulo the collocated case). But involving dOSGi would require exposing the SEI as a locally available POJO-style service via the local OSGi service registry. This may not be ideal. Cheers, Eoghan 2009/5/12 Sergey Beryozkin <[email protected]>: > Hi > > One problematic aspect of the Aegis databinding is that hard to write an > Aegis-bound code that will interoperate with non-Aegis consumers or Aegis > ones with slightly different understanding of how to interpret a payload. > May be enhancing Aegis for it to produce more predictable descriptions would > be one way to preserve the transparency. > > I guess there's a number of reasons why OSGI developers might prefer to do > JAXWS & DOSGI. Those (CXF users) who would like to work in OSGI and use > JAXWS without DOSGI would have to > * provide for an explicit jaxws client and or endpoint setup, using either > jaxws:endpoint/jaxws:client or doint it programmatically in a > BundleActivator > * These bundles will be more coarse-grained in a sense that an actual JAXWS > endpoint implementation may not have an interface or even if it will, this > interface will unlikey to feature in OSGI consoles, that is you won't see > with "> services" that a jaxws:endpoint has been created > * The issue of publication/discovery is open > > so if we go to DOSGI & JAXWS now then we have : > > * implicit jaxws endpoint / client creation with the help of dosgi > properties > * the interfaces are explicitly registered/looked up in BundleActivators > which makes them visible from a console > * service publication + discovery is there > > I guess the same reasoning could be applied to DOSGI + JAXRS which is > something I'm hoping to do... > > cheers, Sergey > > ----- Original Message ----- From: "Eoghan Glynn" <[email protected]> > To: <[email protected]> > Sent: Tuesday, May 12, 2009 10:54 AM > Subject: Re: Configuring DOSGI to use JAX-WS > > > Hi Josh, > > I'm not entirely sold on the desirability of using JAX-WS with dOSGi. > > Wouldn't this require that the original OSGi service class was > annotated with @WebService, @WebMethod etc? > > And wouldn't this defeat the whole purpose of dOSGi in a sense? i.e. > if the remotability isn't enabled transparently on a largely unchanged > OSGi application, why not just write a straight JAX-WS server-side > application from the get-go? > > Sorry if I'm slightly missing the point here. I just wanted to think > through the implications of using a databinding/frontend that's more > intrusive than Aegis/simple. > > Cheers, > Eoghan > > 2009/5/11 Josh Holtzman <[email protected]>: >> >> I just read David Bosschaert's blog entry [1] addressing questions about >> his >> RFC 119 webinar. One of his answers sparked another question, and rather >> than contact him directly, I decided to give the wider CXF community a >> crack >> at it. >> >> I'd like to have the option to specify which databinding strategy to use >> with DOSGI. Currently, the Aegis databinding is "hard wired". I recognize >> that this makes sense for most use cases, since it relieves the developer >> from any wsdl or xsd responsibilities. But it doesn't make sense for >> cross-platform use cases (which, interestingly, David mentions right after >> the question "Why don't you use JaxWS?"). >> >> The default wsdls produced by the Aegis databinding are not easily usable >> cross-platform. I wouldn't want to provide a developer with a wsdl that >> specifies arg0, arg1, and arg2 as argument names, for example. >> >> Is there interest in allowing the databinding strategy to be configurable >> in >> the DOSGI reference implementation? If so, I'd be happy to work on a >> patch. >> >> [1] >> >> http://coderthoughts.blogspot.com/2009/05/questions-from-rfc-119-webinar.html >> >> Thanks, >> Josh >> >> -- >> Josh Holtzman >> Educational Technology Services, UC Berkeley >> [email protected] >> 510.529.9225 >> >> > >
