cancel
Showing results for 
Search instead for 
Did you mean: 

Can not pass events between two same iViews, why?

Former Member
0 Kudos

I created WebDynPro application, with iView,

placed two that iView with different settings on page,

they also subscribed to two MDM ResultSet control's, selectRecord event .

one iView fired event and second subscribed,

I use arbitrary Namespace and EventName.

When I fire event from one view it not cathed in other.

So I code it:

WDPortalEventing.subscribeReliable(eventNamespace, FriendControlEventName, wdThis.wdGetFriendControlAction());

WDPortalEventing.fire(eventNamespace, FriendControlEventName,"sss");

static String FriendControlEventName = "FriendControlEvent";
static String eventNamespace = "urn:some.name"

for what reasons it can not to work?

thanks

Accepted Solutions (0)

Answers (3)

Answers (3)

DeeptiChavare
Active Participant
0 Kudos

Hi,

You can go through this link [http://help.sap.com/saphelp_nw70/helpdata/EN/5d/08f43cf1da7646a2b210a16321c669/frameset.htm |http://help.sap.com/saphelp_nw70/helpdata/EN/5d/08f43cf1da7646a2b210a16321c669/frameset.htm]

Regards,

Deepti

Former Member
0 Kudos

I want eventing such as: one control asked something, second respond with their date.

Some eventing occur if to change Reliable subscribe to usual subscribe for first call,

but when first iView fires event, second same iView is reinitialized

having called wdDoInit(), so eventing probable loosed due to it,

I do not know why?

stack second control is following when first is calling event for it:

InitMDRequestView.*wdDoInit()* line: 180
InternalInitMDRequestView.wdDoInit() line: 192
DelegatingView.doInit() line: 61
DelegatingView(Controller).initController() line: 215
DelegatingView(View).initController() line: 445
DelegatingView(Controller).init() line: 200
ViewManager.getView(IWDViewUsageInfo) line: 709
ViewManager.bindRoot(IWDViewUsageInfo) line: 579
ViewManager.init(View, String) line: 155
ApplicationWindow(WebDynproWindow).doOpen(WindowOpenEvent) line: 295
ApplicationWindow.show() line: 182
ApplicationWindow.open() line: 177
ClientApplication.init() line: 364
ApplicationSession.initApplication() line: 756
ApplicationSession.doProcessing(SessionEventConstants) line: 291
HttpClientSession(ClientSession).doApplicationProcessingPortal(IApplicationSession, ITask) line: 733
HttpClientSession(ClientSession).doApplicationProcessing(IApplicationSession, SessionEventConstants) line: 668
HttpClientSession(ClientSession).doProcessing() line: 250
RequestManager.doProcessing(IRequestInput) line: 149
ApplicationHandle.doProcessing() line: 73
LocalApplicationProxy(AbstractApplicationProxy).sendDataAndProcessActionInternal(ServerEvent[]) line: 860
LocalApplicationProxy(AbstractApplicationProxy).create() line: 220
PageBuilder.updateApplications(boolean) line: 1288
PageBuilder.createPage(IPBPageData, Map) line: 355
PageBuilder.init() line: 548
PageBuilder.wdDoRefresh() line: 592
PageBuilder$1.doPhase(IPhaseListenerEvent) line: 864
WindowPhaseModel.processPhaseListener(WindowPhase, ReuseablePhaseEvent) line: 755
WindowPhaseModel.doPortalDispatch(PhaseModelState) line: 717
WindowPhaseModel.processRequest(ITask, IEventQueue) line: 136
ApplicationWindow(WebDynproWindow).processRequest(ITask) line: 335
HtmlClient(AbstractClient).executeTasks(ITask) line: 143
ApplicationSession.doProcessing(SessionEventConstants) line: 321
HttpClientSession(ClientSession).doApplicationProcessing(IApplicationSession, SessionEventConstants) line: 684
HttpClientSession(ClientSession).doProcessing() line: 250
RequestManager.doProcessing(IRequestInput) line: 149
DispatcherServlet.doContent(HttpServletRequest, HttpServletResponse) line: 62
DispatcherServlet.doPost(HttpServletRequest, HttpServletResponse) line: 53
DispatcherServlet(HttpServlet).service(HttpServletRequest, HttpServletResponse) line: 760
DispatcherServlet(HttpServlet).service(ServletRequest, ServletResponse) line: 853
HttpHandlerImpl.runServlet(String, HttpParameters, ApplicationContext) line: 401
HttpHandlerImpl.handleRequest(String, HttpParameters) line: 266
RequestAnalizer.startServlet(String) line: 386
RequestAnalizer.startServlet(MessageBytes) line: 364
RequestAnalizer.invokeWebContainer() line: 1039
RequestAnalizer.handle() line: 265
Client.handle() line: 95
Processor.request(int, int, byte[], int, int) line: 175
ApplicationSessionMessageListener.process(int, int, byte[], int, int, int) line: 33
MessageRunner.run() line: 41
ActionObject.run() line: 37
AccessController.doPrivileged(PrivilegedAction, AccessControlContext) line: not available [native method]
SingleThread.execute(ThreadContextImpl) line: 102
SingleThread.run() line: 172

former_member192434
Active Contributor
0 Kudos

Hi Viadimir,

Just check

While firing event you are passing String typeu201Dsssu201D and Namespace it should match when your are Subscribe the event

WDPortalEventing.fire(eventNamespace, FriendControlEventName,"sss");

static String eventNamespace = "urn:some.name"

It will solve your problem.

Thanks

Anup