Portal Eventing in Windows

Hi
Can I subscribe to events in the WDDOINIT of my window rather than a view?
It appears that the view is rendered first and then the action called from the subscribe.  I need the action to be called before the view is rendered as it populates fields on the view.
Cheers
Ian

Thanks for your repy Koen.
I think I need to explain myself more though.
I wish to subscribe to an event and then trigger an event to retrieve a parameter from the portal.  We have had issues passing the data via url and therefore cannot receive them in the normal way that you suggest.
My problem is that when I am subscribing to an firing the event in my view, the action associated with the subscription is not triggered immediately but after the view has been rendered.  Then when the action is triggered, the view gains its data but loses its stylesheet.
Cheers
Ian

Similar Messages

  • Portal Eventing Parent-Child Explorer window

    Hi experts,
    I have a problem using the portal eventing.
    A WebDynpro Abap application, embedded into the EP, opens a new browser window. I want to fire an event in the new browser window and handle it in the first one. So far so good. This works fine.
    However if I want to close the new browser window in the same server round trip I fire the Portal Event, the event handler in the first window is not called. My question is: Is it possible to handle a portal event from a child browser window which closes itself in the server round trip, when the event is fired?
    Thanks,
    Thomas

    Does sound like the child window is not propagating the portal event when it is also closing...
    I'd suggest a work around (as I have no idea why that behaviour is occurring) perhaps firing the update event and also listening for it yourself? and then closing once the event has been received? If the child component receives the portal event, you'd assume that the parent would also.
    Alternatively set a timed trigger after you fire the event - it shouldn't trigger until a screen refresh is done (which you'd hope would mean that the portal event was successfully fired) and close your window on the event fired by this UI element.
    Do let us know if you find any other way around the problem!
    Cheers,
    Chris

  • Portal eventing between WD java and BSP popup

    Hi guys,
    I have a WebDynpro application that opens a BSP popup like that :
    WDPortalNavigation.navigateAbsolute(
              wdContext.currentURLElement().getEvaluationURL(),
              WDPortalNavigationMode.SHOW_EXTERNAL,
              "directories=no location=no menubar=no resizable=yes status=no toolbar=no",
              "evaluationdeformation",
              WDPortalNavigationHistoryMode.NO_DUPLICATIONS,
              urlParam.toString()
    When the popup is closed, I want to update the content of my webdynrpo application. I tried using portal eventing but it didn''t worked because the popup doesn't seem to know its opener....
    Is anybody have an idea ?
    Thanks in advance.
    Julien.

    Hi Julien,
    have you made sure that your BSP application is using EPCF? There is a flag you need to set to X in your BSP app for this to take effect. Also, you can not add javascript to a WD app, so calling the window.opener will not make any difference. However, you can subscribe to an event raised by another application in your WD app. It is possible to raise events between windows, one being a bsp and the other a WD or portal application. Check the following threads.
    [Portal Eventing: EPCMPROXY calls between two browser windows;
    [Client side eventing between MSS teamviewer and BSP application;
    Cheers,
    Dion

  • Portal Eventing between WDP Java iView & non-WDP iView

    Dear Experts,
    I have 1 Web DynPro Java iView and 1 non-Web DynPro (using JSPDynPage and JSP) iView, both attached to a page. When Web DynPro Java iView fire a portal raise event, the portal iView did not execute the javascript function tied to the event subscribed.
    Here is the code snippet which reside in the Web DynPro Java iView that is used to fire the event
    String param = "test";
    WPortalEventing.fire("urn:com.company.Test1", "TestEvent", param);
    This the code snippet that is in the jsp page
    function notifyTest(param){ 
          // code to print param value is here
    EPCM.subscribeEvent("urn:com.company.Test1", "TestEvent", notifyTest);
    Note:
    1. When Web DynPro Java iView fire the portal event the entire page is refreshed, including the non-WDP iView.
    2. When EPCM is replaced with window.top.EPCM, the page is refreshed, it is totally hanged with progress bar.
    Can anyone help to solve this problem?
    Edited by: CloudSOmnislash on Apr 8, 2009 6:06 PM

    Kumar, Rui,
    I have all my code inside a web dynpro component. All that I have in dynpro to work with (or that's what I know so far) is a WDPortalEventing object that I can use to access the fire, subscribeEvent and unsubscribeEvent methods. I still haven't found a way to get to the actual EPCM object that the Portal runtime gives you through javascript. And even if I get there, how am I supposed to write javascript in my dynpro code and later pass the value stored in the client data bag to the web dynpro context ?
    Simon,
    I had tried a small app yesterday and it didn't work when the iViews were not assigned to the same page. I will see if I can change my code anymore and get it working. I will make fresh posts to this thread as and when I find anything that works. In the mean time, if you have webdynpro iViews that talk to each other across pages, do let me know how you are doing it!
    Thanks for your replies...
    - Navneet.

  • Portal Eventing between Web DynPro Java iView and non-Web DynPro iView

    Dear Experts,
    I have 1 Web DynPro Java iView and 1 non-Web DynPro (using JSPDynPage and JSP) iView, both attached to a page. When Web DynPro Java iView fire a portal raise event, the portal iView did not execute the javascript function tied to the event subscribed.
    Here is the code snippet which reside in the Web DynPro Java iView that is used to fire the event
    String param = "test";
    WPortalEventing.fire("urn:com.company.Test1", "TestEvent", param);
    This the code snippet that is in the jsp page
    function notifyTest(param)
         // Code to print param value here
    EPCM.subscribeEvent("urn:com.company.Test1", "TestEvent", notifyTest);
    Note:
    1. When Web DynPro Java iView fire the portal event the entire page is refreshed, including the non-WDP iView.
    2. When EPCM is replaced with window.top.EPCM, the page is refreshed, it is totally hanged with progress bar.
    Can anyone help to solve this problem?

    hi
    Please write the below code snippet in ur jsp for notifyTestjavascriptfunction
    function notifyTest( eventObj ) {
         eventParameter=eventObj.dataObject;
         // code to print the parameter "eventParameter"
    Thanks
    Harsimran

  • Raising a Portal Event

    I am trying to raise a portal event via the signal out. It seems when raising an event, the Flash runtime actually puts all the parameters in an XML-like string and then passes them on to EPCM.  The EPCM, however, is expecting this data as an object, not as a string. Has anyone been able to actually raise an event (specifically the navigate event) that can be handled by the standard portal framework?
    What I am really trying to do is navigate from one iView to another within the same browser window. Has anyone done this?  I know that there is HTML view but I don't want to use this because of I want the user to navigate away from the current application.
    Thanks for your help

    HI,
        U can EPCM inside script tags and raise or subscribe the events.
    In one of the JSP (inside portal project), u can write
    <SCRIPT language ="JavaScript">
    EPCM.raiseEvent( "urn:com.sap:MyEvent", "EventName", "Hello" );
    <SCRIPT>
    In the iView to be subscribed, u can write
    <script language ="JavaScript">
    function onMyEvent ( eventObj ) {
    alert( "Got message:" + eventObj.dataObject );
    EPCM.subscribeEvent( "urn:com.sap:MyEvent", "MyEvent", onMyEvent );
    <script>
    This will raise event from first iView and the data will be available in the second iView.
    Regards,
    Vijai

  • BSP: How copy received portal event string to ABAP-Page-Attribute variable?

    Hi,
    I am able to receive and display portal events (EPCF API) with the following code:
    <SCRIPT src="epcfproxy.js"></SCRIPT>
    <script language="javascript">
    if(window.document.domain == window.location.hostname){
    document.domain = document.domain.substring(document.domain.indexOf('.')+1);
        EPCMPROXY.subscribeEvent("urn:com.sap:BWEvents","BWiViewevent", window, "myreceiveEvent");
    function myreceiveEvent( eventObj ) {
       alert("event received:" + eventObj.dataObject );
    But now the received data is only stored in Javascript-"variables".
    How can I copy the received string to ABAP variables? These variables will be declared as Page Attribute (e.g. rec_event_data  TYPE STRING)
    Is my Javascript-solution a good way to handle portal events or are there better solutions?
    Thanks a lot.
    Regards,
    Henning

    Hi,
    yes I was able to do it.
    The code should be something like this. I can not test it at the moment.
    function myreceiveEvent( eventObj )
            document.form1.rec_event.value = eventObj.dataObject;
            document.form1.submit();
    <htmlb:form id="form1">
          <input type="hidden" name="rec_event" value="">
    </htmlb:form>
    Event Handler: OnInputProcessing
    rec_event_data = request->get_form_field('rec_event').
    Regrads,
    Henning

  • Portal Eventing or FPM - navigate to diff comp controller view and ....

    Hi,
       The query is simple, i guess -
    From a particular component controller ( not from its view ) how can i navigate to a view of different component controller.
    Also how can i navigate to diff view ( within the same controller ) by the same controller.
    I tried Portal Eventing and FPM -
    WDPortalEventing.fire( "urn:com.sap.xss.hr.per.tw.bank.overview.Vc...Overview.Eventing","send","N");
    and at receiver
    WDPortalEventing.subscribe("urn:com.sap.xss.hr.per.tw.bank.overview.VcPerBankTWOverview",
         "send", wdThis.wdGetPortalEventAction() );
    it didn't worked.
    Also tried FPM after creating an FPM view , but need inputs from you to link it in event links as target.
    ECC6.0 - mysaperp2005.
    EP7
    THanks,
    Regards,
    Ankit

    Vishwas.. / Chaitanya -
    Thanks for the reply -
    -   I want to navigate to CompB's view from Component Controller A ( not frm the view ).
    - Another query was - how can i get to View2 of comp controller A via Comp Controller A itself. 
    Your answers were helpfull but i need some more info..
    The forums link u mentioined had some body mentioned this -
    " 2 ways to do this...
    The first way:
    1) Create a separate window in Comp B for each view that you need to navigate directly to (an interface view is created for each window)
    2) Embed the multiple interface views of Comp B into Comp A
    3) Use a separate outbound plug in Comp A for each Comp B interface view
    AFTER STEP 2 ON STEP 3 HOW CAN I HAVE AN OUTBOUND PLUG FROM COMP CONTROLLER A ( not from the view ). i.e., outbound plug from Comp A to the Comp B inteface view
    Lokesh -
    Trying same namespace didn't worked , - i guess Portal eventing might work between views , but here i have a component controller and a view.

  • Portal events are not getting loaded into the Analytics database tables

    Analytics database ASFACT tables (ASFACT_PAGEVIEWS,ASFACT_PORLETVIEW) are not getting populated with data.
    Possible diagnosis/workarounds tried:
    -Checked the analytics configuration in configuration manager, Enable Analytics Communication option checked
    -Registered Portal Events during analytics installation
    -Verified that UDP events are sent out from the portal: Test: OK
    -Reinstalled Interaction analytics component
    Any inputs highly appreciated.
    Cheers,
    Sandeep
    In collector.log, found the exception:
    08 Jul 2010 07:12:54,613 ERROR PageViewHandler - could not retrieve user: com.plumtree.analytics.collector.exception.DimensionManagerException: Could not insert dimension in the database
    com.plumtree.analytics.collector.exception.DimensionManagerException: Could not insert dimension in the database
    at com.plumtree.analytics.collector.cache.DimensionManager.insertDB(DimensionManager.java:271)
    at com.plumtree.analytics.collector.cache.DimensionManager.manageDBImage(DimensionManager.java:139)
    at com.plumtree.analytics.collector.cache.DimensionManager.handleNewDimension(DimensionManager.java:85)
    at com.plumtree.analytics.collector.eventhandler.BaseEventHandler.insertDimension(BaseEventHandler.java:63)
    at com.plumtree.analytics.collector.eventhandler.BaseEventHandler.getUser(BaseEventHandler.java:198)
    at com.plumtree.analytics.collector.eventhandler.PageViewHandler.handle(PageViewHandler.java:71)
    at com.plumtree.analytics.collector.DataResolver.handleEvent(DataResolver.java:165)
    at com.plumtree.analytics.collector.DataResolver.run(DataResolver.java:126)
    Caused by: org.hibernate.MappingException: Unknown entity: com.plumtree.analytics.core.persist.BaseCustomEventDimension$$BeanGeneratorByCGLIB$$6a0493c4
    at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:569)
    at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1086)
    at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:83)
    at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:184)
    at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)
    at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:173)
    at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)
    at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:69)
    at org.hibernate.impl.SessionImpl.save(SessionImpl.java:481)
    at org.hibernate.impl.SessionImpl.save(SessionImpl.java:476)
    at com.plumtree.analytics.collector.cache.DimensionManager.insertDB(DimensionManager.java:266)
    ... 7 more
    In analyticsui.log, found the exception below:
    08 Jul 2010 06:50:25,910 ERROR Configuration - Could not compile the mapping document
    org.hibernate.MappingException: duplicate import: com.plumtree.analytics.core.persist.BaseCustomEventFact$$BeanGeneratorByCGLIB$$6a896b0d
    at org.hibernate.cfg.Mappings.addImport(Mappings.java:105)
    at org.hibernate.cfg.HbmBinder.bindPersistentClassCommonValues(HbmBinder.java:541)
    at org.hibernate.cfg.HbmBinder.bindClass(HbmBinder.java:488)
    at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:234)
    at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:152)
    at org.hibernate.cfg.Configuration.add(Configuration.java:362)
    at org.hibernate.cfg.Configuration.addXML(Configuration.java:317)
    at com.plumtree.analytics.core.HibernateUtil.loadEventMappings(HibernateUtil.java:796)
    at com.plumtree.analytics.core.HibernateUtil.loadEventMappings(HibernateUtil.java:652)
    at com.plumtree.analytics.core.HibernateUtil.refreshCustomEvents(HibernateUtil.java:496)
    at com.plumtree.analytics.ui.common.AnalyticsInitServlet.init(AnalyticsInitServlet.java:104)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4045)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4351)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
    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:585)
    at com.plumtree.container.Bootstrap.start(Bootstrap.java:531)
    at com.plumtree.container.Bootstrap.main(Bootstrap.java:254)
    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:585)
    at org.tanukisoftware.wrapper.WrapperStartStopApp.run(WrapperStartStopApp.java:238)
    at java.lang.Thread.run(Thread.java:595)
    08 Jul 2010 06:50:25,915 ERROR Configuration - Could not configure datastore from XML
    org.hibernate.MappingException: duplicate import: com.plumtree.analytics.core.persist.BaseCustomEventFact$$BeanGeneratorByCGLIB$$6a896b0d
    at org.hibernate.cfg.Mappings.addImport(Mappings.java:105)
    at org.hibernate.cfg.HbmBinder.bindPersistentClassCommonValues(HbmBinder.java:541)
    at org.hibernate.cfg.HbmBinder.bindClass(HbmBinder.java:488)
    at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:234)
    at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:152)
    at org.hibernate.cfg.Configuration.add(Configuration.java:362)
    at org.hibernate.cfg.Configuration.addXML(Configuration.java:317)
    at com.plumtree.analytics.core.HibernateUtil.loadEventMappings(HibernateUtil.java:796)
    at com.plumtree.analytics.core.HibernateUtil.loadEventMappings(HibernateUtil.java:652)
    at com.plumtree.analytics.core.HibernateUtil.refreshCustomEvents(HibernateUtil.java:496)
    at com.plumtree.analytics.ui.common.AnalyticsInitServlet.init(AnalyticsInitServlet.java:104)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4045)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4351)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
    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:585)
    at com.plumtree.container.Bootstrap.start(Bootstrap.java:531)
    at com.plumtree.container.Bootstrap.main(Bootstrap.java:254)
    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:585)
    at org.tanukisoftware.wrapper.WrapperStartStopApp.run(WrapperStartStopApp.java:238)
    at java.lang.Thread.run(Thread.java:595)
    wrapper_collector.log
    INFO | jvm 1 | 2009/11/10 17:25:22 | at com.plumtree.analytics.collector.eventhandler.PortletViewHandler.handle(PortletViewHandler.java:46)
    INFO | jvm 1 | 2009/11/10 17:25:22 | at com.plumtree.analytics.collector.DataResolver.handleEvent(DataResolver.java:165)
    INFO | jvm 1 | 2009/11/10 17:25:22 | at com.plumtree.analytics.collector.DataResolver.run(DataResolver.java:126)
    INFO | jvm 1 | 2009/11/10 17:25:22 | Caused by: java.sql.SQLException: [plumtree][Oracle JDBC Driver][Oracle]ORA-00001: unique constraint (ANALYTICSDBUSER.IX_USERBYUSERID) violated
    INFO | jvm 1 | 2009/11/10 17:25:22 |
    INFO | jvm 1 | 2009/11/10 17:25:22 | at com.plumtree.jdbc.base.BaseExceptions.createException(Unknown Source)

    Key words from the error msg suggests reinstallation of Analytics is needed to resolve this.Analytics database is failing to get updated with the correct event mapping and this is why no data is being inserted.
    "Could not insert dimension in the database",
    "ERROR Configuration - Could not configure datastore from XML
    org.hibernate.MappingException: duplicate import: com.plumtree.analytics.core.persist.BaseCustomEventFact$$BeanGeneratorByCGLIB$$6a896b0d"
    "ORA-00001: unique constraint (ANALYTICSDBUSER.IX_USERBYUSERID) violated",
    "ERROR Configuration - Could not compile the mapping document

  • I hope someone gets this who can help me. i don't find anything helpful in the help section of icloud. i'm using my 4th generation itouch for about 3 weeks with the ical. but today when i tried to edit an event or d an event a window would pop up and sa

    i hope someone gets this who can help me. i don't find anything helpful in the help section of icloud. i'm using my 4th generation itouch for about 3 weeks with the ical. but today when i tried to edit an event or add an event a window would pop up and say "event can't be saved" or "no calendar chosen" or something like "this event doesn't belong with this calendar" and stuff like that.
    can you please help me fix this?

    You could repartition your drive to have a different OS X with the older iTunes there, and the newer iTunes on the existing partition. Back up everything beforehand. See Kappy's advice in this thread. Partitioning my Hard Drive

  • Calling Portal event from ABAP class

    Hi Experts,
    I need a following clarificatrion, Please help,
    1. Is it possible to call a webdynpro method from a normal ABAP class?
    2. If no, we need a functionality of a class 'CL_WDR_HTTP_EXT_MIME_HANDLER' having method 'DO_DOMAIN_RELAX_HTML'.
    Is there any alternative method which can be used in ABAP having the same functionality.
    3. Is there any ways with which we can call portal event from ABAP class?
    Thanks,
    Shabir

    >1. Is it possible to call a webdynpro method from a normal ABAP class?
    I wouldn't necessarily recommend this approach. You shouldn't try to trigger events or any of the standard WDDO* methods from outside the WD Component itself.  That said, you can pass the object reference (like the WD_COMP_CONTROLLER object reference or the View Object Reference) into methods of normal classes.  Be careful if you are finding yourself calling a lot of your added methods from outside WD.  This is probably a sign that these methods should be in the Assistance Class or some other Class functioning as a Model Object.
    >2. If no, we need a functionality of a class 'CL_WDR_HTTP_EXT_MIME_HANDLER' having method 'DO_DOMAIN_RELAX_HTML'.
    Is there any alternative method which can be used in ABAP having the same functionality.
    What exactly do you want to do here?  Do you just want to get the relaxation script?  For what purpose?  You should never need to inject the relaxation script into WDA. 
    >3. Is there any ways with which we can call portal event from ABAP class?
    To what purpose.  Do you just want to delegate the triggering of the event that is inside WD Component to be called from a class?  If so you can pass the portal API object reference into a class from the WD Component.  However this only works while running within WD.
    How is this class used?  Are you running in WD?  Are you trying to generate some HTML code that runs in the portal independent of WD?

  • Portal eventing in WD ABAP

    Hello ,
    We have an requirment to pass values from one WD ABAP application iView to another in the Enterprise portal.Is there any configuration that needs be done in WD ABAP or is there any setting in EP that we need to do ??
    Rahul

    Rahul,
    Though most of this stuff is of web dynpro for java. You can just replace java Code with ABAP.
    You need to use eventing functionality.In the SAP Enterprise Portal, different application types in specific iViews can be arranged on one page. To communicate between the different iView types the portal provides the Enterprise Portal Client Framework (EPCF), also known as client-side eventing. This document describes how Web Dynpro applications can use EPCF.
    http://help.sap.com/saphelp_nw04/helpdata/en/24/243ca46e1c334f8a6f8b0792656bc7/content.htm
    The following code shows the signature of the subscribe method:
    WDPortalEventing.subscribe(java.lang.String nameSpace, java.lang.String event, IWDAction action);
    for example
    WDPortalEventing.subscribe (“urn:com.sap.tc.webdynpro.test.portal”,
        “TestEvent”,
        wdThis.wdGetTestEventAction());
    You have to define the event’s name and its namespace. The combination of these two names must be unique.
    The third parameter is the Web Dynpro action, which should be mapped to the portal event. The action event handler is called if the Web Dynpro application receives the specified portal event on the client side. The mapping between a portal event and a Web Dynpro action is done automatically and it is completely transparent for the Web Dynpro application developer.
    You can reuse a Web Dynpro action for several portal events. If you want to receive the portal event’s data you have to define the following parameters for your Web Dynpro action:
    ·        dataObject
    The dataObject parameter contains the portal event parameter.
    ·        nameSpace
    The namespace parameter contains the portal event’s namespace.
    ·        name
    The name parameter contains the portal event’s name.
    It is useful to add the nameSpace and nameparameters to the Web Dynpro action if the action is reused for several portal events because you can use this information to differentiate between the portal events.
    Note: In the current version a portal event subscription is valid for a Web Dynpro view. Therefore you should add the required Java coding, for example in the wdDoInit() method of the generated view class. If you navigate between different views, you have to subscribe to every view for the portal event required.
    Unsubscribe from a portal event
    Unsubscribing from a portal event is very similar to subscribing. The following code shows the signature of the unsubscribemethod:
    WDPortalEventing.unsubscribe(java.lang.String nameSpace, java.lang.String event, IWDAction action);
    for example
    WDPortalEventing.unsubscribe (“urn:com.sap.tc.webdynpro.test.portal”,
        “TestEvent”,
        wdThis.wdGetTestEventAction());
    Note: You must unsubscribe every Web Dynpro view, because subscription and unsubscription is valid only for the current view.
    Raise a portal event
    The following example shows how to raise a portal event. The signature is:
    WDPortalEventing.fire(java.lang.String nameSpace, java.lang.String event, java.lang.String parameter);
    for example
    WDPortalEventing.fire (“urn:com.sap.tc.webdynpro.test.portal”,
         “TestEvent”,
        “AParameter”);
    You can fire a portal event anywhere in your Web Dynpro application. The event is sent to the client  with the next response. You can also raise more than one portal event in a request-response cycle. Typically, you will fire a portal event in a Web Dynpro action event handler (for example, as a response to pressing a button).
    The following step-by-step example shows how to carry out portal eventing within two simple Web Dynpro example applications.
    Example Description
    The user can enter an arbitrary string in an input field. If the user presses the pushbutton Click here in the sender view, the input string will be displayed in a TextView UI element of the listener application.
    Prerequisites
    You have built two Web Dynpro applications. How to build Web Dynpro applications is described in Creating a Simple Web Dynpro Application. In each application you have created a Web Component with a view that uses the portal eventing.
    You can find the detailed procedure describing how to insert UI elements into a view in Creating a Simple Web Dynpro Application.
    Further information about the integration of a Web Dynpro application into the SAP Enterprise Portal can you find under Running a Web Dynpro Application in SAP Enterprise Portal.
    Procedure
    Creating the Web Dynpro applications
           1.      Create the Web Dypro project. Call it webdynproexample_portal_eventing.
           2.      Create two Web Dynpro components. Call them:
                                a.      EventSenderComponent
                                b.      EventListenerComponent
           3.      Create two Web Dynpro applications. Call them:
                                a.      EventSenderApplication
                                b.      EventListenerApplication
    Creating the necessary views:
    Create the layout of the EventSenderView in the EventSenderComponent as follows:
    Create the context structure of the EventingSender View:
    The context value attribute Name must be of type String.
    Create an action “Show”
    Define the data binding of corresponding UI element properties:
    The appropriate properties of the UI elements must be bound to the context that contains and displays the data.
           4.      Define a text, for instance, “Enter a text:” for the label UI element (ID: NameLabel) using the property text.
           5.      Bind the property value of the input field (ID: NameInputField) to the context attribute Name.
           6.      Bind onAction of the button (ID:ShowButton) to the corresponding action Show.
    Implementation of the view controller
           7.      If you create an action declaratively within the SAP NetWeaver Developer Studio, the Web Dynpro framework automatically generates an onAction method in the controller’s implementation. The generated method enables you to write code to fetch the input string and to fire the portal event. The fire method of WDPortalEventing passes the data and the name of the event that should be handled by the second application as parameters. The following code shows the implementation of onActionShow method:
    public void onActionShow(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionShow(ServerEvent)
       String name = wdContext.currentContextElement().getName();
        WDPortalEventing.fire("urn:com.sap.tc.webdynpro.example.portaleventing",
                           "Show",
                           name);
        //@@end
    Create the layout of the EventListenerView in the EventListenerComponent as follows:
    Create the context structure of the EventingListenerView:
    The context attribute Name must be of type String.
    Create an action, for example, ReactPortalEventing which should be mapped to the portal event.
           8.      Create an action ReactPortalEventing.
           9.      Add the parameter dataObject. It should have the type java.lang.String.
    Define the data binding of the corresponding UI element properties:
    The corresponding properties of the UI elements must be bound to the context that contains and displays the data.
    10.      Define a text for the NameLabel for example, The entry is displayed in a TextView UI element:
       11.      Bind the property text of the TextView UI element (ID: TextViewShow) to the context attribute Name.
    Implementation of the view’s controller
       12.      You have to subscribe to the event within the wdDoInit method. You have to define the namespaceof the event and the name of the event, for example Show. The third parameter is the Web Dynpro action, which should be mapped to the portal event.
       13.      You have to implement the action (ReactPortalEventing) that passes the dataObjectand fills the context with data. The following code shows the implementation of the wdDoInit and the reactPortalEventing methods:
    public void wdDoInit()
        //@@begin wdDoInit()
        WDPortalEventing.subscribe("urn:com.sap.tc.webdynpro.example.portaleventing", "Show",
        wdThis.wdGetReactPortalEventingAction() );
        //@@end
    public void onActionReactPortalEventing(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent, java.lang.String dataObject )
        //@@begin onActionReactPortalEventing(ServerEvent)
        wdContext.currentContextElement().setName(dataObject);
        //@@end
    Deploying the Web Dynpro Application
    Before you can call the Web Dynpro application, you have to build the Web Dynpro project and deploy the application on the J2EE Engine.
    Simple Testing of the Portal Eventing and Calling the Web Application
       14.      Create two iViews in the newly-created example folder as described in Running a Web Dynpro Application in SAP Enterprise Portal.
       15.      Create a page and add the two iViews to the newly-created page.
    To preview the Web Dynpro applications, choose the button Preview in the Portal Content Studio.
       16.      Enter your input and choose button Click here.
    Result
    A page preview will demonstrate portal eventing.
    Also, Please refer to these links,
    http://help.sap.com/saphelp_nw04/helpdata/en/c6/21fc3f82c2e469e10000000a155106/content.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/portal integration of web dynpro applications.pdf
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/cfb80249-0801-0010-3eaa-829afeac170f
    Please let me know whether its useful.
    Thanks,
    Raj.

  • Portal eventing between Java WD iview to ABAP WD iview?

    HI Experts ,
    I have requirement on which,
    The manager can select an employee from the EE Search iView (Object and Data Provider). All other iViews react on the selection and display data of the selected employee. Technically the personnel number is transferred from the search iView to the other iViews on the portal page, also to the related activity iView. This mechanism is called Eventing. The applications, started via the related activity iView, are launched with the personnel number as parameter. With other words the application, e.g. Manage Objects on Loan, can be directly started for the employee selected from the EE Search iView.
    The Employee Information page is based on WD Java whereas the Objects on Loan application described in this specification is based on WD ABAP...........Due to different technologies used how to do the Pernr number transfer between these iviews?
    If anybody have done this let me know the steps
    Thanks in Advance,
    Dharani

    Hi Dharani,
    You can use portal events to enable iViews running on the same page to communicate with each other. You just have to find out which event is fired by the WD Java iView and then you will have to register and handle the event in your WD ABAP application : http://help.sap.com/saphelp_nw70ehp1/helpdata/en/f6/7d6f4151dc5758e10000000a1550b0/frameset.htm
    You can use HttpFox (firefox plug-in) to find the details of the fired event (name, namespace...) by looking at the eventQueue parameter in the HTTP POST request.
    Regards,
    Pierre
    Edited by: Pierre DOMINIQUE on Jul 9, 2009 11:16 AM

  • Settings Portal eventing - WebDynpro for Abap iView communication

    To connect two WD4A's using portal eventing; what work is to be done inside the portal environment.
    All manuals on SDN provide information action to be done within WD4A, Do we need to configure/set values in the Portal environment at al...

    Hi Marco,
    Check the url:
    [help.sap.com - Client-Side Eventing|http://help.sap.com/saphelp_nw70/helpdata/EN/ce/3e98408d953154e10000000a1550b0/frameset.htm]
    Best regards,
    G. Leurs

  • Embedded WD and portal eventing

    Hi,
    In MSS-> Equipment I have the standard Employee Search wd component and a custom web dynpro component that displays obejcts on loan(pa0040) embedded in an iView. The PERNR is being successfully passed to the custom application when the user clicks on the employee name. Is there any way I can clear the objects displayed if a user clicks on anything else in the standard wd component. For example, if they click on a company name in the Organisation structure?

    Probably the whole thing works based on Portal events. I assume they have no other means to know what is being selected. Best way forward is subscribe in custom component  to other events such as Organisation. If there are no events fired in that cases then you may have problem here. You can try enhance the existing component and fire a clear event. Subscribe this event in your custom component.
    Handle this clear event in your custom component and invalidate the node for loan.

Maybe you are looking for

  • Creative Cloud for UK Charities

    Does anyone know how one goes about getting Creative Cloud from Adobe if one's a UK based charity? All the information I see is referring to the US only.

  • 'open in new tab' opens new window instead

    My system just went through a bunch of updates, maybe that was Windows 7, but I'm unsure. I didn't initiate them. Anyway, now when I right click 'open in new tab' instead a new window opens. I have read a bunch of other similar posted questions the a

  • Groups functionality in BPEL humal workflow not work for Third party LDAP

    Hi, Oracle Virtual Directory(OVD) configured as third party LDAP was integrated with BPEL human worklist and corresponding tasks were assigned to a particular group using the human task editor. When the members in the group as present in OVD logged i

  • Exporting Vector shapes to Illustrator?

    I know I can get illustrator vector shapes into motion, but what about getting them out? I've some nice shapes created I want to get out for print piece and I don't want to have to recreate them.

  • OS 9 to 10.4 firmware update?

    I installed Linux temporarily, and now got my 10.4 disc.... but in the installer it says i need to upgrade my firmware before i can install. It originally had Classic (OS 9), and was at 10.4 at one time.(the whole partition and drive was erased b4 i