5.3 WAM Uniform Resource Locator (URL)
There are two methods for invoking WEBROUTINEs from a browser using a URL.
The unique combination of the WAM and WEBROUTINE can be specified:
http://localhost/cgi-bin/lansaweb?wam=<WAM name>&webrtn=<WEBROUTINE name>&ml=<TS name>&part=<PARTITION name>&lang=<LANGUAGE name>
If a service name has been associated with a webroutine, the unique service name can be specified:
http://localhost/cgi-bin/lansaweb?srve=<Service name>&ml=<TS name>&part=<PARTITION name>&lang=<LANGUAGE name>
Either of the above methods to invoke a webroutine can be extended to include parameters on the URL (similar to WEBEVENTs). Any fields used as parameters on the URL must be mapped for input on the webroutine. The basic syntax is shown in the following example:
http://server/cgi-bin/lansaweb?w=wam&r=rtn&f(fieldname)=fieldvalue&f(fieldname2)=fieldvalue2
The following table describes each URL keyword:
Keyword name
|
Short version
|
Required
|
Description
|
field
|
f
|
Optional.
|
Values can be passed into a mapped field by adding the required field (fieldname)= fieldvalue parameter to the URL. For example, field(Section)=AB.
|
language
|
lang or l
|
Optional. If unspecified, then partition default language is used.
|
The language identifier determines which language is to be used for presentation of the page. It is possible to create WEBROUTINE XSL and weblet stylesheets for specific languages separate from partition default language. If a page or weblet for a specified language does not exist a partition, the default language page is returned.
|
markup
|
ml
|
Optional. If not specified, a configured default is used.
|
The Technology Service to use to render the page. In case of HTML, a default LANSA:XHTML Technology Service is used. The default value can be changed using the LANSA Web Administrator.
|
partition
|
part or p
|
Optional. If not specified, a forced configured partition is always used.
|
The Partition identifier specifies which LANSA partition to use. If a forced Partition is configured on the server (this is done using the LANSA Web Administrator), this parameter is ignored.
|
srve
|
s
|
Mandatory. Must appear as the first keyword. Either webapp or srve keyword must be used.
|
The Service Name that is enrolled and mapped to a particular WAM, WEBROUTINE, Partition and Language. If this parameter is used and the specified Service Name is enrolled (can be specified in ServiceName property of a WEBROUTINE), then partition and language parameters do not need to be specified as these values are read from the registered entry. If specified, the values will override the registered entry. For further information, refer to Using the Service Name.
|
webapp
|
wam or w
|
Mandatory. Must appear as the first keyword. Either webapp or srve keyword must be used.
|
The name of the WAM that contains the WEBROUTINE to be invoked.
|
webrtn
|
r
|
Mandatory. Must appear as the second keyword.
Must be used with the webapp keyword.
|
The name of the WEBROUTINE to be invoked.
|
|
A similar alternative notation is also supported (for backwards compatibility with previous versions). Note the '+' used instead of the '&' to separate keyword-value pairs.
Invoking a WAM and WEBROUTINE:
http://localhost/cgi-bin/lansaweb?webapp=<WAM name>+webrtn=<WEBROUTINE name>+ml=<TS name>+part=<PARTITION name>+lang=<LANGUAGE name>
Invoking the service name:
http://localhost/cgi-bin/lansaweb?srve=<Service name>+ml=<TS name>+part=<PARTITION name>+lang=<LANGUAGE name>
To prevent the use of cached pages, when LANSA issues a GET request, It appends a timestamp to the url so the request is interpreted as a request for a "different" resource. For example:
http://localhost/cgi-bin/lansaweb?wam=WAM01&webrtn=WR01&ml=LANSA:XHTML&part=DEX&lang=ENG&_= 1343366108313