Component Interface , INterface controller in WEB UI

Hi Experts,
Can anyone tell me what is a component interface, component usage , Interface controller and interface view?
I am a beginner in WEB UI and is getting confused with these terms.
Please help.
Many Thanks,
Neeraj

Hi,
component interface -> interface view:
Here you can define which Comp/Window should be accessable from outside the component
For example: COMP_1/MainWindow in component interface means this can be accessed as usage from other component
component interface -> interface controller:
In this node there is 2 child nodes: Context and Events:
I don't know how to use Events. But in Context you can add context node from component controller, which can be accessed from outside. This is specially important, when you want to bind two context nodes from two different components.
You can see how this can be used in component controller class in the method WD_USAGE_INITIALIZE
component usage:
Here you can define a usage of of other component.
For example: In your COMP_2 you can create a usage from other component (COMP_1/MainWindow).
Regards,
Steve

Similar Messages

  • Regarding Component interface controller

    hi all
    Can anyone explain me use of Component Interface Controller under Component with example.
    Thanks in advance
    Imityaz

    Hi,
    Interface Controller
    One Web Dynpro Component may declare the use of another Web Dynpro Component to form a u201CParent-Childu201D usage relationship. In such cases, the only point of interaction between the parent and child components is the functionality found in the childu2019s interface controller.
    if an interface controller is part of a component interface, the controller editor is in change mode and the context, the events and the methods can be implemented and edited directly.
    Refer this thread,step by step procedure is there.
    /docs/DOC-8061#61 [original link is broken]
    http://help.sap.com/saphelp_nw70/helpdata/EN/47/45641b80f81962e10000000a114a6b/frameset.htm
    http://help.sap.com/saphelp_nw70/helpdata/EN/44/0dcafa2d9d1ca2e10000000a11466f/frameset.htm
    Regards,
    Sunaina Reddy T

  • IN Compsition Environment: interface controller in web dynpro

    Hi All,
    I've installed NW CE 7.1 and am trying to trigger an event created in the Interface controller. I observed that the methods and the events declared in the interface controller are not accessible in the view level. Has the WD design time concepts undergone a change?. In short, I'm not able to add the Interface controller as a required controller in any of the views that are present inside the same component.
    Any clues on this?
    Regards
    Satish.

    Hi All,
    I've installed NW CE 7.1 and am trying to trigger an event created in the Interface controller. I observed that the methods and the events declared in the interface controller are not accessible in the view level. Has the WD design time concepts undergone a change?. In short, I'm not able to add the Interface controller as a required controller in any of the views that are present inside the same component.
    Any clues on this?
    Regards
    Satish.

  • Compsition Environment: interface controller in web dynpro

    Hi All,
    (I know this is not right place to raise this question but if anyone know)
    I've installed NW CE 7.1 and am trying to trigger an event created in the Interface controller. I observed that the methods and the events declared in the interface controller are not accessible in the view level. Has the WD design time concepts undergone a change?. In short, I'm not able to add the Interface controller as a required controller in any of the views that are present inside the same component.
    Any clues on this?
    Regards
    Satish.

    Since one dedicated link is there between
    Comopnent  and Interface controller.

  • Design question: Interface Controller vs. component controller

    Hello,
    I have a component A. This component has a component controller (compController) and an interface controller (intController).
    Component controller has method compMethod()
    Interface controller has method intMethod()
    - Am i allowed to call intMethod from component controller? ( i'm pretty sure this isnt bad design because this is also done in the tutorial on eventing)
    - Am i allowed to call compMethod from intController or is this bad design?
    - Am i allowed to subscribe compController to event in intController or is this bad design?
    Kind regards,
    Joren

    Hi Joren,
    like Valery already pointed out, we recommend not to implement any logic in the component interface controller but only implement methods used for delegating logic to the component controller. This is based on the fact, that the component interface controller will be implemented by the component controller in the the next major SAP NetWeaver Release. This means that it will not have its own Java class like in NW04 and NW04s. To simplify migration the interface controller code should be as slim as possible by applying the delegation principle.
    You wrote:
    <i>- Am i allowed to call intMethod from component controller? ( i'm pretty sure this isnt bad design because this is also done in the tutorial on eventing)</i>
    Yes, my (very old) tutorial on serverside eventing exposes a public method <i>fireEvent()</i> which is invoked by the component controller. In early versions of NW04 the wdFireEventInnerEvent() method was not exposed in the IPublic-API of the component interface controller but only in the IPrivate-API. Therefore an additional method fireEvent() must be defined to fire the event from another controller. As a negative side effect, this public fireEvent() method is also exposed by the IExternal-API of the component interface  controller so that the event can be fired from outside (by the Embedder component) which is not desired in most cases.
    Meanwhile the wdFire<event name>() method is exposed by the IPublic-API of the component interface controller, so that the public method fire<Event name>() is no longer needed.
    I will update the tutorial in this respect so that it again propagates best practices.
    Regards, Bertram

  • How to create a method in Interface Controller

    Hi Guys,
            I am working with webdynpro ABAP sample application "Component usage" . There i got a issue like i am not able to create a method in Interface controller. There i am not able to edit anything. Can anybody please let me know how to do that.
                Thanks In Advance
    Regards
    Ravikumar

    Hi Ravi,
              Check This
    If one Web Dynpro component (parent component) needs access to another Web
    Dynpro component (child component) the parent component can declare the use
    of the child component. A specific component usage instance is then created and
    the parent component accesses the functionality of the child component via its
    component interface controller.
    The only parts of a Web Dynpro component that are visible to the user, are the
    interface controller and the interface view(s).
    All Web Dynpro components have only one interface controller. Via the
    interface controller, data, methods, and event handlers can be exposed to
    other components.
    Interface views represent the visual interface of a Web Dynpro component.
    There is a one-to-one relationship between a Window and an interface view.
    Each time a window is defined, a related interface view is automatically
    generated, which makes the window accessible from outside the component.
    The interface view only exposes those inbound and outbound plugs to the
    component user that have the interface property checked. Methods and
    context data of the window are not accessible via the related interface view.
    If the component has no views, there is no need to have Windows. In this
    case, the component will not implement an interface view. Such components
    having no visual interface are known as faceless components.
    Regards
    Sarath

  • Use of interface controller

    HI
    can u please explain me use of interface controller with simple example along with the code
    Thanks
    kishore

    Hi Kishore,
    Here r the few facts abt interface controller:-
    Used to control access from other components.
    Is created automatically when a component is created.
    Exists as long as its component is embedded in another
    component.
    This controller contains data, methods, and events that can be used by other Web Dynpro components.
    A componentu2019s interface controller can be used by the embedding component for mappings, eventing, etc.
    Interface for external users of a component: data transfer,
    eventing.
    Interface Controller
    One Web Dynpro Component may declare the use of another Web Dynpro Component to form a u201CParent-Childu201D usage relationship. In such cases, the only point of interaction between the parent and child components is the functionality found in the childu2019s interface controller.
    There is a usage declaration arrow pointing from the component controller to a child component. Notice that the arrow joins the child component at the top right-hand corner. This is the location of the childu2019s interface controller.
    At no time does the Web Dynpro Runtime interact with a componentu2019s interface controller. It is only ever used to form a Parent-Child relationship between two Web Dynpro Components.
    Check the links:-
    http://help.sap.com/saphelp_nw70/helpdata/EN/47/45641b80f81962e10000000a114a6b/frameset.htm
    http://help.sap.com/saphelp_nw70/helpdata/EN/44/0dcafa2d9d1ca2e10000000a11466f/frameset.htm
    hope dat may help u..
    Regards,
    Deepak

  • Purpose of Interface controller

    Hi,
    What is the purpose of Interface controller in webdynpro?

    hi
    Interface Controllers
    Interface Controller
    One Web Dynpro Component may declare the use of another Web Dynpro Component to form a “Parent-Child” usage relationship. In such cases, the only point of interaction between the parent and child components is the functionality found in the child’s interface controller.
    There is a usage declaration arrow pointing from the component controller to a child component. Notice that the arrow joins the child component at the top right-hand corner. This is the location of the child’s interface controller.
    At no time does the Web Dynpro Runtime interact with a component’s interface controller. It is only ever used to form a Parent-Child relationship between two Web Dynpro Components.
    SAP strongly recommends that no application coding be written directly into the methods of the interface controller. Instead, the public methods of the interface controller should simply delegate their functionality to a method of the same name in the component controller. This will greatly reduce the conversion task required when upgrading to the next release
    Interface View Controller
    The visual interface of a Web Dynpro component is supplied via the Interface View. This behaves much like a UI element in so much that it can be embedded into the view layout of a parent view as a single, reusable entity.
    Once the interface view of the child component has been embedded into a view layout belonging to the parent component, the parent component then has programmatic access to the visual interface of the child component through the child’s interface view controller.
    you can also see more details in this link
    http://help.sap.com/saphelp_nw04/helpdata/en/9c/a5863f455f3417e10000000a114084/frameset.htm
    Regards
    Chandran S

  • Call WebDynpro component interface

    Hi experts
    We have developed a WebDynpro component to export context data node to excel file using jakarta poi libs.
    This component have all logic to generate the excel file, and have only one method in component interface controller, this method is called with other WebDynpro components and work fine.
    Now we have new requeriments, we need to generate the same excel file with one scheduled task in KM.
    Anyone know if is possible to call our WebDynpro component interface method from scheduled task?
    Best regards

    Hi Xavier
    If I were you I'd just separate the logic to generate the excel from the WebDynpro component. If the logic is isolated in Java lib it can be invoked from WebDynpro component and also from the KM Scheduler. There is no necessity to invoke the whole WebDynpro component from KM scheduler. Moreover, I think that it's not possible.
    BR, Siarhei

  • Map context node  web dynpro to context DATA of  interface controller ALV

    Hi Experts,
    I have started creating simple ALV by following the example in the below mentioned link.
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/3439404a-0801-0010-dda5-8c14514d690d
    I have completed 95% development but stuck with last bit of
    Set data to ALV for display (via reverse context mapping).
    When Click on the Controller Usage button. The component controller of your Web Dynpro component DOES NOT appears on the right side of the screen.
    Therefore I can not  Map context node NODE_FLIGHTTAB of your Web Dynpro component to context DATA of the interface controller of the ALV component.
    Could you please shed me light on this.
    Your time and help much appreciated.
    Best Regards
    CB

    Hi Chandra,
    You need to add component controller first. Just go to the property tab of interface controller of the alv component and click on create button and then add the component controller. After that you'll be able to see the node in the context tab.
    Regards
    Arjun

  • Doubts while doing  example on WDJ-Using Web Dynpro Component Interface

    Hi
    I am doing the example mentioned in the PDF file WDJ - Using Web Dynpro Component Interface Definition.
    In the PDF file its mentioned the following code inside onActionCreateDC1:
    g_Usage.createComponent("com.sap.wd.childdc1comp.ChldDC1Comp");
    wdThis.wdGetWDCompInterfInstInterface().passInfo(
    "Created Child DC 1");
    I have one query that what is com.sap.wd.childdc1comp.ChldDC1Comp?Is it the component name of DC or the package name of DC?
    I have deployed the application.When i click on button Create Child DC1 i am getting follwing exception:
    com.sap.tc.webdynpro.services.sal.deployment.api.WDDeploymentException: Failed to load deployable object part 'com.wartsila.test.ChileDC1Comp', type 'Component' of deployable object 'wartsila.com/DP_TutWDInterfaces'.
    When i click on Create Child DC2 i am getting follwing exception:
    com.sap.tc.webdynpro.services.exceptions.WDRuntimeException:Failed to create delegate for custom controller com.wartsila.test1.ChildDC2CompInterfaceCfg. (Hint: Is the corresponding DC deployed correctly? Does the DC contain the component?)
    Can anybody tell how can i solve it?
    Is it required to deploy the two child component also that is ChildDC1Comp and ChildDC2Comp?If yes then how to deploy these two child DC as when i am tryng to create application for these two component then default plug is showing blank thats why i am unable to deploy these child Dcs.
    Thanks
    Susmita

    Hi Susmita,
                      Is it required to deploy the two child component also that is ChildDC1Comp and ChildDC2Comp?
    Yes , u have to deploy both the components.
    when i am tryng to create application for these two component then default plug is showing blank thats why i am unable to deploy these child Dcs.
    U need not create an Application for deploying the component .Right Click on ur project --> Deploy.
    The problem is with ur Component, while creating a Component u should have created a Interface view and default StartUp plug.
    Just check whether u have Created the startup plug for ur interface view.
    Open the controller editor of ur interface view --> Select Plugs Tab .
    and in the plug tab , check whether u have Default Start plug (in Inbound Plugs Table).
    if there is no Default Start Plug , then click the Button New to create a Default Plug .
    in the pop up window -- select Stsrt Up and Give the name of the plug as "Default".
    After doing this , select the default plug and Right click on the plug -->copy  and Open the window Controller editor -- > select Plugs Tab --> check whether u have default plug (in Inbound plugs) in the Window controller .
    if the plug is not there , then paste the plug in the Window's Inbound Plug Table .
    Hope it helps
    Thanks and Regards

  • Local interface of each controller in web dynpro abap

    Hi everyone,
    Anybody please give some idea what is local interface of each controller in web dynpro abap??
    Thanks,
    Sonali..

    Hi,
    There will be three controllers in webdynpro
    1) Component controller which provides data and processing logic that it should be possible to display or change for all views of a component. It is the main component. All the data of the iview can be shared using this controller. Custom controller is also component controll. The only differnce is it is custom made.
    2) Inteface Contorller which is used as in interface for communication other components.
    3) View Controller which will be having data and functions and visible in the same iview and is associated with the iview. its lifetime is also limited and only during it is shown.
    Please go through the link also
    http://help.sap.com/saphelp_nw2004s/helpdata/en/b9/b82c4142aef623e10000000a155106/frameset.htm
    Also please go through the below pdf link.
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/2eb11b59-0a01-0010-dfa3-8292abdf9c4f
    hope it helps you.
    Raghu
    Raghu

  • Context from Web-Dynpro-Component-Interface & Customer Extention Fields

    Hello all,
    A main component uses a Web-Dynpro-Component-Interface and defines an external maping to it. Web-Dynpro-Component-Interface has a context and a window. At runtime implementaion of Web-Dynpro-Component-Interface is provided.
    All works fine, but how can i create an implementation with view which contains customer extention fields? Unfortunately only fields from context of Web-Dynpro-Component-Interface are visible. I can not even extend the context of Web-Dynpro-Component-Interface via enchancement framework.
    I assume, it is possible with dynamic programming, but why is it not possible in declarative way?
    thanks
    regards
    Paul

    Hello,
    I found this documentation:
    Implementation of Interfaces for Customer Developments
    Using interfaces in a Web Dynpro component benefits customers by giving them a clean basis for their own further developments. When creating a local development, you can implement a used interface in a separate component and add your own aspects to an application delivered by SAP.
    http://help.sap.com/saphelp_nw70/helpdata/en/a9/19eebc1e2943dbb2d443095d017ae9/content.htm.
    I think it must be a correct way to extend SAP programms with customer fields. Please reply, issue is very important.
    Regards
    Paul

  • No business interface, component interface or web service endpoint interface found for Session Bean SessionEJB

    hi ,
    i am just using EJb in my Application
    just created an SessionBean and with Local interface in it i am getting this wierd exception with weblogic NetBeans and eclipse also
    weblogic.ejb.container.compliance.ComplianceException: No business interface, component interface or web service endpoint interface found for Session Bean SessionEJB
    weblogic.ejb.container.compliance.ComplianceException: No business interface, component interface or web service endpoint interface found for Session Bean SessionEJB
        at weblogic.ejb.container.compliance.SessionBeanClassChecker.checkInterfacesExist(SessionBeanClassChecker.java:177)
        at weblogic.ejb.container.compliance.Ejb30SessionBeanClassChecker.checkInterfacesExist(Ejb30SessionBeanClassChecker.java:27)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at weblogic.ejb.container.compliance.EJBComplianceChecker.check(EJBComplianceChecker.java:331)
        at weblogic.ejb.container.compliance.EJBComplianceChecker.checkDeploymentInfo(EJBComplianceChecker.java:280)
        at weblogic.ejb.container.ejbc.EJBCompiler.checkCompliance(EJBCompiler.java:789)
        at weblogic.ejb.container.ejbc.EJBCompiler.doCompile(EJBCompiler.java:222)
        at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:461)
        at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:428)
        at weblogic.ejb.container.deployer.EJBDeployer.runEJBC(EJBDeployer.java:437)
        at weblogic.ejb.container.deployer.EJBDeployer.compileJar(EJBDeployer.java:795)
        at weblogic.ejb.container.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:683)
        at weblogic.ejb.container.deployer.EJBDeployer.prepare(EJBDeployer.java:1254)
        at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:442)
        at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
        at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:517)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
        at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:159)
        at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:45)
        at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:613)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
        at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:184)
        at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:58)
        at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
        at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
        at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:207)
        at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doPrepare(ActivateOperation.java:98)
        at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:217)
        at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:747)
        at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1216)
        at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:250)
        at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:159)
        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:171)
        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:13)
        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:46)
        at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
        at weblogic.ejb.container.compliance.EJBComplianceChecker.check(EJBComplianceChecker.java:321)
        at weblogic.ejb.container.compliance.EJBComplianceChecker.checkDeploymentInfo(EJBComplianceChecker.java:280)
        at weblogic.ejb.container.ejbc.EJBCompiler.checkCompliance(EJBCompiler.java:789)
        at weblogic.ejb.container.ejbc.EJBCompiler.doCompile(EJBCompiler.java:222)
        at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:461)
        Truncated. see log file for complete stacktrace
    >

    Hi Rajendar,
    I think the problem with having empty interfaces, or interfaces without methods for EJBs, is that they don't really make  "sense". After deploying your EJB, a client application will use JNDI or dependency injection to access your EJB.  So in your case it will look something like this
    @EJB
        mytestSSBLocal myejb; //(In this case we are using the local interface)
    In the second step, you will want to do something will your EJB, but since mytestSSBLocal doesn't define any methods, there is nothing you can do with your ejb.
    The Exception is telling you that weblogic couldn't find a complaint interface for your EJB.
    best regards, Nicolas

  • CE: Mapping from Component-Controller to Component-Interface

    Hi experts,
    how can I map the context of a component controller to the component interface? There is a predefined data link between them but I do not find any possibility to edit this link.
    Thank you for each hint,
    Christoph

    Hi,
    Copy the context node from the component controller and paste it to the interface controller.
    Regards
    Ayyapparaj

Maybe you are looking for

  • Apache 2.2.9 and suexec problem

    After todays update all my apache installment went crazy. I started to receive suexec errors while before everything was working fine. First thing that have changed since was default http user/group. Before it was nobody/nobody. After update it is ht

  • Digital Signature

    Here's the issue... I just upgraded from Windows XP at work to Windows 7. I have Adobe Acrobat 8. I know that there are some issues with printing and stuff since CS3 doesn't quite work with Windows 7. The patches, etc, help some. I used to be able to

  • Question About ac/dc adapter

    Hello, I purchased a Dell Laptop, on Naples bestbuy, and returned to my country (ARGENTINA). Here we work with 220V. I wanted to know if the charger that came with the laptop can be used in my country, without burning the laptop. These are the data o

  • Regards, po pdf

    Hi, When trying to display PDF PO from PO web visibility report in the portal, after 10+ minutes the following message appears: Sorry, an error occured while retrieving the Purchase Order. Purchase Order URL is not accessible. Please try again later.

  • Can two monitors be used in place of retina display on new MBP?

    I want to set up my new MacBook Pro (w. Nvidia graphics) with two external monitors. Can I do this while shutting down the internal retina display to conserve graphics memory and boost performance? Thanks.