Portal Eventing JSP TreeView

I am trying to refactor a piece of code that was originally designed using HTMLB to create a tree view role menu that invokes an event in another iView.
My question is, can portal eventing be done with traditional  JavaScript as opposed to using HTMLB? We are not using WebDynPro for this project.
I would like to use a jsp treeview to re-engineer the existing htmlb tree structure, but wanted to get some feedback on the options...thanks

Hi Ryan,
> whether or not the eventing
> has to be done on the server side
The eventing between iViews is done by EPCF, and this is, as said, a pure JS framework. Often it might be senseful for the iView which gets "informed" by some other iView about some event with some event data, to use this data and to refresh itself. This depends on the concrete use case.
Having this said, it is obviously totally independent if you usue EPCF from some portal HTMLB-JSP, a "pure" JSP without HTMLB or a BSP - all of these things end up in HTML with the possibility to include JS - the EPCF calls.
See http://help.sap.com/saphelp_nw04/helpdata/en/82/04b340be3dff5fe10000000a155106/frameset.htm for further details.
> Can all of this be done without post backs
> to the server,
As said before, the eventing through EPCF works on client side, but in many cases it makes sense to refresh some iView with some data sent by the event.
Imagine a List-Details iView combination. The user has one iView with a list of products and another iView with the details of one product. By choosing one product in the list iView, this iView could raise an event, which is subscribed by the details iView, for example passing some product-ID. Now it would make sense to refresh the details iView with the ID given. The alternative would be to load all details data and only to show up the chosen details and to switch on the event. Two disadvantages: It's much harder to code and you may have a very long transmission/network time for the inital call of this iView.
> without using htmlb using JSP not BSP
See above, it's independent from the HTML-Layer.
> can you store a result set in a client side object,
> like a cookie, and if so, how?
For sure, somehow you can (at least some representation). But here I'm unsure again, in which direction this question aims, if this is really helpful.
Hope it helps
Detlev

Similar Messages

  • 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

  • Fire A Portal Event With Source Id

    Hi All,
    I have this requirement where I need to fire an event from a Web Dynpro iView and a delivered iView (MSS Team Viewer) will receive it.  The problem is the receiving iView (Team Viewer) need the source id parameter which is available in EPCF raiseEvent as an optional fourth parameter but the method WDPortalEventing.fire() method does not have it.  Is there a workaround for populating this parameter?  I wonder why it is omitted in the Portal Eventing API.
    Thanks in advance.
    Erwin

    Hi Julia,
    Yes, you can have 2 users with same uid in 2 different org but then, you must use 2 different authentication module and then your login url must be something like : .../UI/Login?org=yourOrgName
    And then, this organization must have a Auth module.
    Now, for the users, it's better to propose only the good login url.
    ie, we have 5 differents login url based on 5 differents org. I'd change the login provider to alow the user to change its own organisation (with a list box). I've change the file under LoginProvider directory... (JES 2005Q4, Portal 6 : /etc/opt/SUNWps/desktop/default/LoginProvider/display.template
    I think, in Portal 7, you have a jsp provider. Easier ;-)
    a+
    Philippe

  • 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

  • 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.

  • The requested URL /pls/portal/display.jsp was not found on this server.

    Hi,
    I managed to get ultrasearch running now. The crawling process seems to run smooth. Executing a search gives me the correct result. However, i can not display the documents that are listed in the resultpage.
    The link to the document is like this:
    http://myportal/pls/portal/display.jsp?type=file&f_url=C:\ultra_docs\sultan\filetransfer\htc\site.doc
    The path in the url seems ok to me.
    Cliking on this link gives me the following error:
    The requested URL /pls/portal/display.jsp was not found on this server.
    Please, help me out here :/
    mvg
    Bram

    I just tested it by accessing the search page with the following url:
    http://myportal/ultrasearch/query/search.jsp
    This gives me the same result and the links to the actual documents work fine now too! But it is not working from within portal, the links generated by the ultrasearch portlet give me an error.
    The requested URL /pls/portal/display.jsp was not found on this server.
    Please Help me Out
    thx

  • 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.

  • Portal eventing

    Hi all,
    Can someone give me the code to create a portal event from PCUI ? I'm trying to combine Visual composer iview with a PCUI Iview. Sender is the PCUI Iview and receiver is the VC Iview.I just need to be able to pass a field value from PCUI to vc.I need to know how to code (what class/interface) I need to use to create a portal event from PCUI ?
    I've followed quite a few weblogs but I did not find something that creates a portal event from PCUI. Appreciate your help!!
    Thank you
    Sreesanth.

    Sree,
    I am not sure what do you mean by portal event from PCUI….is it Client side or server side event ???
    You can’t write your own client side (JavaScript) events in PCUI, Client side scripting is done by FW.
    May be you need to do a modification in FW java script files to have your client side event.
    You can have server side events from PCUI…
    Raj

  • Portal Eventing: communication betn BSP - WD iView

    Hi All,
    i am doing portal eventing between WD Abap iView and BSP iView with the help of blog <a href="/people/thomas.jung3/blog/2005/12/15/portal-eventing-a-solution-for-global-peace-and-harmony:///people/thomas.jung3/blog/2005/12/15/portal-eventing-a-solution-for-global-peace-and-harmony.
    i have created page which has both iViews.
    but i am not able to trigger the event from BSP to WD.
    please suggest me some direction regarding this.
    Regards,
    Chandra

    Hi,
    the domain is the first part in your URL, for example www.sdn.sap.com.
    In your case it will probably the hostname of your computer.
    The reason for this is security. The portal eventing is build in Javascript and in Javascript it is not allowed to access other frames that are not in the same domain.
    Best regards
    Renald

  • Portal eventing between bsp and VC

    Hi everybody
    I need to use portal eventing to have a bsp and a VC iview communicate.
    The bsp iview should be displayed within the VC iview as html view, raise a portal event with some sort of parameters inside, and then be dynamically hidden by the main iview.
    I have often read about VC and bsp exchanging signals when belonging to the same page, but will this work even with bsp iview within VC iview? Has anyone ever achieved this?
    thanks
    Vincenzo

    Hello Vincenzo,
    It won't work, since the html view is implemented as an iframe on top of the model. If you want to use portal eventing, you should have the iViews inside a portal page which acts as a container and you also have the entire portal framework working for you.
    Regards,
    Natty

Maybe you are looking for

  • HT1491 Can't access iTunes from my Music, no iTunes app on my phone, unable to delete downloaded apps

    After I reset my 4s, I am still unable to go to iTunes from my Music (it used to be on the top corner or pop up after using Shazam). I have updated my laptop iTunes & now am in the process of the iPhone update. I have done the apple id check and pret

  • Firefox using/changing printer preferences in Windows 7 Pro

    I have a workstation printing to a Kyocera copying machine that is on the network. When she prints from Firefox, it sends the print request to the wrong cassette. I have reset the printer information in about:config. Removed and re-installed the netw

  • Stupid problem wont go away

    Ok, It's like the third time I post about the same problem, my iPod's screen is broken on the inside. One day I turned it on, and half of the screen was blank, the biggest problem is that I'm from Uruguay, so I think there's only one apple store on t

  • Itunes connectivity Issue

    Hi Guys, When I connect my new Ipad to the PC, it comes up with an error to say that my PC cant connect to itunes, therefore I cant register it? I have tried other Apple devices and they now will not connect either, even if I just try and connect to

  • Flex / Java Developer Needed

    Brilig (www.brilig.com) is a fun and exciting startup who are changing the world of online advertising. We are currently looking for a talented and energetic Flex/Java developer to join our team for the key role of front end interface developer. We a