(Why) do I need a JSR-168 Portlet container?

Probably I'm missing something essential here, but whey do I need a JSR-168 portlet container? Suppose I'm using Tapestry 4 to write my JSR-168 compliant portlets, can they be consumed "directly" by a WSRP Portal server?

Because:
"A portlet container runs portlets and provides them with the required runtime"
"environment. A portlet container contains portlets and manages their lifecycle. "
"It also provides persistent storage for portlet preferences. A portlet container"
"receives requests from the portal to execute requests on the portlets hosted by it."
"A portlet container is not responsible for aggregating the content produced by the"
"portlets. It is the responsibility of the portal to handle the aggregation."

Similar Messages

  • Is the JSR-168 portlet-container supported for 10.1.3?

    And if so, what are the actions to be taken to install it on OC4J 10.1.3 standalone? I tried to install it earlier but ran into problems, see: WSRP Provider registration fails for OC4J10.1.3 container (stack), why?
    I want to use OC4J 10.1.3 as my JSR-168 container, because I can (try and) deploy Tapestry 4.0 portlets in this application server, that use Java annotations. I then want to consume these portlets over WSRP - part of Portal 10.1.4

    <bump count="2"/>

  • How to debug jsr 168 portlet in jdeveloper 10.1.3.4

    Does anyone know how to locally debug a jsr 168 portlet in jdeveloper 10.1.3.4.
    When I click on run it asked for a start page so I supply the view.jsp page.
    The following error occurs on the page:
    500 Internal Server Error
    java.lang.NullPointerException     at helloworld.html._view._jspService(_view.java:61)     [helloworld/html/view.jsp]     at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.4.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)     at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)     at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)     at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:234)     at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:29)     at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:879)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)     at java.lang.Thread.run(Thread.java:595)
    This is the first jsr 168 portlet I have tried.
    Previously we have been created portlets using the Oracle PDK. Those portlets are easy to debug because the wizard creates an index.jsp page for the start page.
    If anyone can provide some insight to my issue it would be greatly appreciated.
    Thanks,

    Is this a portlet you built from scratch using the JSR 168 APIs, or is this a JSF Portlet using the JSF Portlet Bridge. If the latter, you can debug your JSF application. If the former, you can do remote debugging (let me know if you need information on this).
    Hope this helps,
    Peter

  • JSR 168 portlets packaging question

    Hello,
    I have a bunch of Java (JSR 168, using Spring MVC) portlets (PortletOne, PortletTwo...PortletN) that I created as individual Portal Web projects and are contained in a Portal EAR project. This portal EAR is my deployment unit and also consists of another Portal Web project (Assembly.war) that holds a app.portal file where I plan to assemble all these Java portlets and use it to create a desktop. The reason for having all the individual portlets in web projects of their own is to be able to export them as a unit and use it elsewhere either as a shared library or package it within another EAR file as the need arises.
    my application.xml looks somewhat like this:
    <?xml version="1.0" encoding="UTF-8"?>
    <application id="Application_ID" version="1.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd">
         <display-name>MyEar</display-name>
         <module id="WebModule_1">
              <web>
                   <web-uri>Assemby.war</web-uri>
                   <context-root>appname</context-root>
              </web>
         </module>
         <module id="WebModule_2">
              <web>
                   <web-uri>PortletOne.war</web-uri>
                   <context-root>PortletOne</context-root>
              </web>
         </module>
         <module id="WebModule_3">
              <web>
                   <web-uri>PortletTwo.war</web-uri>
                   <context-root>PortletTwo</context-root>
              </web>
         </module>
    </application>But since all these WAR files are at the same level I cannot reference the context definitions and the controllers for the portlets defined in each of these portlet WAR files (PortletOne, PortletTwo,...) from the common web project that holds the app.portal file in Assembly.war. I tried to define a custom classloader structure in weblogic-application.xml and put the assembly war file at a lower level but the app even fails to deploy with IllegalAccessError as soon as a context for each of the war files is registered by the hot deploy process. Moreover, when I deploy the EAR file, the portlets defined in each of the WAR files do not appear in the Resources library when viewed from the Portal Administration console.
    Any suggestions how to assemble these individual portlets into a common web project, while still keeping them packaged within the same EAR file? Alternate approaches are welcome too.
    I have already considered deploying these portlet WAR files as Weblogic J2EE shared libraries. But with this approach, the overall application response time is very slow in spite of exhausting all tuning options and also cannot pre-compile JSPs in the shared libraries.
    Is importing the JSR-168 portlets using the import utility as WSRP portlets a viable option? Will I be able to share session variables across portlets, fire and handle events and be able to pre-compile the JSP in idividual portlets?
    Edited by: shyam6190 on Aug 13, 2009 1:25 PM

    Hello,
    Perhaps the multiple nested classloaders involved with the shared libraries approach is slowing it down- if that is the case, it would be hard to fix.
    Using WSRP should work for you; there is a bit more complexity but if you have relatively simple portlets, use the correct JSR168 tags and methods (or the Spring bridge does), it shouldn't be too hard to get to work. The IDE may be able to help you with that; you can create a new portlet of type "remote portlet" in your aggregated webapp, and a wizard will walk you through the steps. If you use local proxy mode, the portlet's individual WSDL URL will be the URL to each portlet's webapp on localhost.
    The WSRP configuration can also be done dynamically in the Portal Admin Tools, and even using a specialized JSR168 import tool, but both of these options would only create database instances of portals and portlets in your aggregating webapp. This would be fine if your aggregated EAR never needs to move to a different deployment environment, but if you require portability of the EAR to another environment it complicates packaging, as database information is also required. If you happen to be using WLP version 10.3, I believe there is a bug which prevents the specialized JSR168 import tool from working, but the tool is documented here:
    http://download.oracle.com/docs/cd/E13155_01/wlp/docs103/prodOps/deployment.html#wp1047337
    Since all the WSDL URLs will point only to the localhost, when you package the aggregated WAR file it should deploy properly to any servers. Information about the local proxy mode, which should improve performance for your configuration, is described here:
    http://download.oracle.com/docs/cd/E13155_01/wlp/docs103/federation/Chap-Best_Practices.html#wp1010714
    Hope this helps!
    Kevin

  • Secure AJAX calls made from a JSR 168 portlet

    I am investigating methods to secure AJAX calls made from a JSR 168 portlet to a servlet using the Direct Web Remoting framework (DWR) and Weblogic Portal. The portlet can have more than one instance and different entitlements depending on the desktop it is available from. The Portal has several desktops and does not require the user to authenticate for some of the desktops.
    So far the only method I have come up with is to pass a token from the portlet to the servlet which indicates the entitlements the user should have to access the documents from the portlet and check in the servlet if the User has the appropriate global roles to access the documents.

    no , that doesn't work, the token passed can be modified by a malicious user (unless the token is random or signed)
    You need to store the desktop(s) the user is on in probably the HttpSession and read that from the servlet and make the decisions accordingly.
    regards
    deepak

  • Control Height Of Region Containing JSR-168 Portlet

    We are in the process of converting some portlets from Oracle Reports to JSR-168. Our intitial portal page would contain the Oracle Reports portlets within the height of the region. The same output created by a JSR-168 portlet causes the region to grow vertically, which pushes the regions below it down thereby creating large gaps.
    The Oracle Reports portlet would have a scrollbar that allows the user to see all of the content hidden below the bottom of the region. No matter what css I apply, I cannot make the same thing happen with the JSR-168 portlet.
    Does anyone have any tips for constraining the vertical size of the regions so that they do not grow to accommodate all of the content but instead produce a scrollbar?

    Andre,
    When you drag a project folder over to a portal, workshop doesn't
    scan/detect the folder contents and create portlets accordingly. So, you
    are creating the wrong portlet type.
    In this case, you need to create the portlet via the file wizard. Just
    right-click on the directory where you want the portlet to live and
    select 'New->Portlet' to get the wizard. Then, select the portlet type:
    'Java Portlet'.
    -robert
    Andre Ranvik wrote:
    Is there anybody who has experience with deploying JSR 168 portlets on WLS 8.1SP2
    that have been "handcoded". The portlets I am trying to deploy are these:
    http://developers.sun.com/prodtech/portalserver/reference/techart/jsr168/#2
    I have tried to manually import the individual folders/files, modified the portlet.xml,
    and dropping the folder containing the jsp's onto a portal within Workshop. I
    respond "yes" to the question whether I want it to create a portlet. The problem
    is that it doesn't recognize this to be a JSR 168 portlet (or it doesn't support
    it??).
    I have also tried to deploy a portlet within a WAR file, but no such luck.
    Support for JSR 168 implies that one would expect support for deploying JSR 168
    portlets developed on other platforms.
    I am hoping for a step-by-step set of instructions on how this can be accomplished.
    Thanks a bunch!
    Andre Ranvik

  • Apache Struts Bridge for JSR-168 Portlet

    Hello,
    I am trying to call a struts application from a JSR-168 Portlet.
    But I am not getting this class "oracle.webdb.wsrp.server.PortletApplicationImpl"
    Which is required for this.
    Can anyone, tell me, where to find this class.
    Thanks
    Sam
    Message was edited by:
    samplified

    I was able to find that class by downloading the Oracle Portlet Container 10.1.2.0.2 and following the instructions for extracting it into my OC4J. When you do that it will give you a file called ${OC4J_HOME}/shared-lib/oracle.wsrp/1.0/wsrp-container.jar. That jar file contains the class you need.
    Oracle Portlet Container 10.1.2.0.2: http://download.oracle.com/otndocs/tech/ias/portal/files/portlet-container.zip
    PDK Page: http://www.oracle.com/technology/products/ias/portal/pdk.html

  • Hidden Variables in JSR 168 portlets

    Hi Friends, can we use hidden variables in JSR 168 portlets.We have a concern using session in our application.The users who are using this portal , would maintain sessions long times like if they log in morning they would close the session or browser , in the evening. So it would give lot of memory problems if we use sessions.
    So we thought to use hidden variables, so please suggest me , can we use hidden variables, and if we can , please help me how to do that, or if any little bit of code help would be appreciated.
    Thanks alot
    peter

    My problem is like this. When user login , based upon his role we need to load some kind of context information from database. The existing applications using hidden variables and storing those variables in them and adding that page into each and every JSP page or ASP page, so that context information would be available through out his state or session. (The users once start the portal, they may close that before going back to home), their state or session would be continuous. What my idea is, if we use sessions in this scenario to store the context variables (so that we can hide), and we can get those session variables every page. But does sessions create heavy load on portlets? or if we are using clustered environment, is this session would shared in clustered environment as well?
    If at all we need to implement this kind of scenario, what would be the approaches?
    Suggest me
    Thanks a lot
    Peter

  • Deploying JSR 168 portlets

    We are working with Oracle Application Server Portal (10.1.4), we built a few JSR 168 portlets that we need to deploy and make them work on the Oracle portal, but I cant find information on how to do this task.
    Please give tell me how to do it or where do I find this information.
    I already reviewed Portal Developer's Guide for this version.

    The documentation about the development of this type of portlets can be found at: http://download-west.oracle.com/docs/cd/B14099_14/portal.1014/b14135/pdg_java_intro.htm#sthref858, items 6.4.2.1 Creating a Portlet, to 6.4.2.4 Registering and Viewing Your Portlet but the document makes reference to calling your portlet as "http://myserver.com:8888/my-portlet/portlets?WSDL", but that would be for a PDK-Java portlet and second, the option for WSRP registration is not there Figure 6-28 Register Provider Page.
    What should I do to publish my standard JSR 168 portlets on the Oracle Portal.

  • JSR-168 Portlets, Plumtree, and IIS

    Is it possible to run JSR-168 portlets with Plumtree under IIS? Has anyone done it, and if so, how?

    If you don't want to use the administration console to create channels based on the porltlets you deployed, you need to create a display profile fragment that create the channels and import using 'dpadmin'

  • JSR 168 Portlet and PORTLET_SCOPE session variables

    Hi,
    I have a JSR-168 portlet that is putting session variables on the PortletSession. I have some variables that use "PORTLET_SCOPE" for that particular portlet. This works fine if I add the portlet directly on a page, no problems. Its able to retrieve and put variables on the PortletSession with PORTLET_SCOPE and retrieve them properly.
    The problem comes when when I have my JSR-168 portlet on a page, then select "Publish Page as Portlet", and then add that page (that contains the JSR-168 Portlet) to another page. Now, when I try to retrieve a variable that was put on the PortletSession w/ PORTLET_SCOPE, it returns null. So its like variables put on the PortletSession with PORTLET_SCOPE doesn't work properly if you add it as a page onto another page.
    In case that wasn't clear, let's say I have Page1 which contains my JSR-168 portlet and I selected "Publish Page as a Portlet."
    If I go to Page1, it works fine, no problems at all.
    Now, I have Page 2. I add Page 1 to Page 2. NOW, the Portlet on Page 1 doesn't work properly and I've narrowed it down to a problem with the PortletSession when PORTLET_SCOPE is used. Has anyone else run into this problem? I'm guessing the problem is the fact that page is published as a portlet and PORTLET_SCOPE doesn't work properly. Is this a bug or expected behavior?? If so, is there a workaround?
    Thanks in advance.

    Frank,
    The taglib is not in the classpath of the Portal server. We access other methods of the ftl taglib, like <f:webResources relativePath='js/myScripts.js' />at places higher up in the JSP and it has no problems with those ftl taglib calls.
    If I understand correctly, since the Portal is hosting a remote portlet, the Portal is only getting html from the remote portlet producer, not the actual JSP to compile into a web page. If that is true, the Portal never sees the taglib code, just the html that is produced from it - so it would not need the taglib in its classpath.
    There is something special about the "invoke" method of the taglib where it makes a call back to the Enterprise server. I think when it tries to go back to the Enterprise server, the Portal server has a problem with it.
    Thanks.
    Edited by marshallbenfield at 08/15/2007 6:02 AM
    Edited by marshallbenfield at 08/15/2007 6:03 AM

  • Error while deploying a JSR 168 portlet developed in JDeveloper 10.1.3.2

    When deploying a JSR 168 portlet created using JDeveloper 10.1.3.2 (Web Center Suite edition), I get the error :
    "Shared library "oracle.wsrp" could not be found."
    Error Log:
    ---- Deployment started. ---- Sep 20, 2007 9:31:42 AM
    Target platform is Oracle Application Server 10g 10.1.3 (PolestarAppServerConnection).
    Wrote WAR file to C:\Projects\eAlliance\JSR168\ViewController\deploy\jsr168.war
    Wrote EAR file to C:\Projects\eAlliance\JSR168\ViewController\deploy\jsr168.ear
    Backing up generic archive file :/C:/Projects/eAlliance/JSR168/ViewController/deploy/jsr168_generic.ear
    Creating WSDLs for the WSRP Application
    WSDLs for the WSRP Application have been created
    Uploading file jsr168.ear ...
    Uploading file jsr168.ear ...
    Application Deployer for jsr168 STARTS.
    Copy the archive to /home/soahome/orasoa/j2ee/home/applications/jsr168.ear
    Initialize /home/soahome/orasoa/j2ee/home/applications/jsr168.ear begins...
    Unpacking jsr168.ear
    Done unpacking jsr168.ear
    Unpacking jsr168.war
    Done unpacking jsr168.war
    Initialize /home/soahome/orasoa/j2ee/home/applications/jsr168.ear ends...
    Starting application : jsr168
    Initializing ClassLoader(s)
    application : jsr168 is in failed state
    Operation failed with error:
    Shared library "oracle.wsrp" could not be found.
    Deployment failed
    Elapsed time for deployment: 39 seconds
    #### Deployment incomplete. #### Sep 20, 2007 9:32:21 AM
    Steps To recreate the error:
    1)Create a new Application in JDeveloper
    2)Click "New" in "ViewController" and click on WebTier->Portlets->Standards based(JSR 168) from the wizard.
    3)Go thru JSR 168 Portlet wizard steps 1 thru' 8 accepting all defaults.
    4)Click "New" in "ViewController" and click on General->Deployment Profiles->WAR File from the wizard.
    5)Enter a name and hit OK. Then in the "WAR Deployment Profile Properties" page, select "Specify J2EE Web Context Root" and enter the name similar to what is in the "Enterprise application name" text box in the same screen. Hit OK.
    6)Right click on the deploy file created under "Resources" and select "Deploy to AppServer" (I am deploying to a remote 10.1.4 Portal Server that has already been configured in my connections tab.
    7)Note the above noted error message in the Deployment Log tab.
    Can you give me any suggestions?
    Thanks,
    Bipin Raj

    Does the \j2ee\home\shared-lib directory contain a directory oracle.wsrp?
    Does the <OC4J_HOME>/j2ee/home/config/server.xml file contain a shared-lib declaration for oracle.wsrp?
    <shared-library name="oracle.wsrp" version="1.0">
    <code-source path="wsrp-container.jar"/>
    <code-source path="wsrp-types.jar"/>
    <code-source path="wsrp-jaxb.jar"/>
    <code-source path="jaxb-api.jar"/>
    <code-source path="jaxb-impl.jar"/>
    <code-source path="jaxb-libs.jar"/>
    <code-source path="namespace.jar"/>
    <code-source path="xsdlib.jar"/>
    <code-source path="relaxngDatatype.jar"/>
    <import-shared-library name="oracle.gdk"/>
    <import-shared-library name="oracle.xml"/>
    <import-shared-library name="oracle.jdbc"/>
    <import-shared-library name="oracle.cache"/>
    </shared-library>

  • JSR-168 Portlet code generation 'hangs' in JDev 10.1.3.2.0/JDK 1.6

    Yes, I know JDK 1.6 is not officially supported by JDeveloper 10.1.3.2.0.....
    However up until now stability has been reasonably fair of the IDE - beside the occasional 'out-of-synch' status of JDeveloper, which so it seems still hasn't but fully resolved (and which I am familiar with). When creating a JSR 168 portlet using the wizard, the wizard completes without an error - but the sources never get generated. What I'm seeing is the message: "Building source index for project "Portlets.jpr" on the left-hand side of the statusbar and a progress-bar on the right-hand side with the label: "Scanning sources". This "never" ends and the only thing left to do is restart JDeveloper.
    Any ideas whether this is JDK 1.6 related?

    Have tried this with JDK 1.5 setting, but no luck. I'm guessing this problem is more related to the fact I'm using Windows Vista than JDK 1.6. Last week I was able to generate JSR 168 portlet code on a file system that was pre-Vista formatted. Last weekend I reinstalled my machine and formatted my hard drives using Vista... I'm guessing that somehow this results in problems generated the sources.
    Or is this too far fetched...?

  • How to deploy a JSR-168 Portlet in Weblogic?

    I am running WLS 8.1 with the advanced JSR-168 support installed (not yet running
    SP2). I have a JSR-168 portlet war that I had been testing in the JSR-168 reference
    implementation (pluto). Can someone please point me to the instructions on how
    to now import my portlet war into Workshop so that I can add it to my Weblogic
    portal?
    Thanks!
    -David

    You cannot simply "deploy" a JSR 168 portlet into Weblogic using a WAR file in
    my experience. This is what I did to achieve deployment of a JSR 168 portlet in
    BEA WLS 8.1SP2:
    * File | New | Portlet | Java Portlet
    * Just type in the name of your view class name when asked for it.
    This creates a "YourAppName.portlet" file, which I believe Bea requires for any
    Portlet in order to make it available for use in their portals.
    * Add your files (*.jar, *.java *.jsp, etc).
    * Modify WEB-INF/portlet.xml to include all required descriptor elements that
    you have in your WAR file (keep in mind that there is only one portlet.xml for
    all portlets in a single web application)
    I was unable to use redirects for some reason, but it worked fine with include.
    "David" <[email protected]> wrote:
    >
    I am running WLS 8.1 with the advanced JSR-168 support installed (not
    yet running
    SP2). I have a JSR-168 portlet war that I had been testing in the JSR-168
    reference
    implementation (pluto). Can someone please point me to the instructions
    on how
    to now import my portlet war into Workshop so that I can add it to my
    Weblogic
    portal?
    Thanks!
    -David

  • Weblogic Portal 10.3.5 - JSR-168 Portlet resize at runtime by the users

    One of the requirement I'm trying to develop in WLP 10.3.5 for JSR-168 Portlet is to give the end user the flexibilty to resize (Just like we can do in Iframe in IE) it in runtime. Is it possible to do this ?
    Any helpful link / pointers are welcome.
    Edited by: hari_wc on Mar 25, 2013 8:46 AM

    Hi,
    Could someone pls explain which cache is used to cache portlet content and in which form the content is cached?

Maybe you are looking for

  • Access Services Not Working Correctly

    I have deployed Access Services and kept to the correct steps accurately according to the Microsoft whitepaper on deploying it. When I create a new Access app, this is the way it looks in a browser when I go into it: As you can see, it looks quite te

  • Sharing Editing Duties Using Final Cut Express 4.0

    I'm fairly new to Final Cut Express. I'm working on a video project with a colleague. He has been working on the project for some time on his Mac. How can I copy his files to aloow me to continue editing the project on my Mac. What files & directorie

  • Unknown Hard Error when reformatting. Please help.

    Hi, I was going to reformat my HD but got the following error after I inserted the Recovery CD into my CD Rom. STOP: 0xC0000221 unknown hard error C:\Winnt\System32\Ntdll.dll Error 0X 80070456: The media in the drive may have changed PREIN ST6.SWM Co

  • JProgressBar and file transfer

    Hi, I am trying to use a JProgressBar to determine how many bytes have been sent so far. I have constructed the JProgressBar with the maximum size of the file size. For each 'segment' of the file sent, the progress bar should increment using the setP

  • Why do Mac's rock so much?

    Why do Mac's rock so much? I don't even own one and I'm all excited. My colleagues and customers use them, so I'm always in the vicinity of a Mac. I wonder if this worries the Microsoft peeps? I have an ipod. Toshiba Satellite A10   Windows XP   wait