Free Sample
+ Collection

OpenCms 7 Development

Dan Liliedahl

Extending and customizing OpenCms through its Java API
RRP $26.99
RRP $44.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781847191052
Paperback292 pages

About This Book

  • Targets version 7 of OpenCms
  • Create new modules to extend OpenCms functionality
  • Learn to use the OpenCms templating system


Who This Book Is For

The book is for Java developers with a basic knowledge of the operations of OpenCms. No previous experience of developing OpenCms is expected.

Table of Contents

Chapter 1: Overview
The Site Design
Required Developer Skills
OpenCms Application Overview
Chapter 2: Developing in OpenCms
Developing Basic Site Content
Setting Up an Environment for Creating JSP Code
Setting Up an Eclipse Environment to Build OpenCms
Setting Up an Eclipse Environment without Building OpenCms
Chapter 3: Our First Module
Understanding OpenCms Modules
Common Module Types
Module Events
Exporting and Importing Modules
Creating a Module
Structured Content Types
Chapter 4: Developing Templates
Review of the Page Layout
Templates in OpenCms
The Content and Template Loading Process
Expressions in JSP Templates
Accelerating Template Development Using WebDAV
Chapter 5: Adding Site Search
A Quick Overview of Lucene
Configuring OpenCms Search
Writing the Search Code
Chapter 6: Adding User Registration and Comment Support
Understanding OpenCms Security
Setting up Security for Our Site
User Login and Registration Code
Adding Comment Support
Chapter 7: Providing Site Customization Features
What is RSS?
Creating the Module
The RSS Client Code
Displaying the RSS Feed in the Template
Adding User Preferences to Accounts
Updating the Java Code
Updating the JSP Templates
Hooking up the Account Management Page
Chapter 8: Extending OpenCms: Developing a Custom Widget
Designing a Custom Widget
Designing the Widget
The Widget Code
Registering the Widget with OpenCms
Chapter 9: Extending OpenCms: Adding RSS Feed Support
RSS Feed Design
The RSS Feed Content Type
Creating a Supporting Widget
The RSS Feed Template and Java Classes
Content Wrapper Java Classes
Wrapping It Up
Chapter 10: Extending OpenCms: Adding an Administration Point
Administrative Points
The Administration View
Hooking the Administration Point Up to the Module
The RSS Administration Module

What You Will Learn

  • An overview of the OpenCms development architecture
  • Developing in the OpenCms environment
  • Working with the templating system
  • Using the template API
  • Extending and using OpenCms beans in template code
  • Using the JSTL tag library
  • Template caching
  • Understanding resource collectors
  • Understanding and creating OpenCms modules
  • Creating structured content types
  • Rules for creating OpenCms schema files
  • Registering content types with OpenCms
  • User Interface Widgets and their options
  • Nesting content types
  • Using Validating XML editors to edit configuration files
  • Using Eclipse and WebDAV for module development
  • Configuring OpenCms Search
  • Looking at search indexes
  • Supporting searching in templates
  • Understanding OpenCms security
  • Adding user registration and web user logins
  • Programmatic publishing of content
  • Providing site customization features
  • Designing and creating Custom OpenCms widgets
  • Using OpenCms message strings for localization
  • Adding RSS support to OpenCms
  • Adding OpenCms Administration Points
  • Using OpenCms List and Dialog classes
  • Programmatically using OpenCms widgets

In Detail

OpenCms is a professional-level open-source Website Content Management System, based on Java and XML. Many companies or organizations have requirements that go beyond what is available in the standard OpenCms application. Thankfully, OpenCms can be used by Java developers to create sophisticated add-ons and customizations that extend the power of OpenCms in virtually unlimited directions.

Targeting version 7 of OpenCms, this book is for Java developers interested in extending and further customizing OpenCms through its Java API.

Starting by showing how to set up a development environment for OpenCms work, the book moves you through various tasks of increasing complexity. Some of the common tasks covered are building OpenCms, XML asset type development, templating, module development, user and role setup, and search integration. In addition to these common tasks some more advanced topics are covered such as self-registering users, RSS support, developing custom widgets and extending the administrative interface. All the topics include examples and are presented while building a sample blog site.

The skills you develop will make you an OpenCms developer to be reckoned with!


Read More