|
BEA Systems, Inc. | ||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
Catalog | Interface to a read-only set of named text entries. |
NavTreeExtension | Interface to be implemented by Extensions which provide additional nodes in the navigation tree. |
SecurityExtension | The SecurityExtension interface should be implemented by developers
who want to create a console extension to configure and manage a custom security provider. |
Class Summary | |
Catalog.Factory | Use this class to retrieve instances of Catalog which are correctly localized for the given page context. |
Extension | An abstract base class to be implemented by extension authors. |
This package supports the deployment of console extensions which augment the functionality of the standard WebLogic Console.
Please note that this package is still under development and is subject to change during Silversword development.
A console extension is simply a web application. In order to provide features in the console, it must do both of the following:
Achieving first goal is pretty straightforward: typically, the extension .war will contain JSPs and other resources which expose application-specific MBeans or other sorts of new functionality. These pages are usually served to the end-users browser directly from the extension webapp.
The second goal is accomplished by means of a jsp tag callback mechanism. Some of the console's tags broadcast notifications as they are processed; extensions may register a listener which can examine these notifications and opt to provide the tag with additional content to be displayed. For details on this, see weblogic.management.console.extensibility.
Extension authors are encouraged to utilize the console's library of tags when composing new pages to be displayed in the console. This reduces development time while promoting a consistent look-and-feel in the interface.
In order to use the custom tags, your extension war file must include the tag library descriptor appended to the bottom of this document. This includes detailed
documentation about the tags and tag attributes that are currently supported for console
extensions. You will only need to copy this file into the /WEB-INF
directory
of your own extension .war file and use it like any other tag library. The Tag implementation
classes are available in the server classpath, so you do not need to do anything else.
Extensions may make use of the console's internationalization feature via the
weblogic.management.console.extensibility.Catalog
interface. Given
a textual ID, this interface will provide access to text that is localized as appropriate
for a given http request.
The localized text returned via the catalog must be stored in xml 'catalog' files
located under /WEB-INF/catalogs
directory. One catalog file should be
created for each language to be supported. The precise format of these files is described
by the DTD listing in Appendix B.
The catalogs directory must also include an index.xml
which describes
which of the catalog files should be used by which languages; the format for this
file in the DTD listing in Appendix C.
A console extension is deployed like any other web application, but to be recognized
as a console extension, its descriptor (web.xml) must include a context param
which specifies the Extension that should be instantiated when the extension
is deployed. The name of the parameter is weblogic.console.extension.class
and the value is simply the fully-specified name of a class which extends Extension, e.g.:
<context-param> <param-name> weblogic.console.extension.class </param-name> <param-value> com.mycompany.MyWebLogicConsoleExtension </param-value> </context-param>
This Extension's .class file should be packaged in the extension .war like any other class. Once the extension web application has been deployed and it's Extension class successfully instantiated, the extension will be able to modify the console's behavior.
The taglib is now maintained in a separate file, console_extension_taglib.tld.
<!ELEMENT catalog (text?,textlist?)*> <!-- The text element places a single entry in the catalog; the id for the text in the catalog is specified via the id attribute, and the text is taken from the body of the text element. This is typically used for larger text entries. --> <!ELEMENT text (#PCDATA)> <!ATTLIST text id CDATA #REQUIRED > <!-- The textlist is a more convenient way to enter a large number of smaller text entries. The body of the element is parsed much like a java.util.Properties file - each line is taken to be a single catalog entry, where the id and catalog text are delimited by the first equals sign ('=') on each line. Leading and trailing whitespace is trimmed from both key and text. --> <!ELEMENT textlist (#PCDATA)> <hr> <a name='index_dtd'/>
<!-- Defines a document which contains a list of available catalogs. --> <!ELEMENT index (catalog*)> <!ATTLIST index defaultcatalog CDATA #IMPLIED > <!-- This document specifies some meta-information about each of the catalog. Note that provide it here primarily so that we don't have to parse each of the catalogs to get it. name: Unique identifier for the catalog; key for CatalogManager.getCatalog() file: Path to catalog file, relative to index file. encoding: Type used for InputStreamReader used to read the catalog file. charset: Not currently used. contenttype: If specified, this value is set on the ServletResponse for pages which output text from this catalog. locales: Comma-separated list of locales (as provided in the 'Locale' HTTP request header) for which the given catalog should be used. --> <!ELEMENT catalog (locale*)> <!ATTLIST catalog name CDATA #REQUIRED file CDATA #REQUIRED encoding CDATA #IMPLIED charset CDATA #IMPLIED > <!-- country as specified at http://www.ics.uci.edu/pub/ietf/http/related/iso639.txt langauge as specifed at http://userpage.chemie.fu-berlin.de/diverse/doc/ISO_3166.html --> <!ELEMENT locale EMPTY> <!ATTLIST locale country CDATA #REQUIRED language CDATA #REQUIRED >
|
Documentation is available at http://download.oracle.com/docs/cd/E13222_01/wls/docs81b |
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |