cancel
Showing results for 
Search instead for 
Did you mean: 

Java application doesn't work in EP

Former Member
0 Kudos

Hi Gurus!

I'm with the following problem:

I did an application in NWDS and when I execute from NWDS it works, but when I deploy into the EP 6(SP12) it doesn't work.

The log is in the end of this message.

How can I make the EP to recognize the WDUMException class?

Regards,

Adriano

The log error is:

#1.5#001143594D2500610000003F0000203C00040421ACBA4563#1130442585188#com.sap.portal.portal#sap.com/irj#com.sap.portal.portal#Admin#3504####d2cbc240472211dacce8001143594d25#SAPEngine_Application_Thread[impl:3]_4##0#0#Error#1#/System/Server#Java###Exception ID:05:49_27/10/05_0007_2164550

[EXCEPTION]

#1#com.sapportals.portal.prt.runtime.PortalRuntimeException: PortalRuntimeException

at com.sapportals.portal.prt.core.PortalRequestManager.handleRequestException(PortalRequestManager.java:921)

at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:803)

at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)

at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)

at java.security.AccessController.doPrivileged(Native Method)

at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)

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

at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:154)

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

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

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

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

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

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

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

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

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

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

at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)

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

at java.security.AccessController.doPrivileged(Native Method)

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

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

Caused by: java.lang.NoClassDefFoundError: com/sap/tc/webdynpro/services/sal/um/api/WDUMException

at bc.tabelas_carreira.TabelasCarreira.getPage(TabelasCarreira.java:55)

at com.sapportals.portal.htmlb.page.PageProcessorComponent.getPage(PageProcessorComponent.java:193)

at com.sapportals.portal.htmlb.page.PageProcessorComponent.doOnNodeReady(PageProcessorComponent.java:62)

at com.sapportals.portal.prt.component.AbstractPortalComponent.handleEvent(AbstractPortalComponent.java:388)

at com.sapportals.portal.prt.pom.ComponentNode.handleEvent(ComponentNode.java:252)

at com.sapportals.portal.prt.pom.PortalNode.fireEventOnNode(PortalNode.java:369)

at com.sapportals.portal.prt.pom.AbstractNode.addChildNode(AbstractNode.java:340)

at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:642)

... 21 more

Accepted Solutions (1)

Accepted Solutions (1)

detlev_beutner
Active Contributor
0 Kudos

Hi Adriano,

is the application a WebDynpro Application? Or what are you deploying? WDUMException is a WebDynpro Exception, but the rest of the stack trace doesn't sound like WD.

Best regards

Detlev

Former Member
0 Kudos

Detlev,

I'm not using a WebDynpro application. I found a source (in the SDN forum) to get the Portal User ID and mapped R/3 User ID. The source is below.

try {

IWDClientUser clientUser = WDClientUser.getCurrentUser();

IUser sapUser = clientUser.getSAPUser();

IUserMapping userMapping = UMFactory.getUserMapping();

Map map=null;

//UIDPW

//SAPLOGONTICKET

name =userMapping.getR3UserName (sapUser,"SAPLOGONTICKET",map,true);

}

catch (WDUMException e) {

e.getMessage();

e.printStackTrace();

}

I'm using JCO to connect to R/3 System and I need the R/3 user ID mapped in the Portal.

Is there other way to do this?

Best regards,

Adriano

detlev_beutner
Active Contributor
0 Kudos

Hi Adriano,

the given source in fact is part of a WebDynpro application. But you can get rid of the WD part, just use the pure EP/UME part:

try {
  // request is the actual PortalComponentRequest
  IUser sapUser = request.getUser();
  IUserMapping userMapping = UMFactory.getUserMapping();
  Map map=null;
  //UIDPW
  //SAPLOGONTICKET
  name = userMapping.getR3UserName(sapUser,"SAPLOGONTICKET",map,true);
} catch (Exception e) {
  e.getMessage();
  e.printStackTrace();
}

Hope it helps

Detlev

PS: Please consider rewarding points for helpful answers on SDN. Thanks in advance!

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Detlev!

Thanks, it solved the problem, but we have the following scene: this dynamic user(usrR3) and its respective password must be informed as a parameters to a new JCOClient. We got the user through its aid, but how to get the password? There are a way to create this client without the password?

JCOClient jcoClient = JCO.createClient(client, usrR3, ? , lang, ashost, sysnr);

Thank you!

detlev_beutner
Active Contributor
0 Kudos

Hi Alex,

maybe you can retrieve the mapped data through

IUserMapping umap = UMFactory.getUserMapping();
IUserMappingData umd = umap.getUserMappingData(sysLandscObj, user);
Map map = new Map();
umd.enrich(map);

also see http://media.sdn.sap.com/html/submitted_docs/60_sp2_javadocs/ume/com/sap/security/api/umap/IUserMapp...

- if userID and PW are maintained as mapped data for your R/3 system?!

Hope it helps

Detlev