on 02-13-2006 4:37 PM
Hi all,
I just need to get the http user logged using e.g. the request object (no portal user or R3 user, only the http user currently logged) from a WD.
This is very urgent, I hope in your help.
Vito Palasciano
Hi Vito,
to get IUser from servlet use:
com.sap.security.api.IUser sapUser = com.sap.security.api.UMFactory.getAuthenticator().forceLoggedInUser(request, response);
from WD:
IWDClientUser wdUser = WDClientUser.getCurrentUser();
IUser user = wdUser.getSAPUser();
Best regards, Maksim Rashchynski.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Vito,
Don`t really understand what do you mean - "http user". If your application is running under WAS and is available only for authenticated users, you are dealing with UME user (IUser).
IUser is located (for example) here "C:\Program Files\SAP\JDT\eclipse\plugins\com.sap.security\lib\com.sap.security.api.jar"
Best regards, Maksim Rashchynski.
When an user open a page (that a generate with WD)usually insert a login (http user) and a password. I want to get this login (your code get the user data from SAP Portal, and I haven't a SAP portal, in fact it catch an exception), I just want to take the login with which the user access the page.... e.g. "user", "administrator", etc. etc.
I hope this help to clarify the problem. I hope in a solution. Thanks.
Vito P.
<b>Here the exception:</b>
java.lang.NullPointerException
at com.sap.givaudanhome.comp.HomeView.wdDoInit(HomeView.java:106)
at com.sap.givaudanhome.comp.wdp.InternalHomeView.wdDoInit(InternalHomeView.java:115)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doInit(DelegatingView.java:61)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
at com.sap.tc.webdynpro.progmodel.view.View.initController(View.java:274)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:540)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:422)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:130)
at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:41)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.displayToplevelComponent(ClientComponent.java:134)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:392)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:608)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:248)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:48)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
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: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(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)
<b>I tried to use this:
String loggedInUserName=System.getProperty("user.name");
but this get the wrong information!</b>
How to get the login user? I thinked it was more easy!
Thanks.
In SAP documentation
http://help.sap.com/saphelp_nw04/helpdata/en/80/45da9619d24b61bb869c31ef3b780a/frameset.htm
I read that it's possible to get the user data with this:
IUserFactory userFactory= UMFactory.getUserFactory();
IUser myUser = userFactory.getUser(request.getUser().getUserId());
The problem is that in the Web Dynpro, <u>the request object cannot be resolved</u>. Any ideas?
It' s very important to solve this issue. Thanks in advanced.
Vito
User | Count |
---|---|
85 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.