cancel
Showing results for 
Search instead for 
Did you mean: 

How to correctly navigate between BSP controllers?

Former Member
0 Kudos

We have a BSP application called in the browser via the main controller "main.do". Via a link the user can navigate to another controller "usereinstellungen.do" like this:

<htmlb:link id        = "settings"

            text      = "Settings"
            tooltip   = "Change User Settings"
            reference = "usereinstellungen.do" />


This works fine, the new controller's view is loaded in the browser. I noticed however that the browser's address bar still shows the address with "main.do", so apparently the other controller (view) is loaded in a frame.


Now to my problem. In the view of the second controller there is a link again that should jump back to the main application, i.e. from "usereinstellungen.do" back to "main.do". However, as soon as the user clicks on that link the browser just shows an empty white page. Nothing else happens.


I checked in ST22, but no dump. I also set a breakpoint in the INIT and REQUEST methods of the main controller ("main.do"), but these don't fire. Those breakpoints do fire however when I force to reload the page via F5 key in the browser.


Any ideas what could be the problem here?

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Dear Matthias,

Typically, you specify the next page at the OnInputProcessing event. So that you now process the appropriate next page depending on the value of EVENT_ID, use the global object, NAVIGATION. The interface IF_BSP_NAVIGATION provides a template for the global object NAVIGATION. Both this interface and the class that implements it, CL_BSP_NAVIGATION, are part of the Internet Communication Framework (ICF). Among other things, they offer the methods NEXT_PAGE and GOTO_PAGE for specifying the next page.

next_page

If you have defined a navigation structure for your application, specify the name of the navigation request as the actual parameter. You define the navigation requests and structure in the BSP application attributes.

NEXT_PAGE( ’TO_PAGE2’ )

goto_page

Specify the name of the next BSP as the actual parameter.

GOTO_PAGE( ’PAGE2.HTM’ )

When you use the method NEXT_PAGE or GOTO_PAGE, an HTTP redirect is generated; the browser thus generates another HTTP request. This new request then causes the next page specified in the logic to be called (explicit navigation). If you do not generate an HTTP redirect, this is known as implicit navigation. In such cases, the other events on the current page are processed (beginning with OnInitialization).

you may check the BSP sample application "SBSPEXT_HTMLB" > Link.bsp

Kind regards,

Adrian