Is there a specific reason to use PEARs? As far as I remember (but I could be wrong, it's been a few years), the main advantages of using them (automatic class path configuration, some degree of isolation between components) was lost when we wanted to change configuration parameters because then we would need to use the AE descriptor instead of the PEAR descriptor (at least with CPE). If you're not going to use the PEAR descriptor then an installed PEAR is not much more than a bunch of JARs, and component descriptors with tons of hard-coded absolute file paths, so you should be able to just use and configure a component based on those descriptors (without anything PEAR-specific).
We have since switched to doing everything with uimaFIT which gives you many many possibilities to adapt your workflow, configure engines programatically, etc. For us the change has been hugely positive, both for development (and debugging) and for deployment in a wide variety of ways and environments. Best, Jens On Tue, Dec 12, 2017 at 8:39 AM, Matthias Koch <matthias.k...@averbis.com> wrote: > Hi, > > I want to configure a PEAR dynamically. (I install the pear and want to > produce the analysis engine with different parameters than in the xml). > Is this possible? Can I use the additionalParameters? I have seen that the > PearSpecifier has an instance variable for parameters, but no one is using > (calling) it. > > I want to produce the analysisEngine with: > UIMAFramework.produceAnalysisEngine(resourceSpecifer, > resourceManager, params); > > In this specifier there should be one or more pearSpecifiers that should > be configured. > > I have overridden the PearAnalysisEngineWrapper and built a loop that > configures the following specifier over the configurationParameterSettings. > It takes the parameters from the pear specifiers. > > line 257-258 > // Parse the resource specifier > ResourceSpecifier specifier = UIMAFramework.getXMLParser().p > arseResourceSpecifier(in); > > ==> added code > AnalysisEngineDescription analysisEngineDescription = > (AnalysisEngineDescription) specifier; > AnalysisEngineMetaData analysisEngineMetaData = > analysisEngineDescription.getAnalysisEngineMetaData(); > ConfigurationParameterSettings configurationParameterSettings = > analysisEngineMetaData.getConfigurationParameterSettings(); > for (Parameter parameter : Arrays.asList(pearSpec.getParameters())) { > > configurationParameterSettings.setParameterValue(parameter.getName(), > parameter.getValue()); > } > > Is it possible without overriding anything? > > UIMAJ Version: 2.10 > > Sincerely > Matthias > > -- > Matthias Koch > > Averbis GmbH > Tennenbacher Str. 11 > 79106 Freiburg > Germany > > Fon: +49 761 708 394 0 > Fax: +49 761 708 394 10 > Email:matthias.k...@averbis.com > Web:https://averbis.com > > Headquarters: Freiburg im Breisgau > Register Court: Amtsgericht Freiburg im Breisgau, HRB 701080 > Managing Directors: Dr. med. Philipp Daumke, Dr. Kornél Markó > >