Jervis
I agree with this. I view the extension dir as just one way
extensions could be installed - there's nothing special about this
mechanism, it is simply triggered by having a DirectoryScanExtender
component loaded as part of the system composite.
I think there is a problem with the spec in the way that it defines
bindings based on a particular technology - for example, <binding.ws>
as if a runtime would only support one implementation for that
technology. Fortunately the spec does allow for non-specified
bindings so we could, for example, support <binding.axis2> and
<binding.celtix> with no problem. I would suggest that we do.
To address your point 1), some users prefer configuring servers just
by copying files or directories to the right place. On some platforms
that is the normal way to install applications. I think this works
if the extension can be packaged as a single file, either some form
of archive with nested dependencies like Ant was proposing, or a
archive/file with external dependencies as I had been suggesting.
The launcher environment we have been using is a fairly simple client
which is focused on just running a single composite. It would be
possible to define a more complex distribution that contained a whole
bunch of server components and multiple application composites
providing multiple services - something akin to Tomcat's webapp
directory. This could use the same mechanism as e.g. the
DirectoryScanExtender but I think it is important to keep a
separation between artifacts used as server extensions and those used
by application code.
I think a simple approach here would be to allow the extension
directory to contain simple SCDL files (xml files) that define
composites and which get their code through dependencies. I think
this would also give the config file approach you suggested. Is this
something you would be interested in working on?
--
Jeremy
On Aug 14, 2006, at 7:55 PM, Liu, Jervis wrote:
Hi,
I can see from yesterday's IRC chat that we had a quick discussion
on how to create distribution for bindings. I think the main
problem we are facing is how to switch binding implementations. For
example, we may want to switch the implementation of binding.ws
between axis2 and celtix for helloworldws sample, in an easy and
user friendly way. The approach Jeremy proposed should work:
package the binding as an extension and somehow install it into the
runtime(put it into the extension dir?) . So this is definitely one
option. But I think we should also provide alternatives to better
address following scenarios:
1, Tuscany users installed a generic Tuscany distribution, and they
would like to be able to switch binding implementations without
moving libraries around or changing any directories. I think we can
improve usability if users only need to change a config file.
2. Some applications may want to use two binding implementations at
the same time.
It seems to me that we will need a configuration somewhere to
specify the specific binding implementation. Can we have a
proprietary entry in scdl file sth like <binging.ws.axis2/> or
<binding.ws bindingImplementation=axis/>? Any comments are welcome.
To better track this thread, I have created jira 621. https://
issues.apache.org/jira/browse/TUSCANY-621. I also enclosed relevant
IRC chat log for your info.
Thanks,
Jervis
(05:27:47) cr22rc: jboynes : I'm ok about taking it out .. but what
are we looking for doing for samples needing axis wsbservice binding
(05:28:44) jboynes: I want to package the axis binding as an
extension that can be installed in the runtime
(05:29:46) jboynes: so to run the sample you add the axis extension
to your installation
(05:30:43) ant: or we may have a distribution that includes axis
right?
(05:31:03) jboynes: sure
(05:32:32) jboynes: I want to make sure that the basic concept
(core + a bunch of extensions) works
(05:33:19) kgoodson left the room (quit: Read error: 110
(Connection timed out)).
(05:33:23) ant: could we talk about the ServletHost stuff now?
(05:33:33) jboynes: so we don't end up in a situation where an
extension only works if it is packed into a distro in a special way
(05:33:40) jboynes: I need a couple more
(05:33:48) jboynes: I need to eat
(05:35:32) ant: ok, well ping when you're ready
(05:48:04) jboynes: ant: hi, better now I've had breakfast :)
(05:48:30) ant: yum
(05:48:31) jboynes: sorry for holding things up - I just reached
the pass out or get cranky phase
(05:48:48) dkulp left the room (quit: "using sirc version 2.211
+KSIRC/1.3.12").
(05:49:19) ant: ok so there's an interface ServletHost
(05:50:02) jboynes: yep
(05:50:10) ant: so the WS binding should use that to register a
servlet for each ws endpoint
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]