You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Simon Laws <si...@googlemail.com> on 2007/06/05 11:44:21 UTC

Servlet path change?

Am just playing with the big bank demo that Sebastien made and it seems now
that the servlets have moved from

services/AccountJSONService

to

services/SCADomain/AccountJSONService

Looking back through SVN changes and the ML I can't see where this happened
but I know that this just means I'm looking in the wrong place. Is this
change permanent. If so I'll check in fixes to the client.

Simon

Re: Servlet path change?

Posted by Simon Laws <si...@googlemail.com>.
OK, I need to take a closer look. Assuming we don't hard code the info we
can potentially determine the IP info (although that might not even be the
case when there are multiple NICs) but we need to get the port selection
from somewhere. Is there currently a natural place where this config info
lives or are we looking at a new config file or similar.

Regards

Simon

Re: Servlet path change?

Posted by Raymond Feng <en...@gmail.com>.
Good points. +1 to have separate modules handle the physical topology 
aspect.

Thanks,
Raymond

----- Original Message ----- 
From: "Jean-Sebastien Delfino" <js...@apache.org>
To: <tu...@ws.apache.org>
Sent: Wednesday, June 06, 2007 3:46 PM
Subject: Re: Servlet path change?


> Raymond Feng wrote:
>> Hi,
>>
>> I agree with you that the base URIs are from the topology model. What I 
>> meant before is that the CompositeBuilder will be aware of the topology 
>> model and use it to compute the effective URI for the service bindings. 
>> Are we on the same page?
>>
>> Thanks,
>> Raymond
>>
>> ----- Original Message ----- From: "Simon Laws" 
>> <si...@googlemail.com>
>> To: <tu...@ws.apache.org>
>> Sent: Wednesday, June 06, 2007 3:11 PM
>> Subject: Re: Servlet path change?
>>
>>
>>> Raymond, if you think CompositeBuilder is the right place to do this 
>>> then I
>>> have to bow to your better judgement.
>>>
>>> The binding base URLs should be stored in a topology model (as in the 
>>> SCA
>>> Binding and Distribution thread). So if you are going to make this 
>>> change it
>>> would be good to instigate enough of the topology model to to support 
>>> your
>>> change. Happy to help with this as I want to start moving the beginnings 
>>> of
>>> the distributed implementation into the trunck.
>>>
>>> Regardless of the format this actually arrives in I guess we need at 
>>> least
>>> the following to get your change to work.
>>>
>>> domain
>>>  runtime
>>>    name
>>>    binding
>>>      name
>>>      scheme
>>>          name
>>>          baseuri
>>>
>>> Regards
>>>
>>> Simon
>>>
>>
>
> I'd like to keep this modular and continue to have a clear separation of 
> concerns between assembly, interfaces, databindings, and now... the 
> topology aspects.
>
> So I suggest to put the model describing the topology of an SCA domain and 
> the builders/processors/etc that handle it in a new module, separate from 
> the assembly module, which is really specialized in the domain logical 
> composition.
>
> In that modular architecture, CompositeBuilder will continue to know only 
> about logical composition, and we can have a new WhateverBuilder in that 
> new topology module to handle the building of the topology model and the 
> determination of the base binding URIs.
>
> -- 
> Jean-Sebastien
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> 


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


Re: Servlet path change?

Posted by Jean-Sebastien Delfino <js...@apache.org>.
Raymond Feng wrote:
> Hi,
>
> I agree with you that the base URIs are from the topology model. What 
> I meant before is that the CompositeBuilder will be aware of the 
> topology model and use it to compute the effective URI for the service 
> bindings. Are we on the same page?
>
> Thanks,
> Raymond
>
> ----- Original Message ----- From: "Simon Laws" 
> <si...@googlemail.com>
> To: <tu...@ws.apache.org>
> Sent: Wednesday, June 06, 2007 3:11 PM
> Subject: Re: Servlet path change?
>
>
>> Raymond, if you think CompositeBuilder is the right place to do this 
>> then I
>> have to bow to your better judgement.
>>
>> The binding base URLs should be stored in a topology model (as in the 
>> SCA
>> Binding and Distribution thread). So if you are going to make this 
>> change it
>> would be good to instigate enough of the topology model to to support 
>> your
>> change. Happy to help with this as I want to start moving the 
>> beginnings of
>> the distributed implementation into the trunck.
>>
>> Regardless of the format this actually arrives in I guess we need at 
>> least
>> the following to get your change to work.
>>
>> domain
>>  runtime
>>    name
>>    binding
>>      name
>>      scheme
>>          name
>>          baseuri
>>
>> Regards
>>
>> Simon
>>
>

I'd like to keep this modular and continue to have a clear separation of 
concerns between assembly, interfaces, databindings, and now... the 
topology aspects.

So I suggest to put the model describing the topology of an SCA domain 
and the builders/processors/etc that handle it in a new module, separate 
from the assembly module, which is really specialized in the domain 
logical composition.

In that modular architecture, CompositeBuilder will continue to know 
only about logical composition, and we can have a new WhateverBuilder in 
that new topology module to handle the building of the topology model 
and the determination of the base binding URIs.

-- 
Jean-Sebastien


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


Re: Servlet path change?

Posted by Simon Laws <si...@googlemail.com>.
Ah, yes, sounds like we are:-)

Simon

Re: Servlet path change?

Posted by Raymond Feng <en...@gmail.com>.
Hi,

I agree with you that the base URIs are from the topology model. What I 
meant before is that the CompositeBuilder will be aware of the topology 
model and use it to compute the effective URI for the service bindings. Are 
we on the same page?

Thanks,
Raymond

----- Original Message ----- 
From: "Simon Laws" <si...@googlemail.com>
To: <tu...@ws.apache.org>
Sent: Wednesday, June 06, 2007 3:11 PM
Subject: Re: Servlet path change?


> Raymond, if you think CompositeBuilder is the right place to do this then 
> I
> have to bow to your better judgement.
>
> The binding base URLs should be stored in a topology model (as in the SCA
> Binding and Distribution thread). So if you are going to make this change 
> it
> would be good to instigate enough of the topology model to to support your
> change. Happy to help with this as I want to start moving the beginnings 
> of
> the distributed implementation into the trunck.
>
> Regardless of the format this actually arrives in I guess we need at least
> the following to get your change to work.
>
> domain
>  runtime
>    name
>    binding
>      name
>      scheme
>          name
>          baseuri
>
> Regards
>
> Simon
> 


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


Re: Servlet path change?

Posted by Simon Laws <si...@googlemail.com>.
Raymond, if you think CompositeBuilder is the right place to do this then I
have to bow to your better judgement.

The binding base URLs should be stored in a topology model (as in the SCA
Binding and Distribution thread). So if you are going to make this change it
would be good to instigate enough of the topology model to to support your
change. Happy to help with this as I want to start moving the beginnings of
the distributed implementation into the trunck.

Regardless of the format this actually arrives in I guess we need at least
the following to get your change to work.

domain
  runtime
    name
    binding
      name
      scheme
          name
          baseuri

Regards

Simon

Re: What's an SCA domain base URI? was: Servlet path change?

Posted by Raymond Feng <en...@gmail.com>.
That's right. Basically the binding provider needs to figure out which 
scheme to use for a paticular service or reference.

Thanks,
Raymond

----- Original Message ----- 
From: "Simon Laws" <si...@googlemail.com>
To: <tu...@ws.apache.org>; <an...@gmail.com>
Sent: Thursday, June 07, 2007 2:28 AM
Subject: Re: What's an SCA domain base URI? was: Servlet path change?


> Also, for example, the Web Service Binding specification adds extra, WSDL
> specific, endpoint URI resolution rules which we need to factor in.
>
>
> Simon
> 


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


Re: What's an SCA domain base URI? was: Servlet path change?

Posted by Simon Laws <si...@googlemail.com>.
Also, for example, the Web Service Binding specification adds extra, WSDL
specific, endpoint URI resolution rules which we need to factor in.


Simon

Re: What's an SCA domain base URI? was: Servlet path change?

Posted by ant elder <an...@apache.org>.
On 6/6/07, Jean-Sebastien Delfino <js...@apache.org> wrote:
>
> [snip]
>
> > That's where the SCA domain configuration of base URIs for
> > hierarchical URI scheme comes to play. The SCA spec says: "An SCA
> > domain should define a base URI for each hierarchical URI scheme on
> > which it intends to provide services".
> >
> > Let's assume we have two bindings: binding.x and binding.y. The scheme
> > (protocol) is "ftp" for binding.x and "http" for binding.y.
> >
> > <component name="C1">
> > <service name="FTPService">
> >        <binding.x .../>
> > </service>
> > <service name="HTTPService">
> >        <binding.y .../>
> > </service>
> > </component>
> >
> > If the SCA domain defines the mapping:
> >
> > binding.x --> ftp://ftp.example.com/public
> > binding.y --> http://www.example.com
> >
> > Then the computedURI for binding.x and binding.y would be:
> >
> > binding.x: ftp://ftp.example.com/public/C1/FTPService
> > binding.y http://www.example.com/C1/HTTPService
> >
> >
>
> I took another look at the spec, and you're correct this is what it
> says, but now I am not sure I understand anymore how this can really
> work... Well, maybe I do understand some of it, but I'd like to explore
> and challenge it a bit here :)
>
> I have a simple use case in mind:
> - my SCA domain includes components running on two servers (an SCA
> domain is a administrative domain so I'm going to assume that I have at
> least 2 servers in that domain)
> - the host names of my two servers are servera and serverb
> - my components provide web services, over the HTTP protocol
> - what should my SCA domain URI look like? http:// and then what? just
> http://? how is this domain URI useful here?
>
> Possible answers:
> - configure my domain URI to www.mydomain.com and have my two servers
> appear as one... under www.mydomain.com/x and www.mydomain.com/y?
> - conclude that domain URI is not so useful after all?
> - another idea?


Just throwing this one in here as I've not seen it mentioned yet anywhere on
all the threads about this, there's also section 1.7.2.3 of the assembly
spec to consider. So for example, a WS binding also needs to be able to
control if its an http or https url.

   ...ant

Re: What's an SCA domain base URI? was: Servlet path change?

Posted by Simon Laws <si...@googlemail.com>.
I also think the assembly spec is a little deficient in this area. I don't
think it's description of the Base Domain URI at line 2357 chimes well with
the notion that an SCA Domain may be represented across a number of runtime
nodes at line 2765.

While we might assume from how it stands that there is only one URL for the
domain, we can create completely different URLs for each binding/scheme.

What I would expect it be saying is that the base URI depends on the
potentially distributed nodes that make up the domain. Regardless of DNS
settings (which I wouldn't expect people to be forced to fiddle with just to
get SCA working) there is nothing stopping people missing out DNS and going
straight for IP addresses in the URLs in which case we have to deal with
different binding URLs for different nodes.

Simon

Re: What's an SCA domain base URI? was: Servlet path change?

Posted by Jean-Sebastien Delfino <js...@apache.org>.
[snip]
scabooz wrote:
>
> Why do we think that a Domain base URI is physically addressable and
> known to a DNS?

 From the assembly spec:

2357 Base Domain URI for a scheme. An SCA domain should define a base 
URI for each
2358 hierarchical URI scheme on which it intends to provide services.
2359 For example: the HTTP and HTTPS schemes would each have their own 
base URI defined for the
2360 domain. An example of a scheme that is not hierarchical, and 
therefore will have no base URI is
2361 the “jms:” scheme.


> I see it as a level of indirection used to address
> "things" in an assembly. These URIs would need to be mapped (by
> binding components to runtimes at deployment time) to something concrete.
>

Are http:// and https:// concrete enough? :)

-- 
Jean-Sebastien


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


Re: What's an SCA domain base URI? was: Servlet path change?

Posted by scabooz <sc...@gmail.com>.
Why do we think that a Domain base URI is physically addressable and
known to a DNS?  I see it as a level of indirection used to address
"things" in an assembly.  These URIs would need to be mapped (by
binding components to runtimes at deployment time) to something concrete.

Contributions are assigned a URI when installed.  The Domain's base URI
could be used to construct those URIs.

Technically, it should also be possible to target a
reference using a fully qualified URI that is based on the domain URI. The
hosting runtime might be known in an IP network by a completely
different URI.  Think virtual hosts in web-app land as an example.

When adding a composite to a domain, someone will have to indicate
which domain...again the domain base URI comes into play.

There are very simple scenarios where the domain base URI
could be exactly the same as the physical URI.

Dave

----- Original Message ----- 
From: "Raymond Feng" <en...@gmail.com>
To: <tu...@ws.apache.org>
Sent: Wednesday, June 06, 2007 5:04 PM
Subject: Re: What's an SCA domain base URI? was: Servlet path change?


> Hi,
>
> I think the base URI for a scheme cannot be global to a SCA domain. As you 
> said, that would be useless. The spec needs some clarifications here.
>
> We might have two options here:
>
> 1) The SCA domain defines the base URI pattern such as http://$host:8080/. 
> And $host will be replaced by the running server name or address.
> 2) The baseURI is defined per runtime/server 
> (http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg18613.html).
>
> Thanks,
> Raymond
>
> ----- Original Message ----- 
> From: "Jean-Sebastien Delfino" <js...@apache.org>
> To: <tu...@ws.apache.org>
> Sent: Wednesday, June 06, 2007 1:51 PM
> Subject: What's an SCA domain base URI? was: Servlet path change?
>
>
>> [snip]
>>
>>> That's where the SCA domain configuration of base URIs for hierarchical 
>>> URI scheme comes to play. The SCA spec says: "An SCA domain should 
>>> define a base URI for each hierarchical URI scheme on which it intends 
>>> to provide services".
>>>
>>> Let's assume we have two bindings: binding.x and binding.y. The scheme 
>>> (protocol) is "ftp" for binding.x and "http" for binding.y.
>>>
>>> <component name="C1">
>>> <service name="FTPService">
>>>        <binding.x .../>
>>> </service>
>>> <service name="HTTPService">
>>>        <binding.y .../>
>>> </service>
>>> </component>
>>>
>>> If the SCA domain defines the mapping:
>>>
>>> binding.x --> ftp://ftp.example.com/public
>>> binding.y --> http://www.example.com
>>>
>>> Then the computedURI for binding.x and binding.y would be:
>>>
>>> binding.x: ftp://ftp.example.com/public/C1/FTPService
>>> binding.y http://www.example.com/C1/HTTPService
>>>
>>>
>>
>> I took another look at the spec, and you're correct this is what it says, 
>> but now I am not sure I understand anymore how this can really work... 
>> Well, maybe I do understand some of it, but I'd like to explore and 
>> challenge it a bit here :)
>>
>> I have a simple use case in mind:
>> - my SCA domain includes components running on two servers (an SCA domain 
>> is a administrative domain so I'm going to assume that I have at least 2 
>> servers in that domain)
>> - the host names of my two servers are servera and serverb
>> - my components provide web services, over the HTTP protocol
>> - what should my SCA domain URI look like? http:// and then what? just 
>> http://? how is this domain URI useful here?
>>
>> Possible answers:
>> - configure my domain URI to www.mydomain.com and have my two servers 
>> appear as one... under www.mydomain.com/x and www.mydomain.com/y?
>> - conclude that domain URI is not so useful after all?
>> - another idea?
>>
>>
>> Thoughts?
>>
>> -- 
>> Jean-Sebastien
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> 


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


Re: What's an SCA domain base URI? was: Servlet path change?

Posted by Raymond Feng <en...@gmail.com>.
Hi,

I think the base URI for a scheme cannot be global to a SCA domain. As you 
said, that would be useless. The spec needs some clarifications here.

We might have two options here:

1) The SCA domain defines the base URI pattern such as http://$host:8080/. 
And $host will be replaced by the running server name or address.
2) The baseURI is defined per runtime/server 
(http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg18613.html).

Thanks,
Raymond

----- Original Message ----- 
From: "Jean-Sebastien Delfino" <js...@apache.org>
To: <tu...@ws.apache.org>
Sent: Wednesday, June 06, 2007 1:51 PM
Subject: What's an SCA domain base URI? was: Servlet path change?


> [snip]
>
>> That's where the SCA domain configuration of base URIs for hierarchical 
>> URI scheme comes to play. The SCA spec says: "An SCA domain should define 
>> a base URI for each hierarchical URI scheme on which it intends to 
>> provide services".
>>
>> Let's assume we have two bindings: binding.x and binding.y. The scheme 
>> (protocol) is "ftp" for binding.x and "http" for binding.y.
>>
>> <component name="C1">
>> <service name="FTPService">
>>        <binding.x .../>
>> </service>
>> <service name="HTTPService">
>>        <binding.y .../>
>> </service>
>> </component>
>>
>> If the SCA domain defines the mapping:
>>
>> binding.x --> ftp://ftp.example.com/public
>> binding.y --> http://www.example.com
>>
>> Then the computedURI for binding.x and binding.y would be:
>>
>> binding.x: ftp://ftp.example.com/public/C1/FTPService
>> binding.y http://www.example.com/C1/HTTPService
>>
>>
>
> I took another look at the spec, and you're correct this is what it says, 
> but now I am not sure I understand anymore how this can really work... 
> Well, maybe I do understand some of it, but I'd like to explore and 
> challenge it a bit here :)
>
> I have a simple use case in mind:
> - my SCA domain includes components running on two servers (an SCA domain 
> is a administrative domain so I'm going to assume that I have at least 2 
> servers in that domain)
> - the host names of my two servers are servera and serverb
> - my components provide web services, over the HTTP protocol
> - what should my SCA domain URI look like? http:// and then what? just 
> http://? how is this domain URI useful here?
>
> Possible answers:
> - configure my domain URI to www.mydomain.com and have my two servers 
> appear as one... under www.mydomain.com/x and www.mydomain.com/y?
> - conclude that domain URI is not so useful after all?
> - another idea?
>
>
> Thoughts?
>
> -- 
> Jean-Sebastien
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> 


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


What's an SCA domain base URI? was: Servlet path change?

Posted by Jean-Sebastien Delfino <js...@apache.org>.
[snip]

> That's where the SCA domain configuration of base URIs for 
> hierarchical URI scheme comes to play. The SCA spec says: "An SCA 
> domain should define a base URI for each hierarchical URI scheme on 
> which it intends to provide services".
>
> Let's assume we have two bindings: binding.x and binding.y. The scheme 
> (protocol) is "ftp" for binding.x and "http" for binding.y.
>
> <component name="C1">
> <service name="FTPService">
>        <binding.x .../>
> </service>
> <service name="HTTPService">
>        <binding.y .../>
> </service>
> </component>
>
> If the SCA domain defines the mapping:
>
> binding.x --> ftp://ftp.example.com/public
> binding.y --> http://www.example.com
>
> Then the computedURI for binding.x and binding.y would be:
>
> binding.x: ftp://ftp.example.com/public/C1/FTPService
> binding.y http://www.example.com/C1/HTTPService
>
>

I took another look at the spec, and you're correct this is what it 
says, but now I am not sure I understand anymore how this can really 
work... Well, maybe I do understand some of it, but I'd like to explore 
and challenge it a bit here :)

I have a simple use case in mind:
- my SCA domain includes components running on two servers (an SCA 
domain is a administrative domain so I'm going to assume that I have at 
least 2 servers in that domain)
- the host names of my two servers are servera and serverb
- my components provide web services, over the HTTP protocol
- what should my SCA domain URI look like? http:// and then what? just 
http://? how is this domain URI useful here?

Possible answers:
- configure my domain URI to www.mydomain.com and have my two servers 
appear as one... under www.mydomain.com/x and www.mydomain.com/y?
- conclude that domain URI is not so useful after all?
- another idea?


Thoughts?

-- 
Jean-Sebastien


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


Re: Servlet path change?

Posted by Raymond Feng <en...@gmail.com>.
Hi,

Please see my comments inline below.

Thanks,
Raymond

----- Original Message ----- 
From: "Jean-Sebastien Delfino" <js...@gmail.com>
To: <tu...@ws.apache.org>
Sent: Wednesday, June 06, 2007 1:09 PM
Subject: Re: Servlet path change?


> [snip]
> Raymond Feng wrote:
>> Hi, Ant.
>>
>> I agree with you that we should generalize the service binding URI. I 
>> think I have a proposal here.
>>
>> When the CompositeBuidler builds the composite, we should calculate the 
>> service binding URI based on various pieces of the information as defined 
>> by the spec and save the effective URI in the service binding so that 
>> Binding.getURI() will return the good URI. This way, the binding 
>> providers doesn't have to deal with the calculation.
>>
>> If you guys think it's the right way to go, I can try to add the function 
>> to the CompositeBuilder.
>>
>> This is also related to how a binding is mapped to a protocol (scheme) 
>> and baseURI. The topic is being discussed on the ML under "SCA Binding 
>> and Distribution".
>>
>> Thanks,
>> Raymond
>>
>>
>
> This initially sounds reasonable to me, but how are you going to handle 
> protocol/binding specific URIs in CompositeBuilder? not all binding URIs 
> start with http://...
>

That's where the SCA domain configuration of base URIs for hierarchical URI 
scheme comes to play. The SCA spec says: "An SCA domain should define a base 
URI for each hierarchical URI scheme on which it intends to provide 
services".

Let's assume we have two bindings: binding.x and binding.y. The scheme 
(protocol) is "ftp" for binding.x and "http" for binding.y.

<component name="C1">
<service name="FTPService">
        <binding.x .../>
</service>
<service name="HTTPService">
        <binding.y .../>
</service>
</component>

If the SCA domain defines the mapping:

binding.x --> ftp://ftp.example.com/public
binding.y --> http://www.example.com

Then the computedURI for binding.x and binding.y would be:

binding.x: ftp://ftp.example.com/public/C1/FTPService
binding.y http://www.example.com/C1/HTTPService

The CompositeBuilder should compute and keep them in the binding. We can add 
computedURI as you proposed.

> Would it be possible to let the Binding extension decide what form the URI 
> should take?
> Maybe we could have have another field on the base Binding named 
> computedURI (computed by CompositeBuilder), which the binding extension 
> could use to compose the value of the actual URI field?
>
>
> --
> Jean-Sebastien
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> 


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


Re: Servlet path change?

Posted by Jean-Sebastien Delfino <js...@gmail.com>.
[snip]
Raymond Feng wrote:
> Hi, Ant.
>
> I agree with you that we should generalize the service binding URI. I 
> think I have a proposal here.
>
> When the CompositeBuidler builds the composite, we should calculate 
> the service binding URI based on various pieces of the information as 
> defined by the spec and save the effective URI in the service binding 
> so that Binding.getURI() will return the good URI. This way, the 
> binding providers doesn't have to deal with the calculation.
>
> If you guys think it's the right way to go, I can try to add the 
> function to the CompositeBuilder.
>
> This is also related to how a binding is mapped to a protocol (scheme) 
> and baseURI. The topic is being discussed on the ML under "SCA Binding 
> and Distribution".
>
> Thanks,
> Raymond
>
>

This initially sounds reasonable to me, but how are you going to handle 
protocol/binding specific URIs in CompositeBuilder? not all binding URIs 
start with http://...

Would it be possible to let the Binding extension decide what form the 
URI should take?
Maybe we could have have another field on the base Binding named 
computedURI (computed by CompositeBuilder), which the binding extension 
could use to compose the value of the actual URI field?


--
Jean-Sebastien

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


Re: Servlet path change?

Posted by Raymond Feng <en...@gmail.com>.
Hi, Ant.

I agree with you that we should generalize the service binding URI. I think 
I have a proposal here.

When the CompositeBuidler builds the composite, we should calculate the 
service binding URI based on various pieces of the information as defined by 
the spec and save the effective URI in the service binding so that 
Binding.getURI() will return the good URI. This way, the binding providers 
doesn't have to deal with the calculation.

If you guys think it's the right way to go, I can try to add the function to 
the CompositeBuilder.

This is also related to how a binding is mapped to a protocol (scheme) and 
baseURI. The topic is being discussed on the ML under "SCA Binding and 
Distribution".

Thanks,
Raymond

----- Original Message ----- 
From: "ant elder" <an...@apache.org>
To: <tu...@ws.apache.org>
Sent: Wednesday, June 06, 2007 7:02 AM
Subject: Re: Servlet path change?


> On 6/6/07, Simon Laws <si...@googlemail.com> wrote:
>>
>> Thanks for the pointers/info. I assume the intention is to add in the
>> ability to specify the binding specific base system uri on a binding by
>> binding bases (as well as implementing all the other rules of course). I
>> don't see this configuration in the code now.
>>
>> sca domain
>>   sca runtime
>>      runtime.a.name
>>      runtime.a.address
>>   binding.a config
>>      Scheme.a baseURI="HTTP://runtime.a.address:80/"
>>      Scheme.a baseURI="HTTPS://runtime.a.address:442/"
>>
>> I'm interested in this bit particularly as this is where it touches the
>> distributed runtime.
>
>
> Go for it, I've not yet been able to work out how that should properly be
> done. Right now there's a hard coded BASE_URI used in
> Axis2ServiceBindingProvider. The host name is ignored but the port is used
> when using the Tuscany Jetty or Tomcat host (though i think maybe the port
> is actually only used for the 1st service registered which is a bug), but
> the whole thing is ignored for webapps. In Axis2ServiceBindingProvider
> there's also a method computeActualURI which  works out a  URI based on
> section 1.7.2 of the Assembly spec. Most of that is not WS specific and 
> its
> what we need to do for all bindings using hierarchical URI schemes so it
> would be nice to generalize it for use by all those bindings - Axis,
> json-rpc, rmi etc.
>
> And so all the info is here, there's also a problem in computeActualURI
> related TUSCANY-1291 and this thread:
> http://mail-archives.apache.org/mod_mbox/ws-tuscany-dev/200705.mbox/%3c71e1b5740705310157m141b0096xda02e503bdfd9ade@mail.gmail.com%3e
>
>   ...ant
> 


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


Re: Servlet path change?

Posted by ant elder <an...@apache.org>.
On 6/6/07, Simon Laws <si...@googlemail.com> wrote:
>
> Thanks for the pointers/info. I assume the intention is to add in the
> ability to specify the binding specific base system uri on a binding by
> binding bases (as well as implementing all the other rules of course). I
> don't see this configuration in the code now.
>
> sca domain
>   sca runtime
>      runtime.a.name
>      runtime.a.address
>   binding.a config
>      Scheme.a baseURI="HTTP://runtime.a.address:80/"
>      Scheme.a baseURI="HTTPS://runtime.a.address:442/"
>
> I'm interested in this bit particularly as this is where it touches the
> distributed runtime.


Go for it, I've not yet been able to work out how that should properly be
done. Right now there's a hard coded BASE_URI used in
Axis2ServiceBindingProvider. The host name is ignored but the port is used
when using the Tuscany Jetty or Tomcat host (though i think maybe the port
is actually only used for the 1st service registered which is a bug), but
the whole thing is ignored for webapps. In Axis2ServiceBindingProvider
there's also a method computeActualURI which  works out a  URI based on
section 1.7.2 of the Assembly spec. Most of that is not WS specific and its
what we need to do for all bindings using hierarchical URI schemes so it
would be nice to generalize it for use by all those bindings - Axis,
json-rpc, rmi etc.

And so all the info is here, there's also a problem in computeActualURI
related TUSCANY-1291 and this thread:
http://mail-archives.apache.org/mod_mbox/ws-tuscany-dev/200705.mbox/%3c71e1b5740705310157m141b0096xda02e503bdfd9ade@mail.gmail.com%3e

   ...ant

Re: Servlet path change?

Posted by Simon Laws <si...@googlemail.com>.
Thanks for the pointers/info. I assume the intention is to add in the
ability to specify the binding specific base system uri on a binding by
binding bases (as well as implementing all the other rules of course). I
don't see this configuration in the code now.

sca domain
  sca runtime
     runtime.a.name
     runtime.a.address
  binding.a config
     Scheme.a baseURI="HTTP://runtime.a.address:80/"
     Scheme.a baseURI="HTTPS://runtime.a.address:442/"

I'm interested in this bit particularly as this is where it touches the
distributed runtime.

Simon

Re: Servlet path change?

Posted by Jean-Sebastien Delfino <js...@apache.org>.
ant elder wrote:
> On 6/5/07, Simon Laws <si...@googlemail.com> wrote:
>>
>> Am just playing with the big bank demo that Sebastien made and it seems
>> now
>> that the servlets have moved from
>>
>> services/AccountJSONService
>>
>> to
>>
>> services/SCADomain/AccountJSONService
>>
>> Looking back through SVN changes and the ML I can't see where this
>> happened
>> but I know that this just means I'm looking in the wrong place. Is this
>> change permanent. If so I'll check in fixes to the client.
>
>
> That was TUSCANY-1269 and r543083, also see
> http://incubator.apache.org/tuscany/sca-java-bindingjsonrpc.html 
> although i
> guess that could be updated to mention what the actual endpoint URI is.
>
> The "services/' part is coming from the servlet definition in the 
> web.xml.
> The "SCADomain/" part is fixed right now, the "AccountJSONService" is the
> name of the binding.
>
> TUSCANY-1269 brought the binding.ajax and binding.jsonrpc together so 
> they
> work the same way and which binding is used can be transparent to 
> clients,
> but I don't think this is the permanent final solution yet. We probably
> should try to make all binding endpoints work as much as possible in a
> standard way as described in section 1.7.2 of the Assembly spec.
>
>   ...ant
>

+1, we should compute the service URI as described in section 1.7.2 of 
the assembly spec. I created 
http://issues.apache.org/jira/browse/TUSCANY-1326 to report this.

-- 
Jean-Sebastien


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


Re: Servlet path change?

Posted by ant elder <an...@apache.org>.
On 6/5/07, Simon Laws <si...@googlemail.com> wrote:
>
> Am just playing with the big bank demo that Sebastien made and it seems
> now
> that the servlets have moved from
>
> services/AccountJSONService
>
> to
>
> services/SCADomain/AccountJSONService
>
> Looking back through SVN changes and the ML I can't see where this
> happened
> but I know that this just means I'm looking in the wrong place. Is this
> change permanent. If so I'll check in fixes to the client.


That was TUSCANY-1269 and r543083, also see
http://incubator.apache.org/tuscany/sca-java-bindingjsonrpc.html although i
guess that could be updated to mention what the actual endpoint URI is.

The "services/' part is coming from the servlet definition in the web.xml.
The "SCADomain/" part is fixed right now, the "AccountJSONService" is the
name of the binding.

TUSCANY-1269 brought the binding.ajax and binding.jsonrpc together so they
work the same way and which binding is used can be transparent to clients,
but I don't think this is the permanent final solution yet. We probably
should try to make all binding endpoints work as much as possible in a
standard way as described in section 1.7.2 of the Assembly spec.

   ...ant