Glynn, Eoghan wrote:
-----Original Message-----
From: Dan Diephouse [mailto:[EMAIL PROTECTED]
Sent: 11 April 2007 19:54
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Client & Endpoint Config [was Re: Generic client config]
On 4/11/07, Dan Diephouse <[EMAIL PROTECTED]> wrote:
Hiya
On 4/11/07, Glynn, Eoghan <[EMAIL PROTECTED]> wrote:
1. How does the <jaxws:client> id attribute relate to the target
port name? e.g. id="MyPort", or id="MyService/MyPort", or
id="{http://myNamespace}MyService/MyPort ", or some wildcarded
variant, or something else entirely?
It pulls out the <jaxws:client> config by the port name.
From the ServiceImplTest/soapServiceConfig.xml:
<jaxws:client id="{
http://apache.org/hello_world_soap_http}SoapPort<http://apache
.org/hello_world_soap_http%7DSoapPort>"
abstract="true">
<jaxws:properties>
<entry key="foo" value="bar"/>
</jaxws:properties>
</jaxws:client>
I'm just thinking through this some more...
I think this is liable not to work if we have both an
<endpoint> and <client> defined in the same context as Spring
will create the same ids for them. Therefore when we do
configureObject() its liable to get confused and not work.
What do people think of requiring that people add ".client"
or ".endpoint"
to the ids? Maybe I'm missing something, but that might be
the only way to get this to work.
Well I guess the ".client" suffix would line up with the ".http-conduit"
style used elsewhere.
Which I guess brings us rounf to the "what if the same port name is used
in multiple services" question brought up by Fred recently in relation
to the http-conduit config.
The consensus on that seemed to be that it would be a good idea to add
the service name into the bean ID in order to distinguish between the
similarly named ports, and to use a regex-based wild-carding scheme to
support semantics like "http://myNamespace}ServiceA/.*" meaning "all
ports associated with ServiceA" or "http://myNamespace}.*/Http.*"
meaning "any port name starting with Http" etc. Probably a good idea to
have the same flexibility with the <jaxws:client> config.
I would also recommend adding the service name to the configuration name.
I would also like these questions answered
1. Without even concerning regex matching). If there are two
configurations of the same name:
(a) in the same file, which one gets applied?
(b) in different files, which one gets applied?
If you call that a configuration error. That's great, throw an exception
and stop the show.
But when you start using regex situations (a) and (b) become very real.
I can also see the potential to have "base" configurations with
"overrides". How will that be handled, if handled at all?
Cheers,
Polar
Cheers,
Eoghan