cancel
Showing results for 
Search instead for 
Did you mean: 

java.lang.NoClassDefFoundError in WD JAVA Development with NWDI

Former Member
0 Kudos

Hi,

I have a created a external library DC with KM API jars and com.sap.security jars.

I created 2 public parts for these jars one for Assembly and one for compile.

I added these 2 public parts in my WD JAVA dc as 'BUILD' dependencies as shown in one [Blog|http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/4512] [original link is broken] [original link is broken] [original link is broken];.

The application compiles fine but at runtime the application gives below error:

java.lang.NoClassDefFoundError: com.sapportals.portal.prt.runtime.PortalRuntime

at com.sapportals.wcm.util.usermanagement.WPUMFactory.init(WPUMFactory.java:60)

at com.sapportals.wcm.util.usermanagement.WPUMFactory.getUserFactory(WPUMFactory.java:74)

at sce.com.FilePoc_View.onActionSendFile(FilePoc_View.java:165)

at sce.com.wdp.InternalFilePoc_View.wdInvokeEventHandler(InternalFilePoc_View.java:173)

at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)

at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)

at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)

at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)

at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)

at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)

at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:319)

at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)

at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)

at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)

at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)

at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)

at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)

at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)

at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)

at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)

at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)

at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(AccessController.java:219)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)

The error comes at lbelow code line

:IUser epUser =WPUMFactory.getUserFactory().getEP5User(sapUser);

Please help.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Sumit,

Please check if you have followed the following steps:

1. Created an external library. Put all the jars in Lib folder by either import wizard or copy/paste. Selected all the jars and create compile time and run time public parts(pp) for it which you can see under 'def' folder. Build the DC and activate it.

2. Create a J2EE Library to deploy the jars in external library. Add compile time public part for Build Time Dependency and run time pubic part for build time, deploy time and run-time Dependency under used DC (Select the Public parts only under active DCs tab). Building the DC generates a .sda file which needs to be deployed on the J2EE server using conext menu. Activate the DC

3.Now add the def pubic part of J2EE library DC for Build Time, Deploy Time and Runtime in your target Web Dynpro DC.

4. Add <VENDOR NAME>~<J2EE Library DC Name already deployed on server> under Library References of the Web Dynpro DC. Build and Deploy DC and check.

Probably you need to correct 2nd and 4th Step. Its because Run Time Dependency was not added.

Regards,

Tushar S

Answers (2)

Answers (2)

former_member188556
Active Contributor
0 Kudos

Is this a local DC or active dc?

Regards

BP

p330068
Active Contributor
0 Kudos

Hi Sumit,

Please check this : - /people/valery.silaev/blog/2005/09/14/a-bit-of-impractical-scripting-for-web-dynpro and check the dpendancy

Hope it helps

Regards

Arun

Former Member
0 Kudos

Hi Arun,

I tried that option also.

In that case I face the below issue :

The WD Applocation is not deployed properly on the server. When I go and check the Libraries used by DC it shows 'UNKNOWN" status for the J2EE dc.

I also checked the .EAR file by extracting it, it does not contain the .sda file of the J2EE library dc.

Please help.

Regards,

Sumit Oberoi