oracle.cabo.servlet.url
Class ExtensionPageEncoder
java.lang.Object
|
+--oracle.cabo.share.url.ServletURLEncoder
|
+--oracle.cabo.servlet.url.BasePageEncoder
|
+--oracle.cabo.servlet.url.DefaultPageEncoder
|
+--oracle.cabo.servlet.url.ExtensionPageEncoder
- All Implemented Interfaces:
- PageDecoder, PageEncoder, URLEncoder
- public class ExtensionPageEncoder
- extends DefaultPageEncoder
PageEncoder interface that implements a page encoding scheme
suitable for a servlet mapping created as an extension mapping.
For example, a client may have mapped the ".uix" suffix to
a UIXServlet (w/UIXPageBroker) instance:
<servlet-mapping>
<servlet-name>......</servlet-name>
<url-pattern>*.uix</url-pattern>
</servlet-mapping>
In this encoding scheme, the page name is derived from the name
of the mapped file; e.g., a request for "foo.uix" will
use the page name "foo". Page properties are encoded as a
"bajaPage" query parameter.
URL Structure
URLs are of the form:
http://somedomain.com:port/servletPath/pageName.suffix
?bajaPage=pageprop1=value1$pageprop2=value2
&event=eventname&eventparam1=value1&eventparam2=value2
Where:
- somedomain.com:port is the domain (and port number, if not 80)
of the location of the web server or servlet engine
- servletPath is the webserver path to the servlet
(for example, the
UIXServlet
) running the
servlet.
- pageName.suffix is the name of the page (which may contain any
characters other than "$", including "/"), followed
by the specified suffix.
- pageprop1 and pageprop2 are the names of two page properties,
each with separate values (note that they are represented as if
they were directories). Properties and values are encoded with
standard URL encoding; in addition, "$" is encoded as "$$", and
"=" is encoded as "$=".
- The event name and all event parameters are stored as URL query
parameters
Method Summary |
protected java.lang.String |
assembleURL(java.lang.String baseURL,
java.lang.String pageName,
java.lang.String pageProperties,
java.lang.String parametersURL)
Assembles the four parts of a Baja URL into a full URL. |
protected java.lang.String |
decodeFullPageName()
Identifies the full page name for the current request. |
Methods inherited from class oracle.cabo.servlet.url.BasePageEncoder |
assembleQueryString, decodePageEvent, decodePageEvent, decodePageEventImpl, decodeParameterDictionary, decodeParameters, decodeRequestedPageEvent, encodeEventURL, encodePageAndEvent, encodePageAndEvent, encodePageURL, encodeResponsePage, getBaseURL, getContext, getDefaultCharacterEncoding, getDefaultURL, getErrorLog, getRequestCharacterEncoding, getRequestCharacterEncoding, setRequestCharacterEncoding, setResponsePage |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ExtensionPageEncoder
public ExtensionPageEncoder(BajaContext context,
java.lang.String baseURL,
java.lang.String pageExtension)
- Creates an ExtensionPageEncoder.
- Parameters:
context
- the current BajaContextbaseURL
- a base URL to use in place of the servlet request.
Generally only used if BajaContext is null.pageExtension
- the extension (including ".") identifying
pages to the servlet engine
decodeFullPageName
protected java.lang.String decodeFullPageName()
- Description copied from class:
DefaultPageEncoder
- Identifies the full page name for the current request.
- Overrides:
decodeFullPageName
in class DefaultPageEncoder
assembleURL
protected java.lang.String assembleURL(java.lang.String baseURL,
java.lang.String pageName,
java.lang.String pageProperties,
java.lang.String parametersURL)
- Description copied from class:
BasePageEncoder
- Assembles the four parts of a Baja URL into a full URL.
- Overrides:
assembleURL
in class BasePageEncoder
- Following copied from class:
oracle.cabo.servlet.url.BasePageEncoder
- Parameters:
baseURL
- the base of the URL, or null to omit. This
should include the context and servlet paths.pageName
- the name of the page (or null)pageProperties
- the properties of the page, encoded
as a single string (or null)parametersURL
- the event parameters