在Web Dynpro Java中调用父组件方法

时间:2016-08-05 22:02:06

标签: java model-view-controller controller sap webdynpro

我正在使用两个Web Dynpro Java组件(SAP Netweaver Developer Studio 7.0),其中第一个组件嵌入另一个组件并在弹出窗口中使用它。

嵌入式组件有一个按钮点击触发的方法,在执行此方法后,我需要调用嵌入组件方法。

我应该使用Web Dynpro组件接口来调用嵌入组件方法吗?

2 个答案:

答案 0 :(得分:0)

完全!您应该执行的步骤是:

  1. 在Comp1(嵌入)组件的接口控制器中创建包装器方法(具有相同的签名),并在那里调用必要的组件控制器方法

    wdThis.wdGetComp1Controller.doSmth()
    
  2. 将Comp1添加到Comp2(嵌入式)组件的已使用部分。

  3. 在“属性”选项卡中将“接口控制器”的使用声明添加到“Comp2组件控制器”。
  4. 现在,您可以像这样访问嵌入组件(Comp1)的方法

    wdThis.wdGetComp1Interface().doSmth();
    

答案 1 :(得分:0)

问题以这种方式解决了:

嵌入式组件有一个按钮,用于触发接口控制器事件。

  1. 在我们用作嵌入式组件的组件上,我们将创建一个Interface Controller事件,该事件将由父组件方法捕获。
  2. 将嵌入式组件添加到" DC MetaData>上的父组件。 DC定义>二手DC"部分。
  3. 然后将其添加到"使用的Web Dynpro组件"
  4. 在父组件中,打开Web Dynpro组件的图表视图,并添加从ComponentController到Used Web Dynpro组件的关系。
  5. 在父组件控制器中,在方法的部分添加一个事件处理程序,选择Web Dynpro组件作为事件的来源以及父组件将在新方法中捕获的事件。