Directions for use of 4A Annotation Server

Table of content:


  1. Download and install NetBeans 7.0 to 7.3 All with GlassFish server 3.x
  2. Download and install MySQL database server
  3. Download 4A Annotation server from GIT repository
  4. Put downloaded server to your NetBeans projects directory (eg. ~/NetBeansProjects/ or c:\Documents and Settings\Administrator\Dokumenty\NetBeansProjects\) and open this project in NetBeans
  5. Before running server, Comet support must be enabled in GlassFish (in NetBeans click on Services tab in left panel -> Servers -> click to GlassFish by right mouse button -> Properties -> Enable comet support).
  6. To successfully start server on first attempt, you must copy Annotations/lib/Jena-2.6.4/lib/xercesImpl-2.7.1.jar to domain libraries directory in your GlassFish (eg. ~/glassfish-3.0.1/glassfish/domains/domain1/lib/). If you don't do that, server starts only each second attempt or randomly. If it crashes, you must stop GlassFish and run project again.
  7. For smooth function of 4A server administration interface, you must install the new version of the JavaFaces - copy (with rename and replace) Annotations/resources/JavaFaces/javax.faces-2.1.13.jar to modules directory in your GlassFish (eg. ~/glassfish-3.0.1/glassfish/modules/javax.faces.jar or if you have newer version of GlassFish ~/glassfish-
  8. Increase memory limits in ~/glassfish-3.0.1/glassfish/domains/domain1/config/domain.xml
      WARNING: There are two instances of each row above!!!
  9. Create database according to informations in Annotations/setup/sun-resources.xml or modify this file according to created database.
  10. Execute SQL statements from Annotations/resources/db/annotations.sql (almost empty database - you must log in to web interface and set up for annotating first) or from Annotations/resources/db/annotations_min_data.sql (minimal data for start testing with clients immediately).
  11. In /Annotations/src/java/cz/vutbr/fit/knot/annotations/app/ change SERVER_URI according to intended usage (it must exactly match with address set in the client - so client can not have if SERVER_URI is localhost).
  12. If you do not like to use our public semantic enrichment server, you can download the SEC API from GIT repository and put it to /var/sec. Download knowledge base and automatas using in the directory /var/sec/NER. Then run make in directory /var/sec/SEC_API and try to run ./ If it will fail, install dependencies (python packages), run make in subdirectories with Makefile etc. Running SEC API can be tested by
  13. Build and run server.
  14. Log in to the administration interface to initialize it (first log in is very slow - it can take minutes if SEC API is starting for the first time).

Latest NetBeans plugins

There is a problem with the latest updates of NetBeans plugins, after installing these updates you can't start 4A Server. I found that the problem is a newer version of the JSF that lacks some of the methods used in 4A Server. Here is solution of this problem (Basically we will install an older version of JSF):

  1. Switch the view of the Project in NetBeans.
  2. Find "Libraries" folder and "JSF 2.2" library in it.
  3. Remove "JSF 2.2" from "Libraries" folder.
  4. Right mouse button click on "Libraries" folder and clic on "Add Library".
  5. In Add Library form click on "Create ..." button and type name of new library (for example "JSF 2.1") and confirm.
  6. Now, select new library ("JSF 2.1" in my case) in "Avaible Libraries" menu and click on Add Library.
  7. Thats all, now you can run 4A Server.

Server interfaces

Interface for 4A clients

Web based user interface for users and administrators

Testing interface



User groups

Types of annotations

Upload ontology

Attributes From Ontology

Batch Rename and Comment Types of annotations and its attributes

Other server interfaces

Code documentation

License informations

© Faculty of Information Technology, BUT, Božetěchova 1/2,
612 66 Brno, Czech Republic
Tel.: +420 54114 1144, Fax: +420 54114 1270
E-mail:, Web: