inception-project / inception

INCEpTION provides a semantic annotation platform offering intelligent annotation assistance and knowledge management.
https://inception-project.github.io
Apache License 2.0
593 stars 151 forks source link

CoNLL-U Export reproducibly throws on export #198

Closed reckart closed 5 years ago

reckart commented 6 years ago

Exporting a document as CoNLL-U (e.g. via the export function on the annotation page) produces an error. Relevant part of stacktrace:

Caused by: java.lang.NoClassDefFoundError: de/tudarmstadt/ukp/dkpro/core/api/lexmorph/type/pos/ADJ
    at de.tudarmstadt.ukp.clarin.webanno.conll.ConllUWriter.<init>(ConllUWriter.java:134) ~[webanno-io-conll-3.4.0-alpha-2.jar:na]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_151]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_151]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_151]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_151]
    at java.lang.Class.newInstance(Class.java:442) ~[na:1.8.0_151]
    at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initializeAnalysisComponent(PrimitiveAnalysisEngine_impl.java:242) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initialize(PrimitiveAnalysisEngine_impl.java:172) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:407) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.analysis_engine.asb.impl.ASB_impl.setup(ASB_impl.java:256) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initASB(AggregateAnalysisEngine_impl.java:435) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initializeAggregateAnalysisEngine(AggregateAnalysisEngine_impl.java:379) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initialize(AggregateAnalysisEngine_impl.java:192) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:331) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:448) ~[uimaj-core-2.10.2.jar:2.10.2]
    at org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine(AnalysisEngineFactory.java:205) ~[uimafit-core-2.4.0.jar:2.4.0]
    at org.apache.uima.fit.pipeline.SimplePipeline.runPipeline(SimplePipeline.java:259) ~[uimafit-core-2.4.0.jar:2.4.0]
    at de.tudarmstadt.ukp.clarin.webanno.api.dao.ImportExportServiceImpl.exportCasToFile(ImportExportServiceImpl.java:558) ~[webanno-api-dao-3.4.0-alpha-2.jar:na]
    at de.tudarmstadt.ukp.clarin.webanno.api.dao.ImportExportServiceImpl.exportAnnotationDocument(ImportExportServiceImpl.java:159) ~[webanno-api-dao-3.4.0-alpha-2.jar:na]
    at de.tudarmstadt.ukp.clarin.webanno.api.dao.ImportExportServiceImpl.exportAnnotationDocument(ImportExportServiceImpl.java:121) ~[webanno-api-dao-3.4.0-alpha-2.jar:na]
    at de.tudarmstadt.ukp.clarin.webanno.api.dao.ImportExportServiceImpl$$FastClassBySpringCGLIB$$256f1e29.invoke(<generated>) ~[webanno-api-dao-3.4.0-alpha-2.jar:na]
reckart commented 6 years ago

The issue exists because WebAnno and INCEpTION use different versions of DKPro Core and the POS elevated types have changed between these two versions.

reckart commented 6 years ago

The easiest way to fix this for the moment should be to change the ConllUWriter in WebAnno to be compatible with the DKPro 1.7.0 POS types as well as with the latest DKPro Core POS types. This could be done by using class names in the dkpro2ud translation map instead of classes.