Project Docbook CMS.

Implement a Vaadin based mini CMS managing Docbok 5 (not Docbook 4!) document instances. The XMLmind editor allows for easy editing of such documents. Consider the following example screenshot:

Figure 945. Editing a Docbok 5 document using the XMLMind editor. Create comment in forum
Editing a Docbok 5 document using the XMLMind editor.

The underlying XML code mirrors some relevant meta information:

<book version="5.1" xmlns="http://docbook.org/ns/docbook"
              ...
  <info>
    <title>Project summer 2016</title> 
    <author>
      <personname><firstname>Martin </firstname><surname>Goik</surname></personname> 
      <affiliation>
        <orgname>HdM Stuttgart</orgname> 
      </affiliation>
    </author>
    <pubdate>2.5.2016</pubdate> 
  </info>
  <chapter>
    <title>Introduction</title>
    <section>
      <title>Starting <productname>Vaadin</productname></title>
      <para>More work to be done!</para>
    </section>
  </chapter>
</book>
Document meta data:

The document's main title

The author's name and surname

The author's affiliation

Date of publication

Desired functionality:

  • User self registration by choosing a unique email and password.

  • Uploading of Docbok 5 single file instances to a Mysql database thereby extracting relevant meta information to be stored along with the document.

  • Document search facility by author ownership or meta data (may be overlapping).

  • Deletion of document instances.

  • n:1 relationship between document instances and corresponding owners.

  • Checkout (download) of instances to the local file system.

  • Use JPA rather than plain JDBC. You may as well use the Vaadin JPA container.

  • Optional plus: On the fly generation of PDF using XSL-FO based on the Docbok 5 style sheets using Apache FOP.

Implementation based on the Vaadin UI framework.