With Apache Jackrabbit, the content of the documents can be retrieved via Java API calls in many different ways from a variety of content repositories. Multiple data sources may be integrated into one presentation.
Add in Apache Tomcat, and you have JSP presentation capability. This adds another possible dynamic layer. A static version may be presented in the first phase.
The API for Jackrabbit is straight forward: Create a repository, connect, get the repository, and then get the data. The data may be a science fiction story in PDF format, a piece of sheet music, an mp3 file, or even information about all documents containing the word (string) “qbit” or “qubit”.
Further, I noticed the potential for the implementation of certain Enterprise Integration Patterns that would be cheap to implement and maintain.
One could read from one Content Repository (CR) and write to another utilizing nothing but Jackrabbit, if the CR is compliant with writes.
In a nutshell, with Jackrabbit, there are two levels of compliance – one that allows reads from the CR is the first level, and one that allows for the inserts and updates of the document into CR. Add in JSPs and you have remote read-write access utilizing a simple standard, and running in a relatively safe environment.
Add in open source, fully compliant Jackrabbit CR at each hub (Here a “hub” is any network-capable workstation or server that all other local workstations and PCs on can access), and the framework for a primitive, yet potentially very useful EAI messaging system are in place.
Next, one may swap in and out various open source components to meet the needs of the enterprise. This ability further expands the capabilities and usefulness. For example:
- Replace JSPs with internal standards for remote SOA.
- Replace Tomcat with the enterprise’s internal standard J2EE Application Server.
- Replace JSPs altogether with an API interface to the enterprise’s existing, already-paid-for third-party legacy EAI message bus or EAI tool (e.g. Tibco, iWay, .NET, …).
A CR is an excellent place to store useful data; usually in the form of very important, and often proprietary documentation. It is nice to have standard methods of documentation synchronization and exchange in place within an enterprise. A small business may take this concept a long way, and a large enterprise may integrate its CR systems so that all employees may have access to all documents, based on need rather than availability.