Hi Michel

On Wed, May 30, 2012 at 4:07 PM, Michel Benevento <[email protected]> wrote:
> Hello,
>
> We are looking for what would the best way to deploy Stanbol in our IT 
> architecture. Here is what we are looking for:
>
> - Enhancer & Entityhub functionality

If you just need a specific subset of the Stanbol components you might
want to build your own launcher.

If you want to deploy Apache Stanbol into an existing Servlet
container it is the best to use the full-war launcher as a starting
point.
If you want to use the ruinable jar you can start from the full or
stable launcher.

When customizing your launcher you need to configure

1. dependencies to partialbundlelist: This are defined in the pom.xml
file of the launcher (e.g. /launchers/stable/pom.xml)

You will need

    * o.a.s.launchers.bundlelists.osgiframework
    * o.a.s.launchers.bundlelists.stanbolcommons
    * o.a.s.enhancer.bundlelist
    * o.a.s.entityhub.bundlelist

If you add an bundle list to the dependencies the bundles as specified
in the "list.xml" will be added to your launcher - all of them!
So if you need only some of those it is better to go the the
"list.xml" and copy them manually to the "list.xml" of your launcher.

NOTE: The "list.xml" can be found "./src/main/bundles/list.xml"
relative to the root folder of the module.

Further I expect that you will not need the
"o.a.s.data.bundlelists.defaultdata". Maybe have a look at the the
"org.apache.stanbol.data.defaultconfig" module, as it adds the
KeywordLinkingEngine configuration for the Entityhub and the
"language" EnhancementChain. Other than that
"o.a.s.data.bundlelists.defaultdata" adds just dbpedia default data as
well as the OpenNLP models for English.

You will need some bundles of "o.a.s.data.bundlelists.opennlp". If you
use only the keyword extraction engine you will need the
"o.a.s.data.opennlp.lang.{language}" bundles of the {language}s you
need to support. If you also use the NER engine you should also
include the "o.a.s.opennlp.ner.{language}" bundles.

Finally you can also add the
"org.apache.stanbol.data.site.{site-name}" bundle(s) of the
ReferencedSites you want to add. You should use a start level >= 30
for those.

> - Our own dataset (bundle & solrindex) included

If you include the dataset bundle in the launcher, than it is enough
to copy the solrindex archive into the /datafiles directory. Including
the solrindex archive within the launcher is also possible, but having
it in the /sling/datafiles folder is more efficient and also allows to
update the data of the index later on.

BTW it is no problem if a shell script create the /sling/datafile
folder before this folder is created by the stanbol launcher. If you
do not want to copy the data you can also use symbolic links. However
if you want to update the data you need to first delete, wait >5sec
and only than copy the file with the new data.

> - Periodical updates of the application code (without overwriting our data)

This is a very good question I am also asking my self when I update
the Stanbol instance running on http://dev.iks-project.eu:8081

While I know that you can use the maven-sling-plugin to update single
bundles (see [1] for details) this does not work well if you want to
update a lot of them.

Maybe someone else that can better answer this question. I would be
interested myself!

best
Rupert

[1] http://sling.apache.org/site/sling.html#Sling-The{{installfile}}goal


>
> We can do all this by hand, but need advice on how to create an automated and 
> lean solution for this. What would be the best way to achieve that?
>
> Many thanks,
> Michel Benevento
>
>
>



-- 
| Rupert Westenthaler             [email protected]
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Reply via email to