SEVERE: Process failed: java.lang.NoClassDefFoundError: org/jdom/Parent

thigass
thigass New Altair Community Member
edited November 5 in Community Q&A
Hello!

First of all, I have to state that I'm really impressed by the capabilities of RM and RA, you guys provided an amazing piece of software here and I've been playing with it for a couple of weeks. :)

I have RA installed on my Mac in which a created a process that runs smoothly locally. I also have a headless Ubuntu Server box on an Amazon EC2 instance running a fresh installation of RA. The RA running on Ubuntu has exactly the same extensions installed than my Mac's RM, but whenever I try to run the same process on RA, I get the following error on the scheduler:

[tt]SEVERE: Process failed: java.lang.NoClassDefFoundError: org/jdom/Parent[/tt]

Below is the scheduler's execution log of this process. Note that, in the process tree, the '==>' sign points to a 'Cut Document' operator. The error above appears right after an SQL statement:
Jun 01, 2012 12:04:33 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Process context is: Macros: [_ra_user : admin, _ra_jobID : 7]; Input: []; Output: []
Jun 01, 2012 12:04:33 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: No filename given for result file, using stdout for logging results!
Jun 01, 2012 12:04:33 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Process //_LOCAL/home/futurebox/NewsCrawler starts
Jun 01, 2012 12:04:33 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Executing query: 'SELECT * FROM tbfb_sys_rss WHERE cd_fonte = 'folha''
Jun 01, 2012 12:04:36 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Executing query: 'SELECT * FROM tbfb_sys_rss WHERE cd_fonte = 'estado''
Jun 01, 2012 12:04:37 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Executing query: 'SELECT * FROM tbfb_sys_rss WHERE cd_fonte = 'valor''
Jun 01, 2012 12:04:39 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Executing query: 'TRUNCATE TABLE tbfb_sys_link_temp;'
Jun 01, 2012 12:04:40 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Executing query: 'INSERT IGNORE INTO tbfb_sys_link (
cd_fonte,
dc_titulo,
dc_link_noticia,
dc_resumo_noticia,
dt_publicacao
)
SELECT * FROM tbfb_sys_link_temp;'
Jun 01, 2012 12:04:40 AM com.rapidminer.tools.jdbc.DatabaseHandler executeStatement
INFO: Executing query: 'SELECT
*
FROM
(
SELECT
id_link,
cd_fonte,
dc_titulo,
dc_link_noticia,
dt_publicacao
FROM
tbfb_sys_link
WHERE
cd_fonte = 'folha'
AND cd_status_processamento = 0
) AS A
ORDER BY
id_link DESC
;'
Jun 01, 2012 12:04:42 AM de.rapidanalytics.execution.AbstractProcessExecutor runProcessNow
SEVERE: Process failed: java.lang.NoClassDefFoundError: org/jdom/Parent
java.lang.NoClassDefFoundError: org/jdom/Parent
at org.jaxen.jdom.JDOMXPath.<init>(JDOMXPath.java:91)
at com.rapidminer.operator.text.tools.queries.XPathQuery.<init>(XPathQuery.java:73)
at com.rapidminer.operator.text.tools.queries.QueryService.getAttributeQueryMap(QueryService.java:189)
at com.rapidminer.operator.text.io.segmenter.DocumentSegmentingOperator.doWork(DocumentSegmentingOperator.java:85)
at com.rapidminer.operator.Operator.execute(Operator.java:834)
at com.rapidminer.operator.execution.SimpleUnitExecutor.execute(SimpleUnitExecutor.java:51)
at com.rapidminer.operator.ExecutionUnit.execute(ExecutionUnit.java:711)
at com.rapidminer.operator.text.io.AbstractDocumentInputOperator.doWork(AbstractDocumentInputOperator.java:231)
at com.rapidminer.operator.Operator.execute(Operator.java:834)
at com.rapidminer.operator.execution.SimpleUnitExecutor.execute(SimpleUnitExecutor.java:51)
at com.rapidminer.operator.ExecutionUnit.execute(ExecutionUnit.java:711)
at com.rapidminer.operator.OperatorChain.doWork(OperatorChain.java:379)
at com.rapidminer.operator.SimpleOperatorChain.doWork(SimpleOperatorChain.java:61)
at com.rapidminer.operator.Operator.execute(Operator.java:834)
at com.rapidminer.operator.execution.SimpleUnitExecutor.execute(SimpleUnitExecutor.java:51)
at com.rapidminer.operator.ExecutionUnit.execute(ExecutionUnit.java:711)
at com.rapidminer.operator.meta.branch.ProcessBranch.doWork(ProcessBranch.java:207)
at com.rapidminer.operator.Operator.execute(Operator.java:834)
at com.rapidminer.operator.execution.SimpleUnitExecutor.execute(SimpleUnitExecutor.java:51)
at com.rapidminer.operator.ExecutionUnit.execute(ExecutionUnit.java:711)
at com.rapidminer.operator.OperatorChain.doWork(OperatorChain.java:379)
at com.rapidminer.operator.SimpleOperatorChain.doWork(SimpleOperatorChain.java:61)
at com.rapidminer.operator.Operator.execute(Operator.java:834)
at com.rapidminer.operator.execution.SimpleUnitExecutor.execute(SimpleUnitExecutor.java:51)
at com.rapidminer.operator.ExecutionUnit.execute(ExecutionUnit.java:711)
at com.rapidminer.operator.OperatorChain.doWork(OperatorChain.java:379)
at com.rapidminer.operator.Operator.execute(Operator.java:834)
at com.rapidminer.Process.run(Process.java:925)
at com.rapidminer.Process.run(Process.java:848)
at com.rapidminer.Process.run(Process.java:807)
at com.rapidminer.Process.run(Process.java:802)
at de.rapidanalytics.execution.AbstractProcessExecutor.runProcessNow(Unknown Source)
at de.rapidanalytics.execution.SimpleProcessExecutor.execute(Unknown Source)
at de.rapidanalytics.execution.ProcessExecutionDispatcher.dispatch(Unknown Source)
at de.rapidanalytics.ejb.ProcessJobEJBImpl.executeJob(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:122)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)
at org.jboss.ejb3.interceptors.container.ContainerMethodInvocationWrapper.invokeNext(ContainerMethodInvocationWrapper.java:72)
at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:76)
at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:62)
at sun.reflect.GeneratedMethodAccessor406.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:74)
at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_2002255915.invoke(InvocationContextInterceptor_z_fillMethod_2002255915.java)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:90)
at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_2002255915.invoke(InvocationContextInterceptor_z_setup_2002255915.java)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.async.impl.interceptor.AsynchronousServerInterceptor.invoke(AsynchronousServerInterceptor.java:128)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.tx.StatelessBMTInterceptor.handleInvocation(StatelessBMTInterceptor.java:106)
at org.jboss.ejb3.tx.BMTInterceptor.invoke(BMTInterceptor.java:55)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:68)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.core.context.SessionInvocationContextAdapter.proceed(SessionInvocationContextAdapter.java:95)
at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:247)
at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.required(CMTTxInterceptor.java:349)
at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invoke(CMTTxInterceptor.java:209)
at org.jboss.ejb3.tx2.aop.CMTTxInterceptorWrapper.invoke(CMTTxInterceptorWrapper.java:52)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:182)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.core.context.CurrentInvocationContextInterceptor.invoke(CurrentInvocationContextInterceptor.java:47)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.interceptor.EJB3TCCLInterceptor.invoke(EJB3TCCLInterceptor.java:86)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:392)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invokeLocal(IsLocalInterceptor.java:88)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:75)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.async.impl.interceptor.AsynchronousClientInterceptor.invoke(AsynchronousClientInterceptor.java:143)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.remoting.PojiProxy.invoke(PojiProxy.java:62)
at $Proxy215.invoke(Unknown Source)
at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:185)
at $Proxy214.executeJob(Unknown Source)
at de.rapidanalytics.web.tools.ProcessExecutionJob.execute(Unknown Source)
at org.quartz.core.JobRunShell.run(JobRunShell.java:216)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)
Caused by: java.lang.ClassNotFoundException: org.jdom.Parent from BaseClassLoader@7758002b{vfs:///rapidanalytics/server/server/default/conf/jboss-service.xml}
at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:480)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 103 more

Jun 01, 2012 12:04:43 AM <unknown> <unknown>
SEVERE: Here:          CrawlNews[1] (Process)
          subprocess 'Main Process'
            +- RetrieveLinks[1] (Subprocess)
          subprocess 'Nested Chain'
            |    +- DB Folha[1] (Read Database)
            |    +- Loop Values[1] (Loop Values)
          subprocess 'Iteration'
            |    |    +- RSS Folha[1] (Open File)
            |    |    +- Read RSS Folha[1] (Read XML)
            |    |    +- Source Attribute Folha[1] (Generate Attributes)
            |    |    +- Remove Redirect Folha[1] (Replace)
            |    +- DB Estado[1] (Read Database)
            |    +- Links Estado[1] (Loop Values)
          subprocess 'Iteration'
            |    |    +- RSS Estado[1] (Open File)
            |    |    +- Read RSS Estado[1] (Read XML)
            |    |    +- Source Attribute Estado[1] (Generate Attributes)
            |    +- DB Valor[1] (Read Database)
            |    +- Links Valor[1] (Loop Values)
          subprocess 'Iteration'
            |    |    +- RSS Valor[1] (Open File)
            |    |    +- Read RSS Valor[1] (Read XML)
            |    |    +- Source Attribute Valor[1] (Generate Attributes)
            |    +- Append Links[1] (Append)
            |    +- Clear Temp Table[1] (Execute SQL)
            |    +- Populate Temp Table[1] (Write Database)
            |    +- Populate Link Table[1] (Execute SQL)
            +- CrawlLinks[1] (Subprocess)
          subprocess 'Nested Chain'
                  +- Pages Folha[1] (Subprocess)
          subprocess 'Nested Chain'
                  |    +- DB Link Folha[1] (Read Database)
                  |    +- GP Folha[1] (Get Pages)
                  |    +- F0 Folha[1] (Filter Examples)
                  +- IF Has Input Folha 1[1] (Branch)
          subprocess 'Then'
                  |  |  +- Process Folha[1] (Subprocess)
          subprocess 'Nested Chain'
                  |  |  |    +- F1 Folha[1] (Filter Examples)
                  |  |  |    +- D2Doc Folha[1] (Data to Documents)
                  |  |  |    +- PD Folha[1] (Process Documents)
          subprocess 'Vector Creation'
      ==>        |  |  |    |    +- PD C Folha[1] (Cut Document)
          subprocess 'Segment Processing'
                  |  |  |    |    |    +- PDC E Folha[0] (Extract Content)
                  |  |  |    |    +- PD Cb Folha[0] (Combine Documents)
                  |  |  |    |    +- PD EL Folha[0] (Extract Length)
                  |  |  |    +- F2 Folha[0] (Filter Examples)
                  |  |  +- IF Has Input Folha 2[0] (Branch)
          subprocess 'Then'
                  |  |    |  +- Prepare Folha[0] (Subprocess)
          subprocess 'Nested Chain'
                  |  |    |        +- SA Folha[0] (Select Attributes)
                  |  |    |        +- R Folha[0] (Rename)
          subprocess 'Else'
          subprocess 'Else'
                  +- Fork Folha[0] (Multiply)
                  +- Pages Estado[0] (Subprocess)
          subprocess 'Nested Chain'
                  |    +- DB Link Estado[0] (Read Database)
                  |    +- GP Estado[0] (Get Pages)
                  |    +- F0 Estado[0] (Filter Examples)
                  +- IF Has Input Estado 1[0] (Branch)
          subprocess 'Then'
                  |  |  +- Process Estado[0] (Subprocess)
          subprocess 'Nested Chain'
                  |  |  |    +- F1 Estado[0] (Filter Examples)
                  |  |  |    +- D2Doc Estado[0] (Data to Documents)
                  |  |  |    +- PD Estado[0] (Process Documents)
          subprocess 'Vector Creation'
                  |  |  |    |    +- PD C Estado[0] (Cut Document)
          subprocess 'Segment Processing'
                  |  |  |    |    |    +- PDC E Estado[0] (Extract Content)
                  |  |  |    |    +- PD Cb Estado[0] (Combine Documents)
                  |  |  |    |    +- PD EL Estado[0] (Extract Length)
                  |  |  |    +- F2 Estado[0] (Filter Examples)
                  |  |  +- IF Has Input Estado 2[0] (Branch)
          subprocess 'Then'
                  |  |    |  +- Prepare Estado[0] (Subprocess)
          subprocess 'Nested Chain'
                  |  |    |        +- SA Estado[0] (Select Attributes)
                  |  |    |        +- R Estado[0] (Rename)
          subprocess 'Else'
          subprocess 'Else'
                  +- Fork Estado[0] (Multiply)
                  +- Pages Valor[0] (Subprocess)
          subprocess 'Nested Chain'
                  |    +- DB Link Valor[0] (Read Database)
                  |    +- GP Valor[0] (Get Pages)
                  |    +- F0 Valor[0] (Filter Examples)
                  +- IF Has Input Valor 1[0] (Branch)
          subprocess 'Then'
                  |  |  +- Process Valor[0] (Subprocess)
          subprocess 'Nested Chain'
                  |  |  |    +- F1 Valor[0] (Filter Examples)
                  |  |  |    +- D2Doc Valor[0] (Data to Documents)
                  |  |  |    +- PD Valor[0] (Process Documents)
          subprocess 'Vector Creation'
                  |  |  |    |    +- PD C Valor[0] (Cut Document)
          subprocess 'Segment Processing'
                  |  |  |    |    |    +- PDC E Valor[0] (Extract Content)
                  |  |  |    |    +- PD Cb Valor[0] (Combine Documents)
                  |  |  |    |    +- PD EL Valor[0] (Extract Length)
                  |  |  |    +- F2 Valor[0] (Filter Examples)
                  |  |  +- IF Has Input Valor 2[0] (Branch)
          subprocess 'Then'
                  |  |    |  +- Prepare Valor[0] (Subprocess)
          subprocess 'Nested Chain'
                  |  |    |        +- SA Valor[0] (Select Attributes)
                  |  |    |        +- R Valor[0] (Rename)
          subprocess 'Else'
          subprocess 'Else'
                  +- Fork Valor[0] (Multiply)
                  +- First Non Null Input[0] (Join Paths)
                  +- IF Has Any Input[0] (Branch)
          subprocess 'Then'
                      |  +- Append News[0] (Append)
                      |  +- Clear Temp News Table[0] (Execute SQL)
                      |  +- Write Temp News[0] (Write Database)
                      |  +- Store News[0] (Execute SQL)
                      |  +- Flag Processed News[0] (Execute SQL)
          subprocess 'Else'
I tried to reinstall RA several times and even upgraded the JRE from the default version Open 6 to Oracle's 7. Is there anything wrong with the installation or the process itself? I googled it as much as I could but couldn't find a solution for this error. I can provide the process code and any logs if necessary.

Thanks in advance!
Tagged:

Answers

  • Nils_Woehler
    Nils_Woehler New Altair Community Member
    Hi,

    what version of RM and RA are you using?
    Can you please post a minimal process that helps to reproduce the error?

    Best,
    Nils
  • Preko
    Preko New Altair Community Member
    I have experienced the same exception on RapidAnalytics. I am using RM 5.2.8, RA 1.2.8, and the problem happens when I try to use any XPath expression, like in the Enrich data by Webservices operator. The process runs perfectly in RM, but fails on RA, having the very same extensions. It seems that RA is missing some dependencies.

    <operator activated="true" class="web:enrich_data_by_webservice" compatibility="5.2.003" expanded="true" height="60" name="Enrich Data by Webservice" width="90" x="313" y="30">
            <parameter key="query_type" value="XPath"/>
            <list key="string_machting_queries"/>
            <list key="regular_expression_queries"/>
            <list key="regular_region_queries"/>
            <list key="xpath_queries">
              <parameter key="country_code" value="/Response/CountryCode/text()"/>
              <parameter key="country_name" value="/Response/CountryName/text()"/>
              <parameter key="region_code" value="/Response/RegionCode/text()"/>
              <parameter key="region_name" value="/Response/RegionName/text()"/>
              <parameter key="city" value="/Response/City/text()"/>
              <parameter key="zip" value="/Response/ZipCode/text()"/>
              <parameter key="latitude" value="/Response/Latitude/text()"/>
              <parameter key="longitude" value="/Response/Longitude/text()"/>
              <parameter key="metro_code" value="/Response/MetroCode/text()"/>
            </list>
            <list key="namespaces"/>
            <parameter key="assume_html" value="false"/>
            <list key="index_queries"/>
            <parameter key="url" value="http://freegeoip.net/xml/&amp;lt;%ip%&amp;gt;"/>
            <parameter key="delay" value="4000"/>
            <list key="request_properties"/>
            <parameter key="encoding" value="UTF-8"/>
          </operator>