cancel
Showing results for 
Search instead for 
Did you mean: 

What is the flow of contollers load/execution in a Web Dynpro applicatio

Former Member
0 Kudos

Hi Frndz..

As we now that we have the controllers in WDP like

1)Component contriller 2)CustomControoler 3) View Controller 4)Interface Controller 5) Interface view Controller.

Now i want to know what is the flow of thse controllers will load and execute when we run an Web Dynpro app.

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi Rajesh

In general, dependent nodes are represented by a single node instance, whose content - that is, its node collection - changes each time the lead selection of the parent node changes. Such context nodes are known as single nodes.

This means that the user can only access data of the child nodes that belong to the code element (lead selection) currently selected in the parent node. Therefore, Web Dynpro allows you to define additional non-singleton nodes. Each non-singleton node has one node instance for each node element of the parent collection at runtime.

The advantage is that each instance can be accessed directly. When using non-singleton nodes, the nodes are only created when the node values are retrieved. This can save resources that otherwise would slow down the performance of the application.

Note that singleton nodes should only be considered singleton in relation to their parent nodes but not in relation to the context. Each instance of a non-singleton parent node has exactly one instance of the singleton node.

The singleton property can be defined for all dependent context nodes. It is either true or false:

- singleton = true: Newly defined context nodes are of type singleton by default. This means that a child node instances exists for each parent node, not for each node element in the parent node. The content of the child node, that is, the list of the node elements it contains, changes each time the lead selection of the parent node changes.

- singleton = false: A child node instance exists for each node element in the parent node. The content of this node instance does not change. The node instances of the child node can be accessed using generated context interfaces.

The varying relation between child and parent nodes is important for singleton and non-singleton nodes. Whereas singleton nodes are related to the parent node, non-singleton nodes always refer to a node element of the parent node at runtime.

Child nodes of type Singleton always refer logically to an element of the parent node, that is, the one in the lead selection. If the parent node does not have a lead selection, then the singleton child node is invalid, even though it exists.

Supply function

A supply is needed primarily to populate a singleton node's element collection.

Any context node can have a supply function defined for it.

Check this link for supply function

https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/60086bd5-9301-2b10-6f97-a14366a5...

Thanks,

Tulasi

Edited by: Tulasi Palnati on Jan 28, 2009 12:43 PM

Former Member
0 Kudos

Hi Rajesh,

One simple way to check how the flow happens when running a application.

add the below line in the wdInit() method of each contoller

wdComponentAPI.getMessageManager().reportSuccess("Indide and write the contoller name like component or view controller etc.");

This will print the message according to the controllers called.

Hope this will certainly help.

Regards

Narendra

Former Member
0 Kudos

Hi Rajesh,

As i have mentioned Interface controller are used to communicate between two different components, So it is called when you require the functionality like this.

But when a application Runs first of all it calls Component controller / CustomController(If you have used it in your application) then the flow passes to View Controller which calls the respective view based on evnets.

Hope this will clarify.

Regards

Narendra

Former Member
0 Kudos

Hi Rajesh,

To understand the concept of Controllers and their flow please go through the page 17 and 24 of the following article:

https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a048387a-0901-0010-13ac-87f9eb64...

Hope it helps.

Regards.

Rajat

Former Member
0 Kudos

Hi Rajesh,

Component Interface Controller->

Interface For external users of a component: data transfer eventing etc. By this you can interact with other components like sharing some methods etc.

Component Interface View Controller->

Controller for visual representation of a component. Handle startup plug, handle exit/outbound plug of a component interface view.

Component controller->

Default controller inside every web dynpro component own context events, public method.

CustomController->

Additional controller for encapsulation seperate logic. Its is same as the default controller.

View Controller->

Controller for View with own context, public methods,plug events,handlers,action event handlers managing user interaction.

First of all the Component controller is called followed by the View Controllers when running the application.

Hope this will clarify

revert if require more info.

Regards

Narendra

Former Member
0 Kudos

Hi Narendra..

Thanks for ur prompt reply,ans thanks for inputs also in addition to ur inputs i want to know the flow of execution of these controllers, means when we call any web web dynpro app which controller will execute first and from that controller flows passes to which controller(next).

And also i need an information about the supply function and singleton with an example , i saw some of the informtion about these from http://help.sap.com but got any clear picture

Thnaks in Advance

Regards

Rajesh