Skip to main content
1-Visitor
April 26, 2011
Question

" java.lang.NoClassDefFoundError: Could not initialize class" in a cluster

  • April 26, 2011
  • 12 replies
  • 6503 views
Hi Windchillers,

We have a newly built Cluster for Windchill 9.1. Navigating through some of
Product#Folders were get the following error,

Could not initialize class
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector$DocumentTypeMapping

The Class file exists on all servers. We even tried to replace with an OOTB
class file. Ran Makejar.

It seems there is an issue with Tomcat not being able to execute this class.
I will appreciate some suggestions here. Below is the Catalina stack trace.

Caused by: java.lang.NoClassDefFoundError: Could not initialize class
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector$DocumentTypeMapping
... 81 more
---------- JCA Exception ----------
javax.servlet.jsp.JspException: Unable to process tag: GetModelTag [<div<br/>style="margin-left: 40px;">var="folderContentsModel"








com.ptc.core.components.command.TreeCommand"





]"
]
at com.ptc.core.components.jsp.JspUtils.newJspException(JspUtils.java:74)
at com.ptc.core.components.jsp.JspUtils.throwJspException(JspUtils.java:65)
at
com.ptc.core.components.tags.core.BatchCommandTagSupport.doTag(BatchCommandTagSupport.java:93)
at
org.apache.jsp.netmarkets.jsp.folder.folderPageRightPane_jsp._jspx_meth_jca_005fgetModel_005f0(folderPageRightPane_jsp.java:1868)
at
org.apache.jsp.netmarkets.jsp.folder.folderPageRightPane_jsp._jspService(folderPageRightPane_jsp.java:676)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at
com.ptc.core.components.tags.components.RenderTwoPanesTag.doTag(RenderTwoPanesTag.java:280)
at
org.apache.jsp.netmarkets.jsp.folder.list_jsp._jspService(list_jsp.java:538)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:968)
at
org.apache.jsp.netmarkets.jsp.folder.view_jsp._jspService(view_jsp.java:407)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at
com.ptc.core.components.infoPage.InfoPageNavigatorDelegate.processRequest(InfoPageNavigatorDelegate.java:77)
at
com.ptc.core.components.servlets.TypeBasedIncludeServlet.processRequest(TypeBasedIncludeServlet.java:129)
at
com.ptc.core.components.servlets.TypeBasedIncludeServlet.doPost(TypeBasedIncludeServlet.java:222)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
wt.httpgw.filter.WTContextBeanFilter.doFilter(WTContextBeanFilter.java:48)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at wt.httpgw.filter.TrustedAuthFilter.doFilter(TrustedAuthFilter.java:123)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at wt.servlet.CompressionFilter.doFilter(CompressionFilter.java:232)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at wt.servlet.RequestInterrupter.doFilter(RequestInterrupter.java:324)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
wt.servlet.ServletRequestMonitor.doFilter(ServletRequestMonitor.java:1417)
at
wt.servlet.ServletRequestMonitorFilter.doFilter(ServletRequestMonitorFilter.java:54)
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:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698)
at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:619)
Caused by: wt.util.WTException: wt.util.WTRemoteException: Unable to invoke
remote method; nested exception is:
java.rmi.ServerError: Server exception; nested exception is:
java.lang.NoClassDefFoundError: Could not initialize class
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector$DocumentTypeMapping
Nested exception is: wt.util.WTRemoteException: Unable to invoke remote
method; nested exception is:
java.rmi.ServerError: Server exception; nested exception is:
java.lang.NoClassDefFoundError: Could not initialize class
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector$DocumentTypeMapping
at
com.ptc.core.components.util.InPlaceCommand$Remote.execute(InPlaceCommand.java:198)
at
com.ptc.core.components.util.InPlaceCommand.execute(InPlaceCommand.java:109)
at
com.ptc.core.components.beans.ComponentModelBean.getModel(ComponentModelBean.java:225)
at
com.ptc.core.components.tags.components.GetModelTag.postExecute(GetModelTag.java:203)
at
com.ptc.core.components.tags.core.BatchCommandTagSupport.doTag(BatchCommandTagSupport.java:89)
... 75 more
Caused by: wt.util.WTRemoteException: Unable to invoke remote method; nested
exception is:
java.rmi.ServerError: Server exception; nested exception is:
java.lang.NoClassDefFoundError: Could not initialize class
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector$DocumentTypeMapping
at wt.method.RemoteMethodServer.invoke(RemoteMethodServer.java:843)
at
com.ptc.core.components.util.InPlaceCommand$Remote.execute(InPlaceCommand.java:188)
... 79 more
Caused by: java.rmi.ServerError: Server exception; nested exception is:
java.lang.NoClassDefFoundError: Could not initialize class
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector$DocumentTypeMapping

Regards,
Rohan


Rohan Kalbhor
Email:-

12 replies

12-Amethyst
April 26, 2011
I /suspect /that the method server logs provide a more detailed
explanation (e.g. including specific line numbers and errors) of the
first occurrence of the failure to initialize this class.

rkalbhor1-VisitorAuthor
1-Visitor
April 26, 2011
Thanks Jess,

Below is the stack trace from MS of one of the slaves.

Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: ERROR :
wt.method.MethodContextMonitor.contexts.rmi - 2011-04-26 07:07:49.156 +0000,
gmrkviit;13955;6189, -, gmrkviit;13955;6167, wctest3, 127.0.0.1,
com.ptc.core.components.util.InPlaceCommand$Remote, execute,
com.ptc.core.command.server.delegate.entity.PrepareEntityCommandDelegate+com.ptc.core.command.server.delegate.entity.NewEntityCommandDelegate,
0, 37, 0.462722816, 1.07838062, 1.511727624
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1:
java.lang.NoClassDefFoundError: Could not initialize class
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector$DocumentTypeMapping
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.epm.identity.EPMIconSelector$DocumentTypeIconSelector.getIconSelector(EPMIconSelector.java:842)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.epm.identity.IconManager.chooseIconSelector(IconManager.java:124)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.epm.identity.IconManager.getIconSelector(IconManager.java:160)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.epm.identity.IconManager.getIconSelector(IconManager.java:166)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.epm.identity.EPMDocumentIconDelegate.getStandardIconSelector(EPMDocumentIconDelegate.java:275)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.clients.util.IconCache.getIconResource(IconCache.java:1216)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.windchill.enterprise.object.dataUtilities.TypeDataUtility.getDataValue(TypeDataUtility.java:112)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.beans.DataUtilityBean.getModelValue(DataUtilityBean.java:628)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.beans.DataUtilityBean$3.process(DataUtilityBean.java:543)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.DescriptorWalker.walk(DescriptorWalker.java:62)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.DescriptorWalker.walk(DescriptorWalker.java:66)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.DescriptorWalker.walk(DescriptorWalker.java:49)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.beans.DataUtilityBean.doSecondPass(DataUtilityBean.java:536)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.beans.DataUtilityBean.getModel(DataUtilityBean.java:295)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.command.delegate.ModelCommandDelegate.execute(ModelCommandDelegate.java:194)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.InPlaceCommand.executeLocal(InPlaceCommand.java:157)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.InPlaceCommand.execute(InPlaceCommand.java:106)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.BatchCommandDelegate.execute(BatchCommandDelegate.java:49)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.InPlaceCommand.executeLocal(InPlaceCommand.java:157)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.InPlaceCommand.access$000(InPlaceCommand.java:39)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
com.ptc.core.components.util.InPlaceCommand$Remote.execute(InPlaceCommand.java:182)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.lang.reflect.Method.invoke(Method.java:597)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.method.MethodResultWriter.writeExternal(MethodResultWriter.java:151)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
wt.method.MethodResult.writeExternal(MethodResult.java:226)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1418)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1390)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.rmi.server.UnicastRef.marshalValue(UnicastRef.java:274)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:315)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.rmi.transport.Transport$1.run(Transport.java:159)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.security.AccessController.doPrivileged(Native Method)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.rmi.transport.Transport.serviceCall(Transport.java:155)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
Tue 4/26/11 07:07:50: RMI TCP Connection(14473)-127.0.0.1: at
java.lang.Thread.run(Thread.java:619)


Regards,
Rohan


Rohan Kalbhor
Email:-
12-Amethyst
April 26, 2011
Which MOR is this at exactly?

12-Amethyst
April 26, 2011
Also I don't believe this is the *first* time an exception occurred in
EPMIconSelector in the given method server. That occurrence should
likely have more information than simply "could not initialize" and a
line number.

rkalbhor1-VisitorAuthor
1-Visitor
April 26, 2011
Its 9.1 M050.

Regards,
Rohan



12-Amethyst
April 26, 2011
Well, it is quite unclear as to what's causing the exception. This is
almost certainly not the first occurrence of an exception from within
EPMIconSelector in the given method server. The first occurrence should
provide more information -- but at any rate I suspect you'll need to
work with tech support. [This is not really my area of the product.]

1-Visitor
April 26, 2011
Rohan,

Have you checked to see if the class even exists in the package referenced?

Thanks

Alexius C. Chukwuka
Infrastructure Analyst
JDPS Division SAP BASIS Team
John Deere Power Systems
rkalbhor1-VisitorAuthor
1-Visitor
April 26, 2011
Alex,

Yeah that's the first thing even we thought following the error stack trace
but the referred class file and its package are present on all Master and
Slaves.

Regards,
Rohan


On Tue, Apr 26, 2011 at 6:53 PM, Chukwuka Alexius C <
-> wrote:

> Rohan,
>
>
>
> Have you checked to see if the class even exists in the package referenced?
>
>
>
> Thanks
>
>
>
> *Alexius C. Chukwuka*
>
> Infrastructure Analyst
> JDPS Division SAP BASIS Team
> John Deere Power Systems
> Phone: (309) 765-3133
> Email: -
>
>
>
> *From:* Jess Holle [
> initialize class" in a cluster
>
>
>
> Also I don't believe this is the *first* time an exception occurred in
> EPMIconSelector in the given method server. That occurrence should likely
> have more information than simply "could not initialize" and a line number.
>
>
11-Garnet
April 27, 2011

We also get the error several times a day(PDMLink 9.1 M050, single server). We suspect that Tomcat is the culprit, because doing a quick bounce of Tomcat seems to clear it up for awhile. Our production server is a 64-bit, but we are running 32-bit Java, so on one of our dev servers we have switched to 64-bit Java to overcome the 32-bit limit of memory usage, and so far this seems to have cleared up the problem. Will report more when we swap out our production server Java to 64-bit.


Send lawyers, guns, and money...the sh!t has hit the fan!

rkalbhor1-VisitorAuthor
1-Visitor
April 29, 2011
I think our root cause lies in the Apache on the Load balancer. We copied
the codebase to the Load balancer as mentioned in the PTC guide 'to make
codebase available Loadbalancer'. Are we missing something here? our cluster
has all Solaris machines. Is copying codebase not the solution?

[image: apache.JPG]
Rohan Kalbhor
Email:-