Project

General

Profile

About


The SmartDoc Plugin is a brand new plugin that will help Servoy developers leverage the power of the Apache Lucene Full-Text Search Engine in Servoy.
It is compatible with Servoy 5.x and 6.x for smart and web clients.

It is build on top of two main projects: Solr (a sub-projects of Lucene) and Tika (a project of the Apache Software Foundation)

The SmartDoc Plugin allows you to use easy Servoy scripting methods to send any kind of files or URLs to the server to be processed.
@see the list of accepted file that the Tika library is capable to parse.

The files are pushed to the server by chunks in a background task, and the URLs are retrieved on the server-side (any http/https/ftp valid URL can be used, and you can provide credentials for access authentication). Once on the server, the files are saved in a folder (and optionally renamed, using a renaming scheme that you can easily modify), then they are parsed by relevant Tika parsers to extract the content and all usable metadata. Then they are indexed in a Solr server instance using Java binary objects for fast and secure inserts/updates. The parsed content and metadata are then returned back to Servoy using a callback method for further processing (optionally saving in a database).

Note that because all the parsing / URL retrieving / Solr updating is done server-side, no jar dependencies is actually needed on the client side.
No additional jars are needed on the client side and the download weight on the client is thus kept to its minimal (+/- 40kb right now).

All this process is non blocking for the client who can batch send as many files as he wants, and continue working while waiting for the results.
The server side is of course multi-thread and the processes are all thread-safe, meaning that concurrency with files and URLs coming from lots of different clients at the same time is properly handled.

The SmartDoc Plugin also helps retrieving the initial files, through an internal Servlet which can return any file saved previously on the server side.

The SmartDoc Plugin also aims to simplify querying the Solr server, using simple Javascript objects as parameter containers and receiving JavaScript objects as a response from the server.
Very sophisticated queries can be implemented, with access to the full range of Solr queries and syntax.

To continue: