Problem storing preferences in a remote (wsrp) portlet

We have developed a JSR-168 portlet that works as expected when it is deployed as a Java portlet in BEA Workshop, on a WebLogic 9.2 portal server.
But if we try to run this portlet remote, by running the "JSR168 .war Import Utility", we get an error regarding preferences. If we go to the Portal Admin console and open the portlet under Library\Portlets, we get the following error:
com.bea.portlet.prefs.spi.PreferenceStoreException: The given portletHandle [JSR168 Portlet] is either invalid, or not accessible or none of the supported portlet containers can handle this portlet.
     at com.bea.wsrp.consumer.adapter.customization.RemotePreferencePersistenceDelegate.getPropertiesInternal(RemotePreferencePersistenceDelegate.java:720)
     at com.bea.wsrp.consumer.adapter.customization.RemotePreferencePersistenceDelegate.getPreferences(RemotePreferencePersistenceDelegate.java:112)
     at com.bea.portlet.prefs.spi.PreferencePersistenceDelegate.getPreferences(PreferencePersistenceDelegate.java:77)
     at com.bea.jsptools.portal.helpers.PortletHelper.getPortletPreferences(PortletHelper.java:1133)
     at com.bea.jsptools.portal.helpers.PortletHelper.doShowDetails(PortletHelper.java:351)
     at portalTools.definitions.portlets.details.DetailsController.getResources(DetailsController.java:82)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
I have tried registering the portlet many times, on two different servers, with the same exception. The portlet works as it should except when trying to store preferences from "edit mode".
Has anyone else had this problem? Is there something I need to configure in order to support preferences in remote portlets?
Thanks,
Anders

There is no edit mode defined in this portlet.
Subbu
Chandra Mouli Parameswaran wrote:
Here you go!. This is the portlet file on the producer side.
<?xml version="1.0" encoding="UTF-8"?>
<portal:root xmlns:netuix="http://www.bea.com/servers/netuix/xsd/controls/netuix/1.0.0"
xmlns:portal="http://www.bea.com/servers/netuix/xsd/portal/support/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/servers/netuix/xsd/portal/support/1.0.0 portal-support-1_0_0.xsd">
<netuix:portlet definitionLabel="portlet_2" title="ViewQuotesController">
<netuix:titlebar/>
<netuix:content>
<netuix:pageflowContent contentUri="/viewQuotes/ViewQuotesController.jpf"/>
</netuix:content>
</netuix:portlet>
</portal:root>

Similar Messages

  • Problem storing preferences

    I come from Windows c++ to Java and am used to storing values in the registry. There is a nice replacement for this in java.util.prefs.Preferences.
    I can pick up the values when I create the controls, the problem how do I store the values? There may well be a better way, but one method I saw was to use finalize, which is the equivalent of a destructor. I overrode this method and put in a break point ready to catch it in action, and nothing happens. It never reaches my break point.
    I'll put in a snippet of my code:
    public class ReconPanel extends JPanel {
         private JCheckBox jRawShow = null;
         jPrefer = Preferences.userNodeForPackage(ReconPanel.class);
         private JCheckBox getJRawShow() {
              if (jRawShow == null) {
                   jRawShow = new JCheckBox();
                   jRawShow.setSelected(jPrefer.getBoolean("raw show", false));
              return jRawShow;
         private void setRegistry() {
              boolean selected;
              selected = false;
              if(jRawShow.getSelectedObjects()!= null) selected = true;
              jPrefer.putBoolean("raw show", selected);
         protected void finalize() {
              setRegistry();
         }First and foremost, why doesn't it hit my breakpoint?
    Second, is there a better place to put my setRegistry, as the destructor may be a little too late?
    Thanks,
    Ilan

    import java.awt.Frame;
    import java.util.ArrayList;
    import javax.swing.JFrame;
    * TODO Enter description
    public abstract class AbstractApplictionMainFrame extends JFrame implements ExitApplicationProducer {
         //     ------------------------  Non-Public Fields -----------------
         ArrayList<ExitApplicationListener> exitListeners = new ArrayList<ExitApplicationListener>();
         //     ------------------------  Constructors ----------------------
         protected AbstractApplictionMainFrame(){
              GuiUtilities.setLookAndFeel();
         //     ------------------------  Interface Implementations ---------
          * TODO Enter description
          * @param listener
         /* (non-Javadoc)
          * @see utilities.gui.ExitApplicationProducer#addExitApplicationListener(utilities.gui.ExitApplicationListener)
         public void addExitApplicationListener (ExitApplicationListener listener) {
              exitListeners.add(listener);
         //     ------------------------  Public Methods --------------------
         protected void exitApplication() {
              if (exitListeners.size() > 0) {
                   for (ExitApplicationListener l : exitListeners) {
                        l.handleApplicationExiting();
              handleExitApplication();
              this.setVisible(false);
              for (Frame f : getFrames()) {
                   f.dispose();
              this.dispose();
         //     ------------------------  Non-Public Methods ----------------
         protected abstract void handleExitApplication();
    public class exitTest extends AbstractApplictionMainFrame{
         public exitTest() {
              super();
              this.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
              initialize();
          * This method initializes this
         private void initialize() {
           this.addWindowListener(new java.awt.event.WindowAdapter() {
                 public void windowClosing(java.awt.event.WindowEvent e) {
                      exitApplication();             }
         public static void main(String[] args) {
              Frame frame = new exitTest();
              frame.setVisible(true);
         protected void handleExitApplication(){
           // do main exit processing here
    }

  • Trouble with WSRP portlets

    Problem: at one moment all deployed WSRP portlets was crushes.
    The following error shows in portlet window: Error: Could not get markup. The cookie or session is invalid or there is a runtime exception
    Remote debugging shows, what portlets really works, but Portal server can't get markup after portlet was executed.
    And similar following exceptions I has found in portal's application.log:
    06/06/20 15:16:44 portal: DEBUG: active=26 id=91794728298,1 Content Fetcher Caught Dispatcher Exception :
    oracle.webdb.utils.PortalExceptionImpl: An error occurred whilst invoking an operation on the Provider
         at oracle.portal.PortalException.<init>(Unknown Source)
         at oracle.webdb.dispatcher.DispatcherException.<init>(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPDispatcherException.<init>(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPRenderDispatcher.dispatch(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPDispatcher.dispatch(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPCacheDispatcher.dispatch(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPMainDispatcher.dispatch(Unknown Source)
         at oracle.webdb.page.ContentFetcher.run(Unknown Source)
    Caused by: java.rmi.RemoteException: Runtime exception; nested exception is:
         XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing
         at com.sun.xml.rpc.client.StreamingSender._handleRuntimeExceptionInSend(StreamingSender.java:269)
         at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:251)
         at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Stub.getMarkup(WSRP_v1_Markup_PortType_Stub.java:205)
         ... 5 more
    Caused by: XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing
         at com.sun.xml.rpc.streaming.XMLReaderImpl.next(XMLReaderImpl.java:110)
         at com.sun.xml.rpc.streaming.XMLReaderBase.nextContent(XMLReaderBase.java:23)
         at com.sun.xml.rpc.streaming.XMLReaderBase.nextElementContent(XMLReaderBase.java:41)
         at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:116)
         ... 6 more
    caused by: java.rmi.RemoteException: Runtime exception; nested exception is:
         XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing
         at com.sun.xml.rpc.client.StreamingSender._handleRuntimeExceptionInSend(StreamingSender.java:269)
         at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:251)
         at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Stub.getMarkup(WSRP_v1_Markup_PortType_Stub.java:205)
         at oracle.webdb.wsrp.client.run.WSRPRenderDispatcher.dispatch(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPDispatcher.dispatch(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPCacheDispatcher.dispatch(Unknown Source)
         at oracle.webdb.wsrp.client.run.WSRPMainDispatcher.dispatch(Unknown Source)
         at oracle.webdb.page.ContentFetcher.run(Unknown Source)
    Caused by: XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing
         at com.sun.xml.rpc.streaming.XMLReaderImpl.next(XMLReaderImpl.java:110)
         at com.sun.xml.rpc.streaming.XMLReaderBase.nextContent(XMLReaderBase.java:23)
         at com.sun.xml.rpc.streaming.XMLReaderBase.nextElementContent(XMLReaderBase.java:41)
         at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:116)
         ... 6 more
    Need help to solve this problem.
    P.S. Sorry for bad english.
    Message was edited by:
    Yarrow

    Oracle Portal version 10.1.4

  • Remote Inter Portlet Communication for JSR 168

    Hi All,
    We are stuck in a big problem using JSR 168 as remote portlets. We will be relieved if someone can suggest few ideas on this. I will provide the scenario which we are trying now.
    We have two portlets namely portlet A and portlet B which are Java(JSR 168) type portlets. These two portlets are offered as remote and they reside in the producer application. We have consumed these two portlets in our consumer application.
    The portlet A is triggering an event and portlet B is listening to the event triggered by portlet A. Currently we are trying to implement this functionality using Ajax. We tried to use customEventUrl tag in our jsp belonging to portlet A and we finally figured out that customEventUrl will not work in Remote portlets. We are not sure as how to pass the information from remote portlet A to remote portlet B. Please let us know your thoughts about this as whether the implementation is really possible when using Remote portlets.
    IMPORTANT NOTE: The event handling and the configuration code that we have made in the above scenario is working perfectly for non-remote java portlets. The problem is occurring only when we consume them in the consumer application.
    Thanks
    Vijay

    Hello Ashwin,
    What version of WebLogic Portal are you using? And is this the same for both the consumer and producer?
    If you are using WLP 10.3.2 I would highly recommend using JSR286 portlets (the next version of the Java Portlet (JSR168) specification) and the JSR286-standard eventing. The JSR286 eventing model is actually much cleaner and easier to understand than the WLP-proprietary support for events in JSR168 portlets.
    However, if you are using a version of WLP prior to 10.3.2 and can't upgrade, JSR168-style events are your only choice. I can give you examples, but they all look very similar to the examples in the online documentation.
    When events work between portlets locally, but not over WSRP, the usual problems are:
    - There is one or more of "onlyIfDisplayed", "sourceDefinitionLabels" or "sourceInstanceLabels" attributes declared on the handle*Event element in the .portlet file. These attributes restrict when the portlet should receive an event, and they usually don't work the way you think when running over WSRP. It is best to not use these attributes for portlets which are going to be used over WSRP.
    - A payload is being sent with the event which is not actually serializable. If serialization of the event payload (which is required for versions of WLP prior to 10.3.2 for WSRP) fails, the event will not be delivered to the portlet.
    - The producer may be configured to not accept events. Check your producer's WEB-INF/wsrp-producer-config.xml file; the "service-config" element should either not have an "offer-extensions" attribute, or this attribute's value should be "true".
    - The events may be getting sent during a portlet lifecycle other than processAction or handleEvent. There is no way for WSRP to handle events which have been sent during preRender or render, so it simply doesn't work.
    - In the case of JSR168 portlets, if you have a backing file on the portlet (in addition to the portlet implementation as well), that may not work in some circumstances over WSRP. It is best to have the event handlers be in the portlet implementation class and avoid the use of backing files for JSR168 portlets.
    If none of those things help you, my suggestion would be to post a sample .portlet file for one of the portlets that is supposed to be receiving the event, as well as the method signature in that portlet's implementation class that is supposed to be receiving the event, and the code which is sending the event that is supposed to be received.
    Kevin

  • WSRP Portlet deployment

    I have a simple WSRP portlet, which I developed in JDev as an ADF app using a Business Object bound to an ADF Form, via JDBC to a remote Oracle 11g database, and portletized using the Portlet Bridge/Wizard.
    Everything works fin locally on the Integrated WL server, but when I deploy it to my Weblogic Managed Server, it tries to run, but just hangs perpetually at the twirling O initialization progress indicator.
    I've isolated the problem to being related somehow to the database connection, by creating an identical app with the same adf form elements, sans the database binding, and it works fine.
    I've double checked that the jdbc connection, which I have depolyed to the same wls target that I'm deploying the portlet to, works and is using the same driver, and that the jndi names match, but am at a loss now as to where else to look to find this apparent disconnect.
    Would love to hear from anyone that may have experienced this and found the cause, or anyone who might have any suggestions as to further troubleshooting steps I could take.
    Thanks!
    Edited by: ray.mccormick on Mar 16, 2012 11:25 AM

    Found the solution on Metalink (Note 437789.1) by editing the existing v1 wsdl and creating a dummy one in my deployment file.

  • Handling large files in scope of WSRP portlets

    Hi there,
    just wanted to ask if there are any best practices in respect to handling large file upload/download when using WSRP portlets (apart from by-passing WebCenter all-together for these use-cases, that is). We continue to get OutOfMemoryErrors and TimeoutExceptions as soon as the file being transfered becomes larger than a few hundred megabytes. The portlet is happily streaming the file as part of its javax.portlet.ResourceServingPortlet.serveResource(ResourceRequest, ResourceResponse) implementation, so the problem must somehow lie within WebCenter itself.
    Thanks in advance,
    Chris

    Hi Yash,
    Check this blogs for the strcuture you are mentioning:
    /people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
    /people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
    Regards,
    ---Satish

  • WSRP Portlet open new window

    Hello allm
    I have three wsrp portlets on a page, (Applications navigator, favourites, worklist) and when I click them I get the correct link so they work just fine. MY problem is, clicking any link in a portlet will open that link in the current window, thus loosing the portlet window. Does anyone know how I can force this to open in a new window? It sounds like a simple task but have not been able to find that conig setting just yet..
    Thanks in advance.
    Grummy

    For anyone else that stumbles upon this issue, the resolution is as follows:
    Edit the region where the portlet resides
    go to Attributes
    move 'Link - Display Name' to the 'Displayed Attributes'
    Back on the main edit page, click actions on the portlet, edit portlet, and then select display as Link That Displays Portlet In New Browser Window, done.

  • Wsrp portlet discovery

    Hello!
    I have just installed websynergy-gfv2-linux and started playing with it. I am interested in the WSRP support of the product. Right now, I am trying to do a simple test: I want to use the WSRP portlet discovery mechanism to search for a portlet in a UDDI registry, and then start a WSRP consumer that consumes that remote portlet. The question is: is this operation supported through the admin interface of websynergy? I ask because when I get to the WSRP Consumer Admin interface, I get only the oprion to specify the URL of the producer to which the consumer must connect.
    Thanks,
    Florin.

    Registry support i.e both publishing and discovering is not there in websynergy. There is no plan right now to support it, older portal version esp 6.x had ebxml registry support but this was later dropped.
    However if registry server provides users the option to publish and discover artifacts, you can use it. Its just like publishing and discovering any other artifact on a registry server.

  • What is the difference between JSR 168 portlets and WSRP portlets?

    What is the difference between JSR 168 portlets and WSRP portlets?

    Here is the difference between JSR168 and WSRP:
    The WSRP specification does not make any statements as to implemention. Java's portlet specification, JSR 168, and WSRP are not competing technologies. JSR 168 may be used to define a portlet, and WSRP may be used to define a portlet's operations to remote containers. JSR 168 portlets and WSRP may be used together to define a portlet and to provide remote operations. Similarly, .NET portlets may be created for use with WSRP. Interoperability between JSR 168 and .NET WSRP implementations has been demonstrated

  • WSRP portlets - consumer-side backing files

    I'm trying to find a way to send the consumer-side portlet instance label and the desktop definition label into my WSRP portlets. The BEA WSRP documentation indicates that using a backing file is the way to do this. The only problem is that even though creating a backing file and extracting the two strings is straightforward, it isn't clear how to go about communicating the information from the backing file to the WSRP portlets, since the session and request spaces are independent. I could use some recommendations. Thanks in advance.

    There is limited support for this in 10.3, in 10.3.2 there are some javascript libraries to help you add parameters to URL.
    In 10.3 your best bet is as follows:
    Do NOT modify the URL, instead do a POST to your actionUrl and pass in the parameter in the POST body. You, will also need to do use a PortletXMLHttpRequest to avoid getting the entire page returned.
    Good luck,
    Nate

  • How to show the logged in User's displayName in a custom wsrp portlet

    Hi,
    I have a custom wsrp portlet added to webcenter space. Within the portlet I need to show the logged in(sso) user's displayName. I have tried using #{webCenterProfile[securityContext.userName].displayName} but its not working. Any pointers would be highly appreciated.
    Regards,
    Ann

    You might want to post that in the [WebCenter Suite - Framework|http://forums.oracle.com/forums/forum.jspa?forumID=354] discussion board.
    This area is strictly WebCenter Interaction which is a completely different product than Spaces.

  • Handle HttpRequest and Responce in WSRP Portlets

    Hi all,
    I have deployed a fusion ADF application as a WSRP portlet on webcenter portal.
    In my portlet application code i want to perform some file handling operations(like open a file in browser) using ADF table components.
    I had used Http sevlet request and responce but portlet throws a following exception.
    java.lang.ClassCastException: org.apache.myfaces.trinidadinternal.config.dispatch.DispatchResourceResponse cannot be cast to javax.servlet.http.HttpServletResponse
    Any one has some idea about how to handle http request and responce in WSRP portlets.

    Hi
    Portlets don't use HttpServletRequest & HttpServletResponse.
    Use instead of them: PortletRequest & PortletResponse
    Regards.

  • XSan/iMovie HD problems - won't render to remote disk, please help!

    Without warning last week my g4's started to crash on the simple task of rendering a title in iMovie to the Xsan - then shortly after that the g5's decided to choke on a title render in iDVD. No changes what-so-ever were made to any of the systems, configurations, permissions, settings you name it, one day things are fine and the next yikes! Now I know there have been problems with iMovie writing to remote disk (for instance with the fast/slow/reverse effect which just never did work on the Xsan being a remote disk.) I've worked around it in past this one is rather enormous though - I can only import and export video to the XSan right now. Anything else seems to lead my machines into a full crash, and to make matters worse I've got kids lined up around the block wanting to get in to spruce up their videos right now. We've done a defrag of the XSan and that didn't help, does anyone have any suggestions of advice, it's important that iMovie function with our XSan, since that was why it was purchased initially. Thanks.

    So, you're re-sharing the Xsan volume to a bunch of workstations using AFP, or are all these direct attached?
    Did the G4/G5 workstations get updated to a newer OS without you knowing? Or a new version of QuickTime?
    Do you have a metadata controller and a backup? Try failing the master for the backup.
    You could always unmount the volume from all clients, stop the volume and run cvfsk.

  • Can I expose Oracle Reports as a WSRP Portlet

    We need to make reports created in Oracle Reports available to other portals, can this be done by exposing the reports as WSRP portlets, if not is there any other way to do this?

    I'm trying to determine the best architecture for a (sometimes) disconnected java application. We want to create a java swing application (deployed using java web start) which will enable users to enter data while being disconnected from the network. When they connect, the application should upload all the entered data to a database.
    We would like to use bc4j to implement client side business logic (deploy the bc4j classes with the swing user interface through java web start). For this to work, i think we would also have to deploy a small database which bc4j uses untill we have a network connection.

  • WSRP Portlet registration error

    Using the Portal Developer's guide, I created a Java/WSRP portlet and deployed it to a portlet_container. I am now trying to register the portlet and receive this error message from the Oracle Portlet Verification portal and my own Oracle Dev. Preview WSRP Portal:
    An error occurred when attempting to call the providers register function. (WWC-43134)
    An error occured during the call to the WSRP Provider: An error occurred whilst invoking an operation on the Provider
    Java stack trace from root exception:
    java.rmi.ServerException: Internal Server Error (caught exception while handling request: oracle.webdb.wsrp.server.ContainerRuntimeException: An internal error has occurred in method <init>)
    at com.sun.xml.rpc.client.StreamingSender._raiseFault(StreamingSender.java:384)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:245)
    at oracle.webdb.wsrp.WSRP_v1_Registration_PortType_Stub.register(WSRP_v1_Registration_PortType_Stub.java:70)
    at oracle.webdb.wsrp.client.design.v1.OraWSRP_v1_Registration_PortType.register(OraWSRP_v1_Registration_PortType.java:74)
    (WWC-10001363)
    Any ideas?
    Thank You,
    Justin

    After using a TCP monitor, I found out that the WSRP was not being contacted at all by the portal upon adding the portlet to the page. In my case, the WSRP was running on port 7778. However, when I changed OC4J listener port to 80 and redeployed all worked well. At this point I am trying to determine if this is a firewall issue or something else.

Maybe you are looking for

  • If the site item doesn't have the production URL, then page is not compiled in ATG 10.1.2

    Hi, we are using ATG10.1.2 with Endeca 3.1. I have created a page in Experience Manager as "browse". If i don't populate the siteBase/productionURL in the site item of the siteRepository, the page is not getting compiled and displays JSP code as text

  • Why is the confirmation email sent to an email not on my account?

    I am trying to download Creative Cloud and when it gets to the confirmation email window, it has sent it email address that isn't mine. I have double and triple checked that my email address is correct in my account settings, tried again, and it stil

  • Overridding PO terms in the invoice

    Hi, Request clarification on defaulting of terms on payable invoice in Oracle Payables R12. When we create an invoice based on a PO, the payment terms are defaulted from the PO. For example, the PO terms is Net45 but at the Vendor site level it is se

  • How To Use Connection Pooling in Struts.

    Can Somebody have the idea how to use connection pooling. i want to use jakarta commons dbcp, pool. using these packages how can i implement the connection pooling for my web application. If Anybody have some idea plz contect me. If Somebody have sam

  • Alternative table for M_ZPH22 in ECC 5 version

    Hi, The Dictionary structure or table "M_ZPH22" is either not active or does not exist in ECC 5 version but it was present in version 3.1I. Can any one suggest the alternative table in ECC version for table M_ZPH22. Thanks Sai