|
||||||
PREV NEXT | FRAMES NO FRAMES |
See:
Description
Packages | |
---|---|
org.opencms.cache | Implementations of specialized caches used in OpenCms. |
org.opencms.configuration | Reads and writes the XML based OpenCms configuration files. |
org.opencms.db | Low-level database connection and access functionality. |
org.opencms.db.as400 | AS400 implementation of the OpenCms database connector. |
org.opencms.db.db2 | DB2 implementation of the OpenCms database connector. |
org.opencms.db.generic | Generic (ANSI-SQL) implementation of the OpenCms database connector. |
org.opencms.db.hsqldb | HSQLDB implementation of the OpenCms database connector. |
org.opencms.db.mssql | MS SQL implementation of the OpenCms database connector. |
org.opencms.db.mysql | MySQL4+ implementation of the OpenCms database connector. |
org.opencms.db.oracle | Oracle9+ implementation of the OpenCms database connector. |
org.opencms.db.oracle8 | Oracle8 implementation of the OpenCms database connector. |
org.opencms.db.postgresql | PostgreSql implementation of the OpenCms database connector. |
org.opencms.file | This important package provides the methods to access the OpenCms VFS repository with the permissions of an authenticated user. |
org.opencms.file.collectors | Collectors allow to gather lists of OpenCms resources from the OpenCms VFS using specific rules. |
org.opencms.file.history | This package contains the classes to deal with the OpenCms VFS history archive. |
org.opencms.file.types | The implementations of the core resource types for the VFS are located here. |
org.opencms.file.wrapper | This package contains classes and interfaces used to access OpenCms through a wrapped
CmsObject . |
org.opencms.flex | Provides low-level JSP integration funtionality for OpenCms, also implements the FlexCache, a declarative parameter-based cache. |
org.opencms.i18n | Classes to handle internalization (i18n) and locale selection in OpenCms. |
org.opencms.importexport | Contains functions to import and export resources from the OpenCms VFS. |
org.opencms.json | Classes to create JSON objects and arrays for JavaScript in OpenCms. |
org.opencms.jsp | The implementation of the OpenCms JSP tag library, with some additional utility classes to help in JSP scriplet code and navigation building. |
org.opencms.jsp.decorator | HTML postprocessor, used to tag single words or phrases in the HTML output. |
org.opencms.jsp.parse | API classes for the <cms:parse> tag. |
org.opencms.jsp.util | Utility classes to be used for JSP pages. |
org.opencms.loader | Low-level functions to manage the loading of resources from the OpenCms VFS. |
org.opencms.lock | The lock state of the resources in the VFS is handled with these classes. |
org.opencms.mail | Provides utility classes to generate email messages using the OpenCms email configuration. |
org.opencms.main | Provides the main OpenCms "operating system". |
org.opencms.module | OpenCms modules provide a powerful, standardized way to extend the core OpenCms functionality. |
org.opencms.monitor | Contains functions to monitor the OpenCms system status. |
org.opencms.newsletter | Contains classes to distribute newsletters. |
org.opencms.notification | Contains classes for the automatical notification of outdated, expiring or released content. |
org.opencms.publish | Classes to handle the OpenCms publish process. |
org.opencms.relations | Classes to represent and validate the internal and external links/relations of resources in the OpenCms VFS. |
org.opencms.report | Classes used to generate the OpenCms reports, which are displayed during publish, import, export etc. |
org.opencms.repository | Package contains all classes and interfaces needed to create or use a repository to access the resources in the VFS. |
org.opencms.scheduler | The OpenCms scheduler provides a facility to run jobs in a regular schedule, much like the "cron" faciltiy in UNIX systems. |
org.opencms.scheduler.jobs | Some predefined implementations for often used scheduled job tasks. |
org.opencms.search | Implements the main full text search and indexing functions available in OpenCms. |
org.opencms.search.documents | Handles indexing different sorts of document and resource type from the OpenCms VFS for the full text search. |
org.opencms.search.extractors | Contains a generic, low-level framework for extration of plain text content out of various popular file formats. |
org.opencms.search.fields | These classes control the mapping of the OpenCms content to the Lucene search fields. |
org.opencms.security | Access control and security classes for the OpenCms ACL permission system. |
org.opencms.site | Provides access to the multi-site configuration of OpenCms. |
org.opencms.staticexport | Contains the functionality for the static HTML page export. |
org.opencms.synchronize | Classes used to synchronize the OpenCms VFS with the real file system. |
org.opencms.util | Utility functions for String manipulation and other often used tasks. |
org.opencms.webdav | Provides a WebDAV access to OpenCms. |
org.opencms.widgets | Contains the widget implementations, these are GUI elements used in editors and dialogs of the OpenCms workplace. |
org.opencms.workplace | The base classes for the OpenCms Workplace (standard dialog, tab dialog, report based dialog) and the Workplace configuration classes are located here. |
org.opencms.workplace.commons | Contains often used OpenCms Workplace dialogs, for example for file operations, user preferences and project based operations like publishing. |
org.opencms.workplace.comparison | Contains OpenCms Workplace dialogs to compare OpenCms Xml Documents. |
org.opencms.workplace.editors | Base classes for the editors (WYSIWYG, plain text, XML content) used in the OpenCms Workplace. |
org.opencms.workplace.editors.directedit | Used to control the generation of the HTML for the "direct edit" buttons. |
org.opencms.workplace.explorer | Contains the functions that generate the Workplace "Explorer" view, also contains the "New resource" wizard. |
org.opencms.workplace.explorer.menu | Contains the functions that generate the Workplace "Explorer" context menu entries. |
org.opencms.workplace.galleries | Contains the various "Galleries" which are available in the editors and widgets of the OpenCms Workplace. |
org.opencms.workplace.help | Generates online help available in the OpenCms Workplace. |
org.opencms.workplace.list | Generates the list views commonly used in the OpenCms Workplace "Administration" tools. |
org.opencms.workplace.search | Contains classes for the workplace search tool. |
org.opencms.workplace.threads | A collection of thread classes that are used in the OpenCms Workplace, usually in connection with a report. |
org.opencms.workplace.tools | Contains the base classes for implementing a tool in the OpenCms Workplace "Administration" view. |
org.opencms.xml | Basic XML functionality and utilities used by OpenCms to maintain XML documents and content. |
org.opencms.xml.content | Contains functions for structured content storage using XML, commonly called "XML content" in OpenCms. |
org.opencms.xml.page | Contains functions for unstructured content storage using XML, commonly called "XML pages" in OpenCms. |
org.opencms.xml.types | Contains the basic XML content type definitions, used for XML content and XML pages. |
This is the API description for the OpenCms core, please read the introduction below to learn about the packages and functions of the API that are intended to be used in OpenCms application development.
The OpenCms API contains several building blocks:
Not all packages defined in this API are considered "end user" API functions.
For example, to access the OpenCms repository you should use an initialized instance of the
class, and never access the database directly with SQL.
So the database functionalities in the CmsObject
org.opencms.db
package are
"low level" functions, used by the classes in the org.opencms.file
package
but usually not directly by an application.
Here are some basic pointers that should help you to identify important parts in this API documentation that are usually required in OpenCms application development:
You should start with the template functions provided in the org.opencms.jsp
package.
This contains the OpenCms <cms:>
taglib, as well as the
(for use with scriptlets).
These allow you to easily access the current users CmsJspActionElement
from a JSP,
and with this you can dynamically build OpenCms front end applications based on the users permissions.
CmsObject
For easy template navigation building, check out the methods
.
You can build full-blown OpenCms applications with the functions from the CmsJspNavBuilder
org.opencms.jsp
package
and never bother about the rest of the API.
After you have mastered the basics of template development, you should take a closer look at the objects in the
org.opencms.file
package. These object are the "building blocks" for OpenCms applications,
and it certainly helps to understand these in greater detail before moving on to more complex OpenCms applications.
As already mentioned, the
is probably the most important class there.
CmsObject
In case you want to use certain OpenCms "operating system" features, use the
singleton to
gain access to the low level manager classes that handle the system runtime.
OpenCms
The org.opencms.module
package contains the OpenCms module API.
You do not usually need to "program" a module because a module is most often created using the OpenCms Workplace.
However, in case you want to trigger certain module life cycle events, have a look at the
interface.
I_CmsModuleAction
There are a couple of utility functions worth to mention here:
In case you want to send emails from your application, check out the org.opencms.mail
package.
You can schedule recurring operations in OpenCms by implementing the
interface.
I_CmsScheduledJob
OpenCms runs as a multi tier application.
The database layer that contains the VFS is accessed only through the business logic provided by the
class.
This runs totally independent
of any servlet container, there is no database logic whatsoever in the "front end", for example the JSP templates.
Check the CmsObject
description to see how to access the VFS without a servlet container.
CmsShell
In normal operation, OpenCms runs as a servlet in a servlet container.
On the startup of the container, OpenCms initializes itself from the configuration provided in the XML files.
After the XML configuration has been read, a singleton instance of the
object provides access to all OpenCms functionality.
This OpenCms
singleton instance can be considered the "operating system" of OpenCms.
OpenCms
After the "operating system" is initialized and the
object is available,
all requests made to the OpenCms
are directly passed to this for authorization.
When a request is received, it's first authenticated to see which OpenCmsServlet
has made the request. If the user has not been authenticated so far, the CmsUser
object
is initialized with "Guest" user permissions.
With this user context, an instance of a CmsUser
is generated, and with that
a CmsRequestContext
is initialized.
This initialized CmsObject
then provides the "users context" for all access operations to the OpenCms VFS.
It can also be considered the "shell" of the user to the OpenCms VFS.
All access operations to the VFS are done through the CmsObject
, and
this means that all access operations automatically are done with the authenticated users permissions.
CmsObject
|
||||||
PREV NEXT | FRAMES NO FRAMES |