Skip to Content

Module Interfaces – how to call a module from another module

This is just an example from the existing WCEM Standard Code.

Main module has headerView.xhtml which calls LoginRegisterAnchor using tag <wec:moduleInterface>

<wcf:moduleInterface id= "iSIn" name ="" rendered ="#{cc.vch.userActive}" viewComponent ="mainpageLoginRegisterAnchorView"/>

Also, in the headerView.xhtml, we can see below one calling loginInfo.xhtml

<wcf:moduleInterface id= "iLI" name= "" viewComponent ="mainpageLoginInfoView"/>

For both loginInfo.xhtml and loginRegisterAnchor.xhtml – if you see ui-repository.xml, both point to VCH:

<ViewComponent name="loginRegisterAnchor"             componentHandlerClassName="" />
       <ViewComponent name="loginInfo"
             componentHandlerClassName="" />


Answer from forum:

In your case (headerView.xhtml):

Main module declares that it wants to use a module interface ‘’ in its metadata.xml

In the main module, sap -> md, you can see metadata.xml has

<interfaceDependency dependencyType="soft"


<interfaceDependency dependencyType="soft"

                   interfaceName="" namespace="sap" />

User module declares that it implements ‘’ in its interface-definition.xml, and that one view with name ‘mainpageLoginInfoView’ is exposed


            View Interface for the log on link and status used in the header





      <!– View Interface for the user name display used in the header  –>




User module provides the implementation details in its metadata.xml. It states

<uiInclude name=”mainpageLoginInfoView”


<!– VIEW Interface implementations –>




So you need to look for include  user/systemlinks/loginInfo_INC!

– User Module – endter the UIInclude in the ui-repository.xml


To report this post you need to login first.


You must be Logged on to comment or reply to a post.

Leave a Reply