cancel
Showing results for 
Search instead for 
Did you mean: 

keep session data when opening a new window

Former Member
0 Kudos

Hi all,

In one of my developpements in WDA I open a new external window (in another browser), in which another WDA is displayed. In quality and production environment, I have a technical architecture with several application servers, managed by a SAP web dispatcher. My problem is that in those environement, the user get the login screen when opening the new external window.

It looks like the session is not saved and not used by the new external window. I have been told by the admin guy to make my WD application "stateful", but I can't find how to do it by program, and I don't know if this has to be done by customizing somewhere else (for example in the SICF transaction).

If this has to be done by program, I have found the method CL_HTTP_SERVER->SET_SESSION_STATEFUL, but I can't find how to get the instance of the class CL_HTTP_SERVER.

If anybody has encountered the same problem, or has a lead to investigate, thanks a lot!

Accepted Solutions (1)

Accepted Solutions (1)

former_member184578
Active Contributor
0 Kudos

Hi,

To make the application stateful, follow the below steps:

Execute SICF transaction, Navigate to default_host-> sap-> bc -> webdynpro -> sap ->

Then navigate to your application. Double click on it. Go to 'Handler List' tab and then in edit mode enter the class CL_HTTP_EXT_DEMO in the Handler List table.

Now, when executing your application in external window, pass the parameter stateful with value 1

Ex:  http://XXXXXX:PPPP//sap/bc/webdynpro/sap/<application>?stateful=1

Please note that, when you make the application stateful, it may result in poor performance.

Hope this helps u,

Regards,

Kiran

Former Member
0 Kudos

Thanks !

Your reply helped me to make the application stateful, by creating my own specific class (inheriting IF_HTTP_EXTENSION), and doing a call like server->set_stateful (exemple in the demo class).

However, my original problem of session is not fixed. I still have a new session created when I use the method create_external_window ...

former_member184578
Active Contributor
0 Kudos

Hi,

 I still have a new session created when I use the method create_external_window

IMHO, You really can't restrict it. Sometimes the application even open in different application server due to load balancing.

Ask your basis team to activate SSO ( single sign-on) so you don't have to log on each time!

Regards,

Kiran

Answers (0)