explicanto by Beck et al. Services GmbH > explicanto Open Source Project



explicanto Open Source


explicanto is a integrated E-Learning, Knowledge Management and Knowledge Distribution Platform.

explicanto helps to capture, transform and distribute knowledge in a quick, efficient and organized way. This is performed independently of time and place.

The Closed-Loop feedback process allows for monitoring of the critical success factors in knowledge delivery and acceptance.

It consists of two Java-based product components:

  • Client-Server based Authoring Platform - Java Rich Client (based on eclipse RCP) and a Java Server (Java EE, Web Services, JDBC/ RDBMS)
  • Web based Distribution Platform - Java Server (Java EE, Portlets, JDBC/ RDBMS)

explicanto has been developed by Beck et al. Services GmbH.

explicanto and the explicanto logo are registered trademarks of Beck et al. Services GmbH.


  • A simple product with versatile means for implementation
  • High acceptance because of its user-friendliness
  • Knowledge: collected only once, unlimited utilization
  • Optimum effect through its performance monitoring system

explicanto's Mission Statement

A company’s success greatly depends on one factor: Knowledge.

It is vital that employees properly understand internal processes and applications to work efficiently. They need accurate and in-depth information about the company’s products so that the best possible business success can be achieved. Only with sufficient know-how will they be able to provide high-quality service. By following this principle, any company with an efficient knowledge exchange and training will always be one step ahead of the competition.

However, this challenge is enormous: New competitors are constantly entering global markets. Product life cycles are becoming shorter. Laws are continuously changing. Thus, if a business wants to overcome today’s challenges, it will need to implement an efficient knowledge transfer process.

Know-how transfer should not become a one-way process. It is important to ensure that information is understood correctly. The costs and benefits of investing in a sufficient knowledge transfer process must be measured continuously.

What is a Best-Practice for turning the success factor knowledge into performance?

explicanto will provide the solution. It is designed to elevate knowledge to the optimum, and is customized to meet your exact individual business needs.

explicanto helps to capture, transform and distribute knowledge in a quick, efficient and organized way. Moreover, this is performed independently of time and place.

The Closed-Loop feedback process allows for monitoring of the critical success factors in knowledge delivery and acceptance. Therefore, explicanto will ensure that your business remains competitive.


Fast collection

The experts in each department (editors) can easily and quickly collect, transform and update their knowledge. To achieve this, they neither require programming knowledge nor do they need to staff external specialists. Content that has already been collected (e.g. office documents, videos and illustrations) is easily integrated.

Efficient teamwork

Teams and individuals can prepare information at the same time, unrestricted by time and location. To-Do lists, Status Tracking and Notifications provide transparency. Automated processing steps result in efficient teamwork.

Central availability of knowledge

All information is consolidated and stored in a central database. Didactic structures and templates support this preparation. Changes within the central database can be performed with the push of a button regardless of the delivery medium, and are instantly available through all distribution channels.

Customized delivery medium and information channels

The prepared content can be adapted into a multitude of formats – from PDF, Flash or Java files to HTML and Handhelds. This makes it possible to focus on the most diverse communication channels – whether it be presentations, manuals, classroom- or online-training.

Very user-friendly

Relevant information is available to each target group in a concrete format. It is quick and easy to access and can be used at any time. The content is visually appealing and is didactically prepared. explicanto takes the individual user needs into consideration. This provides for user satisfaction.

Goal-orientated communication

explicanto helps to prevent the accumulation of unnecessary content. Users are able to provide their individual input about which knowledge areas they perceive to be the most relevant. They are informed of new or changed content automatically. This enables users to receive up-to-date information for any topic of their choice.

Optimizing Knowledge Management through feedback

Learning content must not only be distributed, but understood as well. Through reports and other feedback channels, the editor is able to monitor the extent to which the individual user has understood the provided information. Comments and suggestions for further improvement that users contribute continuously optimize this central knowledge database.

Easy to expand

explicanto can initially be used on a small scale, and if desired can be expanded later. Thus, explicanto can be adapted depending on the company’s growth.

High security measures

explicanto has adopted very reliable security measures. Only authorized people are allowed to view and change content. A state-of-the-art encryption technology ensures secured transmission – even beyond the company’s internal network.

Future-proof solutions

explicanto exclusively uses future-proof technology (e.g. Java Enterprise Edition), which is independent of specific platforms. Therfore, the long-term use of investment is ensured.

Use Cases


Successful selling requires an excellent information management system. Even before market entry, your explicanto experts prepare their individual knowledge whether it be product details, sales strategies or pricing queries. This knowledge information will then be communicated to all sales personnel and sales partners.

At the same time explicanto provides necessary Kick-Off material, which includes presentations as well as online-training courses, available within a company’s internal network or over the internet. If customers require more specific product information, it can be found on your CD. Updating knowledge is easy, since all information is stored in a standardized database. Monitoring performance can be performed while using explicanto. Due to these features, it is guaranteed that all information is up-to-date and properly formatted.

Customer Support and Service

Customer Service is focused on increasing customer satisfaction and at the same time reducing cost per case. explicanto can put both of these goals into practice. explicanto facilitates further training of internal and external employees at no extra cost. New employees can be trained most efficiently. If operations are outsourced, explicanto will ensure that the business partner is sufficiently qualified to achieve the expected quality standards. The Closed-Loop feedback system enables monitoring of these processes. A further advantage: The necessary service know-how is not distributed amongst various contacts, but is consolidated and always available.

IT department

In a business environment, changes are constantly taking place within the IT department, from introducing new software to updating existing applications. It is therefore vital that employees continuously expand their knowledge. Even before implementing changes, the required knowledge can be collected using explicanto.

Following this scheme, it is possible to efficiently train users before and during an introduction phase. For every setting the most appropriate method can be used, either through classroom- or online-training. Updates are collected and communicated efficiently within the system. Since access to this knowledge reservoir is permanent, workers will always receive guaranteed support. Solutions for frequently recurring problems are immediately recorded with the help of explicanto and are available to all users. Therefore, the optimum benefits of new software or processes can be taken advantage of.

Human Resource Management

Communication of internal and external regulations results in a need for training and in particular the training of new employees. A comprehensive information management policy contributes enormously to increasing employee satisfaction and motivation levels. It also contributes to cost reduction. explicanto offers a valuable solution to reduce costs: It provides a knowledge store which can be used for any type of training – whether it be basic information concerning the operational workflow, or regulations for responsible actions. Updating can be done in real-time and communicated immediately. The sustainability of these measures can be monitored via reports and learning tests.


Industry/ Engineering

Increase in sales efficiency and service quality through multimedia-based product information.

Service Management

Successful implementation of service management processes (ITIL,COBIT) through project-related information, communication and training.

Financial Services

Increase in agent commitment and sales efficiency through prompt and concentrated knowledge transfer to the point-of-sale.

Defense & Security

Meet the challenges of global security policy through permanent exchange of and access to up-to-date knowledge.

Developer Documentation

explicanto Documentation

The explicanto Developer documentation is organized according to the product components:

  1. Authoring Platform
    • Authoring Server
    • Authoring Client
  2. Distribution Platform
    • Distribution Server

Authoring Platform

explicanto Authoring Platform Documentation


The Explicanto Authoring Platform is a client/server system composed from the Explicanto Server and the Explicanto Authoring Client. In order to start the system you will need:

  • A JRE 1.5 (or higher)
  • A Tomcat 5.0.30 (or higher) distribution for the Explicanto Server. The server is a web application deployed as a WAR file and runs inside the Tomcat container
  • A relational database (Postgres, Mysql) for the Explicanto Server.
  • Eclipse 3.1 (or higer) IDE. This is required in order to build the client. For the server you will need ant. The client is build around RCP from Eclipse and you will have to use Eclipse to import and build it.

You can fetch and build the server and the client in any order but the recommanded method is to build and run the server first and to build the client last. This is because the client communicates with the server using a web-service and the dependent classes should regenerate after the server is started. The current distribution includes the generated code against the latest version of the server and you should have to problem in using it. If there are changes made on the server then the client code has to be regenerated.

explicanto Authoring Platform Client Documentation

How to build the Explicanto Server

The Explicanto Server is generated from several source libraries. Each library is available as an Eclipse project on the svn and should be imported into the Eclipse workspace. After the import is complete and you add the external libraries you can use the Ant script to build the server project.

A build of the server will result in a war file that should be uploaded into a Tomcat distribution. You need to have Tomcat 5.0.30 or higher installed. (It is possible the server will run on different application servers but this has not been tested yet - we are happy to put here additional information for various configuration if you succeeded in working with them).

The first step is to fetch all the projects from the trunk/authoring/server folder in svn repository. The projects to be obtained are:

  • Libraries
  • Deploy
  • Bea Environment
  • Bea Util
  • Vidya Base
  • VidyaCommon
  • VidyaServer

Even if the order does not matter it is best to start with the Libraries to be able to fill in all the dependencies. The external jars will be distributed in several places:

The workspace and projects should look like in the folowing images (libraries from all the folders are automaticaly added to the project's build path):

To build the explicanto server, there is an Ant script in the Deploy project that should be used.
The folowing steps must be covered to perform the build:

  1. In the build.xml file from the Deploy project set the value of the workspacehome property to the location of youre eclise workspace. Also the JAVA_HOME evironment variabile must be set.
  2. Create an Ant Build run configuration from Run->External Tools
  3. In the run configuration select the build.xml file from the Deploy projects as the buildfile
  4. In the targets tab of the run configuration select the folowind targets in the given order: prepare, compileWebservice, cleanup
  5. In the VidyaServer/xpcdb.properties you have to set the database connection settings
  6. In the VidyaServer/explicantoServer.properties you can set the course export information. Set the course_target_location to the ROOT/Courses folder of you're using the Tomcat instalation.
  7. Run the ant configuration
  8. Deploy the war file into your Tomcat. The war file can be found in the Deploy/build/explicanto folder

Before running the server you will have to create a database. You can select a mysql or postgresql server and use the database creation scripts from the Deploy/tools folder. After you create the database you should initialize the data and update your xpcdb.properties file with the database location and connection credentials.

Database setup

For the database you can choose between mysql and postgresql. Both databases are fully supported and have creation scripts. In order to create a new database you have to:

  1. Install or start the database engine
  2. Create a new user named xpc_user with the password xpc_pwd (of course you can choose any username or password you wish, this is only an example!)
  3. Create a new database named xpcdb with the xpc_user having full rights (ownership)
  4. Run /Deploy/tools/database-clean-db.sql script (database is mysql or postgresql)
  5. Run /Deploy/tools/createInitialContent.sql
  6. Run /Deploy/tools/settings-database.sql
  7. Run /Deploy/tools/initial.sql
External Libraries

Dependencies for the project Libraries:

Dependencies for the VidyaServer/CourseTransformator/WEB-INF/lib folder:

Dependencies for VidyaServer/ServerLibraries:

Depedencies for the VidyaServer/ServerLibraries/climp:

  • axis.jar
  • climp.jar - This jar can be found in this folder. It comes with the distribution an it is optional. If it is not added to the server than an error will be shown when an course export is started with climp enabled.
  • FTPProtocol.jar
  • ibmjsse.jar
  • jdom.jar
  • roster.jar

Dependencies for the VidyaServer/ServerLibraries/reports folder:

Please pay attention to the libraries names - usually they are without numbers and are referred like that from the projects. If you are using a library with version numbers then you can either remove it or update the project (locally).

Common Build Problems

If the workspace shows errors in all the projects except Libraries and Deploy then you should do the folowing:

  1. Remove Bea Environmet, Bea Util, VidyaBase, VidyaCommon, VidyaServer projects from the workspace WITHOUT removing them from the filesystem. Select DO NOT DELETE CONTENT in the message box that appears when you try to delete.
  2. Import them back again from the current workspace using Import->Existing Projects Into Workspace
  3. Perform a full workspace rebuild

Make sure that the Java compiler lever is set to 1.4 or higher to avoid errors coming from the assert keyword. (there are present in the Bea Util project)

  • Specify for each library a minimal version and how to get it
  • Specify a build from the sources, with regeneration of the model objects
  • Write a hacking howto
  • Eliminate dependencies (integrate into code)
  • Howto sign with your own keystore/certificates

explicanto Authoring Platform Server Documentation

How to build the Explicanto Client

To build the Explicanto Authoring Client you have to cover the folowing steps.

Fetch the project from explicanto svn (trunk/authoring/client/ExplicantoClient)

The explicanto Authoring client is a RCP (Rich Client Plaform) application developed using Eclise IDE and you need to have Eclipse 3.1 (or higher) installed in order to build it. You can download it from External ref

ATTENTION! The ExplicantoClient it is NOT compatible with any Eclipse version above 3.1.1. If you wish to run it on newer versions you'll have to do some changes in the code (no support offered yet).

Import the ExplicantoClient project into the eclipse workspace.

All the necessary external libraries must be added. If you already have the server dependencies then most of them are already present. These have to be copied into the lib folder of the project and are the folowing:

Additionaly you will need the xored library used to edit html content. It can be requested from xored.com. Currently the website is under construction, the link will be updated asap. You will have to copy the files into your Eclipse's features and plugins folders and restart Eclipse.

If all these libraries don't appear in the project class path then they must be manually added using Java Build Path of the projects properties. The folowing screenshot shows how the libraries should look like:

In the root of the project there is the explicanto.properties file witch contains the address of the Explicanto Server. Modify this for the server's location

You can run the Explicanto Client with Run->Eclipse Applicantion feature or you can export the project with Export->Deployable plugins and features and run it externaly

  • Specify for each library a minimal version and how to get it
  • Explain ExplicantoClientFeature usage (optional, for webstart)
  • Write a hacking howto

Distribution Platform

explicanto Distribution Platform Documentation


The explicanto Distribution Server is the component used to expose the courses to the learners (end users) and to receive feedback from them. The course distribution and management is done using portlets () which can be embedded in any portlet container.

The basic explicanto implementation is using Liferay portal for running the portlets.

explicanto Distribution Platform Server Documentation

How to build the explicanto Distribution Server

Prerequisites – Before the BEAS-explicanto software can be installed, you must install the prerequisites software described below.

New Installation – Once the additional products are installed, you can install and configure the BEAS-explicanto software.


BEAS-explicanto requires the following products to work properly:

  1. 1.Java2sdk 1.4.2_07 – you can download a version of this package from http://java.sun.com
  2. 2.Jakarta ant-1.6.2 – you can download a version of this package from http://jakarta.apache.org
  3. 3.Liferay 3.2.0+tomcat edition – you can download a version of this package from http://www.liferay.com/cms/servlet/HOME-INDEX
  4. 4.PostgreSQL 8.0.1 – you can download a version of this package from http://www.postgresql.org
  5. 5.The PostgreSQL JDBC driver pg74.215.jdbc3.jar – you can download a version of the package from http://jdbc.postgresql.org/download.html#jars

You must follow the steps:

  1. Install java2sdk (i.e. c:/j2sdk-1.4.2_07). Set JAVA_HOME variable to root installation folder.
  2. Install Jakarta ant-1.6.2 (i.e. c:/ant-1.6.2). Set ANT_HOME variable to root installation folder.
  3. Set up your path to include %ANT_HOME%\bin and %JAVA_HOME%\bin.
  4. Install PostgreSQL with the default options.
  5. Install Liferay-3.2.0+tomcat (i.e. c:/liferay-3.2.0). Set LIFERAY_HOME variable to root installation folder.
New Installation

Download the explicanto-pack project from the SVN repository. This will be the EXPLICANTO_HOME from now on.

This archive contains.

  • EDS, this will be the EDS_HOME
  • PORTLET, this will be PORTLET_HOME
  • YAWIKI, this will be YAWIKI_HOME
  • The etc folder from EDS, PORTLET and YAWIKI contains the configuration files for deploying the applications
  • The build.properties file
  • The build.xml file

Create two databases in PostgreSQL, ‘lportal’ and ‘explicanto’, both should be created on the same DB Server.

Create an user in PostgreSQL to use to give liferay so it can access the databases.

You must set your JAVA_HOME in the LIFERAY_HOME/bin/Catalina.bat file (i.e. SET JAVA_HOME=c:/j2sdk-1.4.2_07).

Go into the LIFERAY_HOME/conf/Catalina/localhost (change the localhost with whatever host you set up for Tomcat, if you do) and make the necessary changes in the liferay.xml file (url, driver class, username, password).

Library Dependencies

There are several jar that have to be copied into different folders:

Into the EDS_HOME/Web-Inf/lib folder (create it if it doesn't exist):

Into the PORTLET_HOME/Web-Inf/lib folder (create it if it doesn't exist):

Into the YAWIKI_HOME/Web-Inf/lib folder (create it if it doesn't exist):


There are different properties files that have to be modified:

In the EXPLICANTO_HOME folder there is the build.properties config file which contains different properties that have to be set to reflect you're local file system. Here you must set the folowing properties

  • deploy.path
  • eds.tomcat.contexts.path
  • wiki.tomcat.contexts.path
  • eds_portlet.tomcat.contexts.path
  • tomcat.conf.context
  • liferay.lib.ext
  • psql
  • psql.username
  • psql.password
  • psql.database

In the EDS_HOME folder there is a explicanto-system.properties file which has to be modified to reflect your database setings

Also in EDS_HOME/etc and PORTLET_HOME/etc folder there are log configuration files log4j.properties which can be modified to change the log level (INFO, DEBUG, etc).

Run ant full-deploy from the EXPLICANTO_HOME folder - this will create the explicanto database tables (explicanto database must be created and empty before running this task), it will restore the lportal database (lportal database must be created and empty before running this task) and then it will deploy the apps, and copy the need it jars in the liferay lib directory.

Attention, the files from the repository are from a Linux deployment, you should change them for a Windows one.


Start LIFERAY – from the LIFERAY_HOME/bin/startup.bat.

Now the installation is finished and you can start the application. Open Internet Explorer browser and open the following URL: http://youraddress:yourport.

The application will start and the main page should be displayed. Login in the explicanto Administration portlet with automatically created test account: username=a and password=a.

Site Features

Site Linkmap Table of Contents

This is a map of the complete site and its structure.

  • explicanto Open Source  ___________________  site
      • About  ___________________  about
          • Overview  ___________________  overview : Welcome to explicanto Open Source
          • Mission Statement  ___________________  mission_statement : Knowledge – the true success factor
          • Benefits  ___________________  benefits : 10 Reasons for using explicanto
          • Use Cases  ___________________  use-cases : 10 Reasons for using explicanto
          • Solutions  ___________________  solutions : explicanto Solutions
      • Developer Documentation  ___________________  documentation : explicanto Developer Documentation
          • Index  ___________________  index : explicanto Documentation
          • Authoring Platform  ___________________  authoring-platform : Developer Documentation for the explicanto Authoring Platform
              • Overview  ___________________  index : Overview
              • Authoring Server  ___________________  server : Developer Documentation for the Server of the explicanto Authoring Platform
              • Authoring Client  ___________________  client : Developer Documentation for the Client of the explicanto Authoring Platform
          • Distribution Platform  ___________________  distribution-platform : Developer Documentation for the explicanto Distribution Platform
              • Overview  ___________________  index : Overview
              • Distribution Server  ___________________  server : Developer Documentation for the Server of the explicanto Distribution Platform