Description
Content Management Portlet is developed for uPortal to allow authorized users to administer content remotely. Using this portlet, content authors can remotely edit and publish content independently, and pull in and share existing data and re-purpose it according to different needs. Project supports multiple languages and further allows decoration of content with graphics, links, and templates.
Features
- Portlet will support two user categories: authors and viewers who publish and view content respectively.
- Author shall use WYSIWYG editor to produce content.
- All content will be checked and validated for XSS security issues, before any is published.
- Portlet can be customized to use languages other than English, as set by the Portal.
- Authors currently are able to insert images, links and smiley icons into the content.
- WYSIWYG editor shall provide navigational and keyboard support for users with disabilities.
- Portlet adheres to the portal theme and style.
- Allow authors to choose templates for content.
- Ability to upload multiple attachments along with the post.
Planned Features
- Scan uploaded files using AntiVirus software. (i.e. ClamAV)
- Allow a post to be rated by viewers
- Incorporate Apache Chemistry along with support for OpenCMIS
Tools & Dependancies
- Role configuration (author/viewer) is done within the portal itself.
- Portlet follows the JSR 168 Portlet specification, supported by the Spring Portlet MVC framework.
- All published content is stored inside the Java Content Repository (JCR) supported by the JSR 170 specification with the implementation provided by Apache Jackrabbit.
Spring framwork JCR extensions are employed to communicate with the repository. - Apache Velocity is used to render the portlet user interface pages, while JSP implementation of the UI can easily be swapped.
- Portlet content is cached by the distributed Ehcache framework.
Screenshots
Deployment
Requirements
- uPortal (3.2.2, 3.2.4)
- Apache Maven (2.2.1, 3.0)
Note: uPortal Quick Start is preferred, since it contains the necessary deployment tools and dependencies.
Source Code
Project source code is available at : https://source.jasig.org/portlets/ContentManagementPortlet/. You may use your favorite SVN client to download the latest version.
Build
Build Instructions
The instructions below are for the Windows operating system. You may need to adjust the paths and the Maven build script according to your platform of use.
- Before the build, please make sure the environment variable "CATALINA_HOME" is pointed to the tomcat directory inside your uPortal instance. (i.e "c:/uPortal-3.2.4-quick-start/apache-tomcat-6.0.24/").
The build process uses this directory to move the WAR application file and prepare it for deployment. - On the command-line, use the following command to build the portlet WAR application file:
<path-to-apache-maven-directory>/bin/mvn.bat -f <path-to-your-workspace-directory>/ContentManagementPortlet/pom.xml
Once the build is successful, you should be able to browse to the "CATALINA_HOME/webapps" and find the "ContentManagementPortlet.war" application file.
Binary Distribution
The latest binary distribution of the portlet application can be downloaded via the Sontatype's Releases repository available here.
uPortal Portlet Registration
A number of key elements are specified below that should be carefully configured during registration:
- Select the channel type to be Portlet
- Allow the channel timeout value to be 5000
- Allow both Edit and Help modes
- Make sure "Framework Portlet" is set to false
- For "Portlet Web Application Path", enter: /ContentManagementPortlet
- For "Portlet Name", enter: ContentManagementPortlet
Additional Help
The HELP mode of the Content Management Portlet provides a list of Frequently Asked Questions. While the default configuration of the portlet should run out of the box, thist list address issues like data reopsitory management, content security checks, internationalization and additional preferences. Please review the FAQ page for more info. This list will be frequently updated with aditional information on portlet setup and configuration of new features.
Report Bugs
If you have encounted an issue with the portlet, please submit an entry here: https://issues.jasig.org/browse/INC-15