Inter-Portlet refresh

Hi,
I have a portal layut with the navigation portlet and the content area. How
can I force navigation portlet to refresh, after I go somewhere in the
content area?
work weblflow is setup like this:
show.something [wildcard presentation]->NavigationNotifier[IP]->display page
[jsp]
navigation webflows:
show.something [wildcard presentation]-[show.something event]->nav page2
[jsp]
show.default[wildcard presentation]->nav page1 [jsp] {Start Node}
Here's a snippet of code that I use to notify another portlet in the
NavigationNotifier IP:
public Object process(HttpServletRequest request, HttpServletResponse
response,
PortalRequest portalRequest, Object context)
throws ProcessingException
WebflowResponse wr =
PortalAppflowHelper.invokeWebflow(request, response,
"navigation_flow", // webflow
"top_nav.jsp", // origin node
"show.something", //event
portalRequest);
System.out.println("WR URL: " + wr.url());
return "success";
the code seems to work, output from the NavigationNotifier is:
WR URL: /portlets/navigation/nav page2.jsp
yet, the navigation portlet is not refreshed.
Is there any flag that I should set in order to refresh the navigation
portlet, or does this have something to do with the WL Portal caching
mechanism?
Thanks,
Valdas

try adding the following:
RequestDispatcher requestDispatcher =
request.getRequestDispatcher(webflowResponse.url());
requestDispatcher.forward(request, response);
also, make sure that you catch configuration and security exceptions.
Prady
"Valdas Sevelis" <[email protected]> wrote in message
news:[email protected]..
Hi,
I have a portal layut with the navigation portlet and the content area.How
can I force navigation portlet to refresh, after I go somewhere in the
content area?
work weblflow is setup like this:
show.something [wildcard presentation]->NavigationNotifier[IP]->displaypage
[jsp]
navigation webflows:
show.something [wildcard presentation]-[show.something event]->nav page2
[jsp]
show.default[wildcard presentation]->nav page1 [jsp] {Start Node}
Here's a snippet of code that I use to notify another portlet in the
NavigationNotifier IP:
public Object process(HttpServletRequest request, HttpServletResponse
response,
PortalRequest portalRequest, Object context)
throws ProcessingException
WebflowResponse wr =
PortalAppflowHelper.invokeWebflow(request, response,
"navigation_flow", // webflow
"top_nav.jsp", // origin node
"show.something", //event
portalRequest);
System.out.println("WR URL: " + wr.url());
return "success";
the code seems to work, output from the NavigationNotifier is:
WR URL: /portlets/navigation/nav page2.jsp
yet, the navigation portlet is not refreshed.
Is there any flag that I should set in order to refresh the navigation
portlet, or does this have something to do with the WL Portal caching
mechanism?
Thanks,
Valdas

Similar Messages

  • Inter portlet Communication - Events and Parameters

    Hi,
    I just tried a sample inter portlet communication using events and parameters.
    I used the below code to enable inter portlet communication between two struts portlet.
    UrlUtils.constructLink etc
    The above works fine. Instead of link, I would like to use a form button to fire the event.
    Is there any way of using button to fire the event.
    Another thing I noticed is that when the event is fired the page gets refreshed.
    How to enable inter portlet communication without the portal page refreshing.
    Many Thanks in advance!!!!!!!!
    -Chid

    Hi Natu,
    To start: read the documentation: http://download.oracle.com/docs/cd/B32110_01/webcenter.1013/b31074/jpsdg_java_adv.htm#CHDHDCGI
    Then, you need to make sure the portlets can operate independently. That means: the locations portlet should be able to run without the incidents portlet.
    What you should try to achieve is create a locations jspx that uses a page parameter with the incident number as input. The page can then be populated based on that id.
    The key thing here is: input portlet variables are available as page parameters.
    Then, you need to add some functionality to the incidents portlet to submit the selected incident number to the outside world. You can do this using some backing bean code. Example:
        public void transmitEvent(ActionEvent actionEvent) {
            FacesContext facesContext = FacesContext.getCurrentInstance();
            ExternalContext externalContext = facesContext.getExternalContext();
            Object response = externalContext.getResponse();
            if (response instanceof javax.portlet.ActionResponse) {
                ActionResponse actionResponse = (ActionResponse)response;
                // setting the portlet OUT parameter
                String outResult = "my output";
                actionResponse.setRenderParameter("outParam",  outResult);
           } else {
                // not in portlet environment
        }Hope this brings you further.
    Jeroen van Veldhuizen

  • Inter-Portlet Communication Best Practices

    Here's the situation:
    There are 2 Portlets on a page; a Search Portlet and a List Portlet. When a user selects search criteria in the Search Portlet and presses the Submit button the items displayed in the List Portlet must be updated to reflect the search criteria that was entered.
    My approach to implementing this:
    When the user presses the Submit button the Search Portlet code will take the information entered by the user and create a searchObj. This searchObj will be attached to the Http Session object. When the Search Portlet is rendered again in the browser it will recognize (via a hidden HTML attribute) that it needs to inform the List Portlet that there is new search criteria. The browser will then generate a Portal Event that will cause the List Portlet to refresh its list based on the searchObj it finds attached to the Http Session object.
    Question 1:
    Assuming this is a reasonable approach how do I get the Search Portlet to generate an event based on a HTML hidden field at the time the Portlet is rendered?
    Question 2:
    Is there a better way to implement this type of functionality? Essentially the problem is that one Portlet needs to process some data and once it's done it needs to notify other Portlets. What are the best practices for this type of situation?
    Any suggestions are welcome.

    Hi,
    As per the JSR 168 Specification, we follow PortletSession with APPLICATION_SCOPE for implementing IPC ( inter portlet communication ).
    Here are the steps for IPC:-
    1. When you press submit from search portlet then fetch the search string value into the processAction method of the search portlet.
    2. Put the search string value in the portlet session with APPLICATION_SCOPE.
    3. When you press submit of search portlet, doView() method of both the portlets
    ( Search and List ) will be called.
    4. in the doView() method of List portlet retrieve the search string from the portlet session and call the business logic based on the search criteria.
    5. Put the search result into bean or as per your framework design.
    6. Iterate the bean value on to your List portlet rendering jsp.
    Note:-Here it is assumed that both the portlets are in the same ear/war.
    The coming JSR 286 specification, allows a portlet to send and receive events and perform state changes or send further events as result of processing an event.
    In JSR 286, we would be having one more request and reponse called EventRequest and EventResponse.
    Comments and suggestions are welcome for IPC.
    Thanks
    <Neeraj Sidhaye/>
    Try_Catch_Finally AT YAHOO DOT COM
    http://ExtremePortal.blog.co.uk

  • JSR 168 best practice for saving inter-portlet state

    The portlet specification doesn't yet cover inter-portlet communication. Until
    it does, what is the best practice for saveing state so that multiple portlets
    can use the same data?

    The portlet session is layered on top of the HTTP session except for
    attribute scoping. So, all portlets in a webapp share the same
    HTTP/portlet session for a given client.
    All APPLICATION_SCOPEd portlet session attributes are automatically
    available to other portlets. With PORTLET_SCOPEd attributes, portlet
    containers namespace attribute names, so it would be hard to get
    attributes by name (but still possible).
    Subbu
    Chris Jennings said the following on 10/14/2003 09:17 AM:
    If I set an attribute in a PortletSession, though, it isn't visible form another
    PortletSession... right? Please tell me that's wrong ;-) If that's right, how
    can I have portlet B get to something set by portlet A?
    Subbu Allamaraju <[email protected]> wrote:
    Chris,
    For sharing transient state, the only possible mechanism in V1.0 is to
    use sessions.
    Subbu

  • Inter-portlet (JSR286) in liferay portal

    i had created two portlets using ADF and i can consume them in WebCenter Portal apps. Nothing has to do in the portal side as webcenter auto-wire the portlets. The question is how i can consume the portlets in liferay? is there any step required in the liferay portal site to 'wire' the portlets so that they can communicate with each other? or just like drag and drop in webcenter? I developed the portlets using the guide here: http://yonaweb.be/inter_portlet_communication_jsr_286_and_webcenter_11g_ps3

    Wiring portlets together in liferay not dependend on the portlet. Because your portlets are standard based, liferay doesn't care if they are ADF portlets, JSP portlets or portlets build with other technology.
    Information on how to do this in liferay should be found in the documentation of liferay: http://www.liferay.com/community/wiki/-/wiki/Main/Inter-portlet+communication
    Just a question... Did you had any issues with consuming the portlets in liferay. I have tried it in the past and had lots of issues with libraries and so on. Especially because ADF uses a lot of javascript and I had a hard time configuring it properly with liferay...

  • Inter portlet communication in SP4

    Can any one tell me in step by step process with sample code to do inter portlet communication in SP4
    Here i have 2 portlets
    Portlet A and portlet B
    Portlet A has 2 hyperlinks link1 and link2
    When i click link1 or link2 in portlet A, i am passing a parameter,depends on the paramater i have to display some details in portlet B
    Thanks
    maria
    [email protected]
    Message was edited by marianair at Feb 10, 2005 2:27 AM

    hi,
    implement both portlets as page flow portlets. For both the links in portlet A, implement an action that generates an event and fires thisone. Then let the pageflow in portlet A show whatever content is appropriate, eg. the same as before the link.
    Portlet B cathces this event and in the connected pageflow action does whatever it needs to do and redirects to the appripriate JSP.
    Just remeber that you probably needs to use a custom event here.
    For details on IPC and events, see doc:
    http://e-docs.bea.com/workshop/docs81/doc/en/portal/howdoi/howInterPortletComm_wkshp.html
    As an alternative you can use the SP3 mechanism, I find thisone somewhat more cumbersome and messy.
    http://e-docs.bea.com/workshop/docs81/doc/en/portal/howdoi/howInterPortletComm.html
    Feel free to post follow-ups if you get stuck.
    - Anders M.

  • Event interface for inter-portlet communication

    In which jar file can I find the com.bea.netuix.events.Event interface?
    I wish to offer some support for inter-portlet communication while running inside a 8.1sp4 weblogic portal server.
    Firstly, there is almost no documentation for working with Custom/Generic Events and definitely none for working with "Invoke a java portlet method"
    Found out by decompiling the code that you can do the following:
    add methodName(HttpServletRequest, HttpServletResponse, Event) to you backing file, or
    add methodName(ActionRequest, ActionResponse, Event) to your java portlet
    In both cases, I need find the jar file containing the "Event" interface. Have found most of the other classes in netuix_servlet.jar
    Would also appreciate any further info on when the above methods actually get called with respect to the "processAction" and "processRender" methods for jsr168 portlets...

    Found the answer after a pretty manual search - its located inside:
    BEA_HOME/weblogic81/portal/lib/netuix/system/netuix_system.jar
    All other interfaces being inside the WEB-INF/lib/netuix_servlet.jar, this one class from this package has been packed into a jar at the system classpath level!!
    Had to manually look at the classpath in startWeblogic.cmd and then open up every jar file, follow dependent jar files via the manifest.mf etc...

  • Inter Portlet communication without using workshop

    Hi
    Does any one have any luck trying to do inter portlet communication without using weblogic workshop IDE?

    Hi Curt,
    WLP's eventing system is designed such that portlet's don't have to care
    whether the source/destination is local or remote. If you have a portlet
    that fires/consumes events, when you create a proxy portlet on a
    consumer, the portlet on the producer will be able to fire and receive
    events without any changes to it. In this scenario, the proxy portlets
    work with the WLP's event runtime to collect and dispatch events on
    behalf of portlets on the producer. Going forward, WSRP 2.0 and
    JSR168-next's eventing models will be mapped to the same WLP event runtime.
    Subbu
    Curt Smith wrote:
    Thanks Subbu for your enlightenment here and in this group!!
    You mentioned my next quest, WSRP'ifying my portlet & IPC system.
    Can you suggest an WSRP example anywhere on the net or in bea?
    I guessing that suitability of IPC is also a function of whether the portlets are the remote portlets or the local portlets.
    Might a non-Bea IPC choice be usable within the local portlets, which are WSRP clients to stand alone remote portlets?
    I can imagine now that you mention it that the remote WRSP producer portlets can't use just any IPC facility and the events be pushed inband to the consumer portal...
    tnx curt

  • Inter portlet communication using a float portlet

    Hi,
    I am trying to achieve inter portlet communication between a jsp portlet and a pageflow portlet.
    The jsp portlet will open up as a pop up window or as a float portlet.
    I am using BEA Weblogic 8.1 SP5.
    Has any body tried this IPC when the jsp portlet is a float portlet?
    If there is any documentation available for the same?
    Thanks,
    Shreesh

    Hi,
    Thanks for the reply.
    In the search.jsp I am adding an action associated with a form bean, and passing the search string to the form, which will pass the request to the action method. This is the code snippet:
    * @jpf:action
    * @jpf:forward name="success" path="search.jsp"
    protected Forward searchcriteria(SearchcriteriaForm form)
    String searchString = form.getString();
    try {
    URL url = new URL("http://localhost/demo_search.asp");
    HttpURLConnection http = (HttpURLConnection) url.openConnection();
    http.setRequestMethod("POST");
    PrintStream out=new PrintStream(http.getOutputStream());
    out.println("searchParam=searchstring");
    out.flush();
    out.close();
    BufferedReader reader=new BufferedReader(new InputStreamReader(http.getInputStream()));
    reader.readLine();
    String patternStr = "pattern";
    Pattern pattern = Pattern.compile(patternStr);
    Matcher matcher = pattern.matcher("<a href");
    // Retrieve all lines that match pattern
    String line = null;
    while ((line = reader.readLine()) != null)
    out.println("***"+line+"***");
    matcher.reset(line);
    if (matcher.find()) {
    // line matches the pattern
    } catch(Exception e)
    e.printStackTrace();
    return new Forward("success");
    * FormData get and set methods may be overwritten by the Form Bean editor.
    public static class SearchcriteriaForm extends FormData
    private String string;
    public void setString(String string)
    this.string = string;
    public String getString()
    return this.string;
    The question is what should be the return forward for the search coz, the result should be displayed in a seperate portlet. Also, how do I capture only the result in the result.jsp.
    I would appreciate if you help me,
    Thanks in Advance,
    Sailatha

  • Struts Portlet - inter Portlet communication

    Hi
    How to make inter Portlet communication in Struts portlets?
    Thanks
    Subin

    A quick google search brought back this:
    http://download.oracle.com/docs/cd/B15904_01/portal.1012/b14134/pdg_java.htm

  • How to perform inter-portlet communication in alui6.1.

    I want to perform perform inter-portlet communication in alui6.1. I don't have any clue to how to do it.
    Can anyone help me.

    Frankly, I did it using jQuery. When you have just two portlests on page, you can hardcode object id of second portlet in a code (not so nice, but very fast to see results). Otherwise you can use portlet settings to stay more environment independent.
    In brief, in first portlet via ajax I request for data, using css selector jQuery, paste content to div in second portlet.

  • How we develop inter-portlet communication in plumtree portal using IDK

    1)How we will develop inter-portlet communication in plumtree portal using IDK .
    is it possiable using Master Detail Pattern? or any other alternate way.
    Regards
    Dheeraj Sai

    This can be done by developing Adaptive Portlets:
    http://edocs.bea.com/alui/devdoc/docs60/Portlets/Adaptive_Portlets/PlumtreeDevDoc_Integration_Portlets_Adaptive_Intro.htm

  • Discoverer Portlet Refresh Date

    I have a Discoverer Portlet on a Portal page. Is there any way I can hide or not show the Last Refresh Date and Next Refresh Date from Discoverer Portlet?
    Here's an example:
    Graph or Gauge displayed and then at bottom there is:
    Last Refresh Date           3/31/06 10:46 AM
    Next Refresh Date           4/1/06 9:01 AM
    Thanks in advance,
    -- asit

    If anyone's interested, i found a blog that shows how to remove it.
    UIX Hack 2 – Remove the Last Refresh Date from Discoverer Portlets
    http://oraclebi.blogspot.com/2005/09/uix-hack-2-remove-last-refresh-date.html
    Thanks Abhinav,
    -- asit

  • WSRP & inter portlet communication

    Hi,
    I have 2 remote portlets a) creating new account and b) for displaying list of accounts.
    When a new account is created in "portlet a" I want to refresh "portlet b".
    To do this I have put event (OnRefresh event) handler in portlet b with an action to call a page flow method of portlet b. This works like a charm.
    While doing this I want to send newly created account number from portlet a to portlet b. How do I do this?
    Thanks a lot.
    Kam

    Thanks a lot Anders.
    I think I am very close to finish line. Just need one more answer.
    This is what I did. JPF method, CreateAccount() of "Portlet A" fires custom event using PortletContext.fireCustomEvent API.
    In "Portlet B" (using event handler wizard of weblogic workshop) I am performing following 2 actions ...
    1) I am calling handlePortalEvent() method of backing file
    2) Then call JPF method RefreshList()
    In handlePortalEvent() method I get the custom event data (account number) successfully. But how do I pass this account number to RefreshList() method. I tried doing request.setAttribute in handlePortalEvent() and
    request.setAttribute in RefreshList() but this doesn't work.
    Thanks again.

  • Portlets Refresh

    hi
    anybody can tell me why my discoverer portlets don't refresh (gauge portlets)
    if i make some changes in the parameters, (colors, size, etc) my portlets after update don´t change anything.
    If i publish a workbook i have the same problem with display of rows.... if in my publishing i defined 7 rows and in portal i want to see 10 rows, don't refresh...but if i click in the next 7 rows the refresh works fine.
    I don't know what happen? the last week all worked ok... i really don't understand, i don't move anything in the configuration...
    Any idea o suggestion
    Thanks for your help.
    Alex

    Hi.
    I have noticed in 9.0.4 that I cannot really make modifications to the Discoverer Portlets...even if it seems to accept the changes. I usually create a new portlet, then delete the old one.
    Robin

Maybe you are looking for

  • Sub contracting components tracking against PO

    Hi Is there any way to track the components isssued against a PO. There are a couple if transactions to track the materials with vendor MBLB and ME2O But here we cant track the Materials issued against a PO. To be clear I want to track for the pertic

  • Inorder to update dep of asset in internal order

    Hi ,     Inorder to update depreciation of an asset in internal order ,i assigned internal order in asset master record as far my knowledge.    can any one suggest me for 2 nd configuration setting in IMG. Thanks in advance. Kiran

  • [b]Hash Tables[/b]

    Hi, this is probably a strange request, but i have to write a hash table[\b] function from scratch. I have no idea where to start. apparently i have to store the hash values in linked lists somehow please help im desperately in need of some advie tha

  • Pro 100 printing

    I replaced a HP Photosmart B8550 with a Pro-100 recently.  In printing images both that I printed previously on the HP and some I have only printed on the Canon Pro-100 I am having frustrating results.  I am getting darker prints and less intensity o

  • Authorization Object at course type level in LSO

    Hi Experts, We are trying to restrict authorization  for users at Course type level or each course level. Is there any authorization object available in SAP Standard roles (PFCG) to restrict users at Course level. Maximum points would be rewarded for