Expand my Community achievements bar.

Execute Script problem - NoClassDefFoundError importing com.adobe.idp.Document

Avatar

Level 3

I have a small Java utility jar that uses com.adobe.idp.Document in one of the method calls so I added the following line to my ExecuteScript:

    import com.adobe.idp.Document;

Then I got the following error (line breaks added to improve readability):

2013-05-24 09:34:16,200 ERROR [com.adobe.workflow.AWS] Sourced file: inline evaluation of: ``import com.adobe.idp.Document;

import gov.ne.deq.lcutils.PortfolioUtils; import  . . . '' : Method Invocation PortfolioUtils.persistMap : at Line: 10 : in file:

inline evaluation of: ``import com.adobe.idp.Document; import gov.ne.deq.lcutils.PortfolioUtils; import  . . . '' : PortfolioUtils .persistMap ( filename , portfolioMap )

Target exception: java.lang.NoClassDefFoundError: com/adobe/idp/Document

So figuring out that com.adobe.idp.Document is in the adobe-livecycle-client.jar file I proceeded by putting adobe-livecycle-client.jar in the jboss\server\lc_turnkey\lib directory and restarted the server.

Now nothing works because there is a logger class mismatch somewhere in the classloader hierarchy as follows (linebreaks added for readability again):

java.lang.LinkageError: loader constraint violation: when resolving field "logger" the class loader 

(instance of org/ungoverned/moduleloader/ModuleClassLoader) of the referring class, com/adobe/workflow/LogUtil,

and the class loader (instance of org/jboss/mx/loading/UnifiedClassLoader3) for the field's resolved type,

com/adobe/logging/AdobeLogger, have different Class objects for that type

     at com.adobe.idp.workflow.dsc.invoker.WorkflowDSCInvoker.transientInvoke(WorkflowDSCInvoker.java:320)
     at com.adobe.idp.workflow.dsc.invoker.WorkflowDSCInvoker.invoke(WorkflowDSCInvoker.java:158)
     at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor.java:140)
     at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
     at com.adobe.idp.dsc.interceptor.impl.DocumentPassivationInterceptor.intercept(DocumentPassivationInterceptor.java:53)
     at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
     at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor$1.doInTransaction(TransactionInterceptor.java:74)
     at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.execute(EjbTransactionCMTAdapterBean.java:357)
     at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.doRequiresNew(EjbTransactionCMTAdapterBean.java:299)
     at sun.reflect.GeneratedMethodAccessor602.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
     at java.lang.reflect.Method.invoke(Unknown Source)
     at org.jboss.invocation.Invocation.performCall(Invocation.java:359)
     at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)
     at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)
     at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)
     at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)
     at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)
     at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:404)
     at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)
     at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)
     at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
     at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)
     at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)
     at org.jboss.ejb.Container.invoke(Container.java:960)
     at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)
     at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)
     at $Proxy408.doRequiresNew(Unknown Source)
     at com.adobe.idp.dsc.transaction.impl.ejb.EjbTransactionProvider.execute(EjbTransactionProvider.java:143)
     at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor.intercept(TransactionInterceptor.java:72)
     at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
     at com.adobe.idp.dsc.interceptor.impl.InvocationStrategyInterceptor.intercept(InvocationStrategyInterceptor.java:55)
     at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
     at com.adobe.idp.dsc.interceptor.impl.InvalidStateInterceptor.intercept(InvalidStateInterceptor.java:37)
     at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
     at com.adobe.idp.dsc.interceptor.impl.AuthorizationInterceptor.intercept(AuthorizationInterceptor.java:188)
     at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
     at com.adobe.idp.dsc.interceptor.impl.JMXInterceptor.intercept(JMXInterceptor.java:48)
     at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
     at com.adobe.idp.dsc.engine.impl.ServiceEngineImpl.invoke(ServiceEngineImpl.java:115)
     at com.adobe.idp.dsc.routing.Router.routeRequest(Router.java:129)
     at com.adobe.idp.dsc.provider.impl.base.AbstractMessageReceiver.invoke(AbstractMessageReceiver.java:329)
     at com.adobe.idp.dsc.provider.impl.soap.axis.sdk.SoapSdkEndpoint.invokeCall(SoapSdkEndpoint.java:139)
     at com.adobe.idp.dsc.provider.impl.soap.axis.sdk.SoapSdkEndpoint.invoke(SoapSdkEndpoint.java:81)
     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.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)
     at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
     at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
     at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
     at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
     at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
     at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
     at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
     at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
     at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     at com.adobe.idp.dsc.provider.impl.soap.axis.InvocationFilter.doFilter(InvocationFilter.java:43)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     at com.adobe.idp.um.auth.filter.CSRFFilter.doFilter(CSRFFilter.java:41)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
     at java.lang.Thread.run(Unknown Source)

     at org.jboss.ejb.plugins.LogInterceptor.handleException(LogInterceptor.java:430)
     at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:209)
     at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)
     at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)
     at org.jboss.ejb.Container.invoke(Container.java:960)
     at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)
     at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)
     at $Proxy408.doRequiresNew(Unknown Source)
     at com.adobe.idp.dsc.transaction.impl.ejb.EjbTransactionProvider.execute(EjbTransactionProvider.java:143)
     ... 55 more

LiveCycle is ES2 SP2 on Windows Server 2008 64-bit with JBoss partial turnkey (MS SQLServer).  I'm looking for suggestions on how to configure JBoss to avoid this problem or, alternatively, another directory to place adobe-livecycle-client.jar.  I'm also curious as to how ES2 functions without com.adobe.idp.Document in the classpath because Workbench certainly thinks that 'document' variables have class com.adobe.idp.Document and our application is chock full of them.

0 Replies