cancel
Showing results for 
Search instead for 
Did you mean: 

How to customize Critical error when backend user is locked in ESS

Former Member
0 Kudos

Hello,

I am Gettign Critical error when backend user is locked on portal  in ESS,instead of critical error can we show user friendly message?

Kindly guide me how to give customized message and  from where Web dynpro java OR from R/3?

Thanks & Regards

Deepa.

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Deepa,

     Did you solve the problem? We are also facing the same issue

Thanks and Regards,

Teja

Former Member
0 Kudos

Hi Deepa,

Please give the details of your issue with screenshot, and what exactly you need.

Regards,

Mohsin.

Former Member
0 Kudos

This issue arises mostly in dev as developers will be playing around and testing etc. In production this won't happen, atleast from my perspective, its not worth putting effort here.

Former Member
0 Kudos

Hello Mohsin,

When Userid of backend system is locked i am getting below exception after logging into portal.

Instead of this can we give user defined message?

where i need to write code in web dynpro java?

siddharthrajora
Product and Topic Expert
Product and Topic Expert
0 Kudos

This error is from JAVA side. http://scn.sap.com/thread/292647 We went through SAP Note 962319 and made the following changes using Visual Admin Tool: "Licensing Adapter" -> "General" -> "SystemType" ->Production "Properties" -> "HTTP Provider" -> "DetailedErrorResponse" to "false".

Former Member
0 Kudos

Hello Siddharth.

The settting which u told will be applicable to all Exception..i want to give user friendly message for that exeception only..is there any way i can give message from code  in web dynpro java or which RFC get executed first in ESS which check user's login and all so that i can give message thr itself?

Former Member
0 Kudos

Please paste the complete error trace, we can determine in which DC the changes has to go. I think its in ess/per or in pcuigp we have to make changes.

Former Member
0 Kudos

Hello,

Here is the stack trace.

com.sap.mw.jco.JCO$Exception: (103) RFC_ERROR_LOGON_FAILURE: User is locked. Please notify the person responsible
at com.sap.mw.jco.MiddlewareJRfc.generateJCoException(MiddlewareJRfc.java:557)
at com.sap.mw.jco.MiddlewareJRfc$Client.connect(MiddlewareJRfc.java:1097)
at com.sap.mw.jco.JCO$Client.connect(JCO.java:3676)
at com.sap.mw.jco.JCO$Pool.initPool(JCO.java:5215)
at com.sap.mw.jco.JCO$PoolManager.getClient(JCO.java:7120)
at com.sap.mw.jco.JCO$PoolManager.getClient(JCO.java:7074)
at com.sap.mw.jco.webas.WebDynproExtension.addClientPool(WebDynproExtension.java:150)
at com.sap.mw.jco.webas.WebDynproExtension.addClientPool(WebDynproExtension.java:91)
at com.sap.tc.webdynpro.serverimpl.core.sl.AbstractJCOClientConnection.createPool(AbstractJCOClientConnection.java:321)
at com.sap.tc.webdynpro.serverimpl.core.sl.AbstractJCOClientConnection.checkPoolEntry(AbstractJCOClientConnection.java:302)
at com.sap.tc.webdynpro.serverimpl.core.sl.AbstractJCOClientConnection.getClient(AbstractJCOClientConnection.java:441)
at com.sap.pcuigp.xssfpm.wd.BackendConnections.connectModelInternal(BackendConnections.java:326)
at com.sap.pcuigp.xssfpm.wd.BackendConnections.initBackend(BackendConnections.java:266)
at com.sap.pcuigp.xssfpm.wd.BackendConnections.connectModel(BackendConnections.java:167)
at com.sap.pcuigp.xssfpm.wd.wdp.InternalBackendConnections.connectModel(InternalBackendConnections.java:229)
at com.sap.pcuigp.xssfpm.wd.FPMComponent$FPM.connectModel(FPMComponent.java:864)
at com.sap.pcuigp.xssfpm.wd.FPMComponent$FPMProxy.connectModel(FPMComponent.java:1094)
at com.sap.pcuigp.xssfpm.wd.BackendConnections.init(BackendConnections.java:155)
at com.sap.pcuigp.xssfpm.wd.wdp.InternalBackendConnections.init(InternalBackendConnections.java:225)
at com.sap.pcuigp.xssfpm.wd.FPMComponent.wdDoInit(FPMComponent.java:204)
at com.sap.pcuigp.xssfpm.wd.wdp.InternalFPMComponent.wdDoInit(InternalFPMComponent.java:105)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:161)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:227)
at com.sap.tc.webdynpro.progmodel.components.Component.initController(Component.java:258)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:206)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:590)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doPreprocessing(ClientApplication.java:1457)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doPreprocessing(ApplicationSession.java:660)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:349)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:326)
at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.delegateToRequestManager(AbstractExecutionContextDispatcher.java:62)
at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForRequestManager.service(DispatchHandlerForRequestManager.java:39)
at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForRequestManager.service(DispatchHandlerForRequestManager.java:46)
at com.sap.engine.services.servlets_jsp.server.deploy.impl.module.IRequestDispatcherImpl.dispatch(IRequestDispatcherImpl.java:270)
at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.ExecutionContextDispatcher.dispatchToAppContext(ExecutionContextDispatcher.java:68)
at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:53)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:245)
at com.sap.tc.webdynpro.clientserver.embedding.JavaApplicationProxy$Runner.callRequestManager(JavaApplicationProxy.java:1244)
at com.sap.tc.webdynpro.clientserver.embedding.JavaApplicationProxy$Runner.callEmbeddedApplication(JavaApplicationProxy.java:1122)
at com.sap.tc.webdynpro.clientserver.embedding.JavaApplicationProxy$StartCommand.doExecute(JavaApplicationProxy.java:1575)
at com.sap.tc.webdynpro.clientserver.embedding.JavaApplicationProxy$AbstractCommand.execute(JavaApplicationProxy.java:1488)
at com.sap.tc.webdynpro.clientserver.embedding.JavaApplicationProxy$Runner.execute(JavaApplicationProxy.java:1028)
at com.sap.tc.webdynpro.clientserver.embedding.JavaApplicationProxy.execute(JavaApplicationProxy.java:859)
at com.sap.tc.webdynpro.clientserver.embedding.JavaApplicationProxy.start1(JavaApplicationProxy.java:637)
at com.sap.tc.webdynpro.portal.pb.impl.JavaApplicationProxyAdapter.create(JavaApplicationProxyAdapter.java:166)
at com.sap.portal.pb.PageBuilder.updateApplications(PageBuilder.java:1691)
at com.sap.portal.pb.PageBuilder.createPage(PageBuilder.java:411)
at com.sap.portal.pb.PageBuilder.init(PageBuilder.java:655)
at com.sap.portal.pb.PageBuilder.wdDoInit(PageBuilder.java:227)
at com.sap.portal.pb.wdp.InternalPageBuilder.wdDoInit(InternalPageBuilder.java:137)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:161)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:227)
at com.sap.tc.webdynpro.progmodel.components.Component.initController(Component.java:258)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:206)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:590)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doPreprocessing(ClientApplication.java:1457)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doPreprocessing(ApplicationSession.java:660)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:349)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:326)
at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doContent(AbstractDispatcherServlet.java:87)
at com.sap.tc.webdynpro.serverimpl.wdc.DispatcherServlet.doContent(DispatcherServlet.java:89)
at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doPost(AbstractDispatcherServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:152)
at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:38)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:457)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:278)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Caused by: RfcException: [null]
    message: User is locked. Please notify the person responsible
    Return code: RFC_SYS_EXCEPTION(3)
    error group: 103
    key: RFC_ERROR_LOGON_FAILURE

at com.sap.mw.rfc.api.RfcApi.RfcOpen(RfcApi.java:647)
at com.sap.mw.jco.MiddlewareJRfc$Client.connect(MiddlewareJRfc.java:1089)
... 101 more

Former Member
0 Kudos

Check the pcuigp's xssfpm DC and also put an http break point in FM HRXSS_SER_INITSERVICE

ChrisSolomon
Active Contributor
0 Kudos

If you want it specific to your application (not across all), then you are more than likely going to need to enhance your application to do "nicer" error handling and present this to the user....instead of "bubbling up" the exception to be handled generically.

But as said already....this should not be the case in ESS in about 95% of cases (for example only if an HR Admin was in PA30 on an employee at the same time that employee was also in ESS would you possibly get this or another one you might see is employee is locked due to payroll being run)...so you need to weigh if it is really worth it to put in the time and money to do this. Beware of over engineering!