OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsrp message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: [wsrp][markup] URL rewriting for proposals 2 & 4


I had been asked to sketch a possible way proposals 2 & 4 could flow
through the chain Producer -> Consumer -> End-User -> Consumer -> Producer
to help people see the proposals more concretely. None of the choices for
how things are represented here are meant to reflect a choice the
subcommittee has made, just a possible means by which things could work.
Sorry for the delay in getting this out .... I had been consumed by the
merged interfaces work.

   -------------------------------  Possible impacts of the 2 proposals for
Action type URLs -----------------------------------

Proposal #2: All portlets use a predefined prefix, which is part of the
specification, to do the URL boundary demarcation. The aggregator then
parses the markup looking for  the well known prefix.
|---------------------+-------------------------------------------|
|Entity's URL         |{StartToken}{urlType =                     |
|                     |action}{actionName}{EndToken}              |
|---------------------+-------------------------------------------|
|Consumer rewrites URL|Stores Entity's URL & generates url to     |
|                     |reference the action                       |
|---------------------+-------------------------------------------|
|End-User browser sees|http://Consumer.com?WSIA_urlref=5          |
|---------------------+-------------------------------------------|
|Post to Consumer     |Consumer does a lookup and calls Producer  |
|---------------------+-------------------------------------------|
|Soap invocation to   |Producer.performAction(entityHandle, ...,  |
|Producer             |actionName, ...)                           |
|---------------------+-------------------------------------------|




Proposal #4: The Consumer sends URL info to use to the remote portlet,
allowing it to do correct URL writing itself. The markup sent back to the
Consumer is then ready for immediate inclusion in the page, with no parsing
necessary.

Using Eilon's templating suggestion:
|----------------------+-------------------------------------------------------------------------|
|Consumer sets Entity  |ActionURL = http://Consumer.com?WSIA_entity=7,WSIA_actionName            |
|property              |={actionName}{params}                                                    |
|----------------------+-------------------------------------------------------------------------|
|Entity's URL          |http://Consumer.com?WSIA_entity=7,WSIA_actionName=DoTransaction,parm1=foo|
|----------------------+-------------------------------------------------------------------------|
|Consumer passes URL   |                                                                         |
|asis                  |                                                                         |
|----------------------+-------------------------------------------------------------------------|
|End-User browser sees |http://Consumer.com?WSIA_entity=7,WSIA_actionName=DoTransaction,parm1=foo|
|----------------------+-------------------------------------------------------------------------|
|Post to Consumer      |Consumer does a lookup of the entity and calls Producer                  |
|----------------------+-------------------------------------------------------------------------|
|Soap invocation to    |Producer.performAction(entityHandle, ..., DoTransaction, ...)            |
|Producer              |                                                                         |
|----------------------+-------------------------------------------------------------------------|




   -------------------------------  Possible impacts of the 2 proposals for
Proxy type URLs -----------------------------------

Proposal #2: All portlets use a predefined prefix, which is part of the
specification, to do the URL boundary demarcation. The aggregator then
parses the markup looking for  the well known prefix.
|---------------------+------------------------------------------------------------|
|Entity's URL         |{StartToken}{urlType = proxy}{images/ok.gif}{EndToken}      |
|---------------------+------------------------------------------------------------|
|Consumer rewrites    |The Consumer acts as a proxy.                               |
|URL:                 |Stores Entity's URL & generates url to reference the        |
|   Case #1           |resource. The base URL for the resource has been discovered |
|                     |from metadata or the self description.                      |
|---------------------+------------------------------------------------------------|
|End-User browser sees|http://ConsumerProxyServer.com?WSIA_resourceref=12          |
|---------------------+------------------------------------------------------------|
|Request from Client  |Consumer does a lookup and serves the resource.             |
|---------------------+------------------------------------------------------------|
|                     |                                                            |
|---------------------+------------------------------------------------------------|
|Consumer rewrites    |The Consumer does not act as a proxy.                       |
|URL:                 |Prefixes the URL with the service's base URL (see above).   |
|    Case #2          |                                                            |
|---------------------+------------------------------------------------------------|
|End-User browser sees|http://Producer.com/images/ok.gif                           |
|---------------------+------------------------------------------------------------|
|Request from Client  |The client directly accesses the resource                   |
|---------------------+------------------------------------------------------------|




Proposal #4: The Consumer sends URL info to use to the remote portlet,
allowing it to do correct URL writing itself. The markup sent back to the
Consumer is then ready for immediate inclusion in the page, with no parsing
necessary.
|----------------------+---------------------------------------------------------------------|
|Consumer sets Entity  |ProxyURL = http://Consumer.com?WSIA_entity=7,WSIA_proxy={resource}   |
|property              |                                                                     |
|----------------------+---------------------------------------------------------------------|
|Entity's URL          |http://Consumer.com?WSIA_entity=7,WSIA_proxy=images/ok.gif           |
|----------------------+---------------------------------------------------------------------|
|Consumer passes URL   |The base URL for the resource has been discovered from metadata or   |
|asis                  |the self description and is stored by the Consumer.                  |
|----------------------+---------------------------------------------------------------------|
|End-User browser sees |http://Consumer.com?WSIA_entity=7,WSIA_proxy=images/ok.gif           |
|----------------------+---------------------------------------------------------------------|
|Post to Consumer      |Consumer uses the entity reference to lookup Producer, builds the    |
|                      |correct URL & serves the resource.                                   |
|----------------------+---------------------------------------------------------------------|








[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC