Portlet.xml

Is there a way to update the portlet.xml dynamically? That is, add an instance of the portlet using <portlet> tag at runtime to the portlet.xml. Does the portlet container need to be bounced back so that the updates are picked up?
Got to know that that this is very much a portal-dependent functionality. Does Weblogic support this functionality?
Thanks,
Parul

We do not provide any APIs to modify the portlet.xml file. However, if
you were to modify it, changes should automatically be picked up.
Nate
harsh uchariya wrote:
I had a similar question. is there a way if i want to just deploy/update a changed/updated "portlet.xml" for any "one" portlet application, i can do this w/o restarting weblogic.
i am using wls 8.1 and portlets follow jsr168 standards.
thanks in advance.

Similar Messages

  • How to merge portlet.xml file from shared libraries into an EAR application

    Hi all
    I need some help
    I have some applications as shared-libs referenced by weblogic.xml into a EAR application.
    To see all portlets from that shared-libs, I'm creating a portlet.xml into the EAR application with all portlets from all shared libs. But is terrible for me. I would like to have it merged automatically without having to create it in the EAR application. Is that possible?
    Regards
    Bruno

    In the documentation, I saw this text:
    Overriding Shared J2EE Library Settings in the web.xml File
    At runtime, the web.xml files in all the shared J2EE libraries are merged, along with the web.xml
    file in your portal web project. The content of your WEB-INF/web.xml file overrides anything in
    the shared J2EE libraries, so if you want to change particular settings, you can do it there.
    There are many other files for which file contents are merged; these can be overridden in the same
    way. These files include not only WEB-INF/web.xml but also WEB-INF/weblogic.xml and any
    files mentioned in weblogic-extension.xml from either the users' application or the shared
    libraries.
    It seems to be possible to customize the weblogic-extension.xml. But I haven't seen how to do that
    What do you think about it?
    Regards
    Bruno

  • Java Portlets not able to read portlet.xml

    while invoking java portlets context fails to read portlet.xml , any idea
    I am having weblogic 8.1 sp2

    Is the file valid (per the schema)? What kind of exception/error are you
    getting?
    Subbu
    said the following on 02/25/2004 12:47 PM:
    while invoking java portlets context fails to read portlet.xml , any idea
    I am having weblogic 8.1 sp2

  • Problem in Configuring web.xml or portlet.xml

    Hi all,
    We are developing an application on the VAP 7 using Portlets.
    Can some one tell me, how to trigger a servlet from the Portlet? Rather how do i configure the web.xml or the Portlet.xml to make it identify the servlet that has to be called on load of the jsp.
    I have tried this the regular jsp and xml way (i.e. without using the Portlets and calling it from the JSP)
    I have the web.xml where i have the mapping for the single jsp ( this has the call servlet within the SRC attribute of the IMG tag. ) , also with the mapping details for the servlet to be called and this way it works fine there.
    How do i do the same for Portlets.?

    are you very new to servlets..
    ok then.
        <servlet>
            <servlet-name>bittu1</servlet-name>
            <servlet-class>Library1</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>bittu1</servlet-name>
            <url-pattern>/lop1</url-pattern>
        </servlet-mapping>
    <servlet>
            <servlet-name>bittu2</servlet-name>
            <servlet-class>Library2</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>bittu2</servlet-name>
            <url-pattern>/lop2</url-pattern>
        </servlet-mapping> i think this will help you.

  • No portlet found in portlet.xml

    We have deployed 2 war files that use the WCI jsr-168 container to a WebLogic 10.3 remote portlet server, but can not get them both to work at the same time. The error message that is displayed is just:
    "An error has occured
    No portlet found in portlet.xml for xportletname"
    If I Stop and Start the deployment of the one that displays this error, it starts working again, but then the other one stops working (showing this error).
    It seems that the jsr-168 container may be interfering with other instances of itself running on the same server.
    Any help is appreciated.

    hello
    your post is two years old now, so i am poping it pretty late, but did you get answers to your questions. i believe, we need to configure the oracle workflow engine itself
    regards
    ammar Sajdi
    Oracle consultant
    www.e-ammar.com
    REALSOFT - PALCO
    Amman

  • resource-bundle tag of portlet.xml

    Hi.
    I'd like to use resource bundle. Therefore I add following tags inside <portlet> tag of portlet.xml and create 'testprofile.properties' file.
    <resource-bundle>testprofile</resource-bundle>
    But when I start tomcat, the error occured like following.
    2004-08-05 12:01:45,437 ERROR [main]
    java.lang.NullPointerException
    at java.io.Reader.<init>(Reader.java:61)
    at java.io.InputStreamReader.<init>(InputStreamReader.java:80)
    at java.util.Properties.load(Properties.java:189)
    at java.util.PropertyResourceBundle.<init>(PropertyResourceBundle.java:96)
    at com.plumtree.portlet.util.PortletInfo.addPropertyBundles(PortletInfo.java:425)
    at com.plumtree.portlet.servlet.PortletServlet.digestPortletXml(PortletServlet.java:527)
    at com.plumtree.portlet.servlet.PortletServlet.initDigester(PortletServlet.java:651)
    at com.plumtree.portlet.servlet.PortletServlet.init(PortletServlet.java:60)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:935)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContex ...
    So I modified portlet.xml like following and try to start tomcat again.
    <resource-bundle>testprofile.properties</resource-bundle>
    Tomcat can be started successfully.
    But when I display the portlet, error occured.
    java.util.MissingResourceException: Can't find resource for bundle com.plumtree.portlet.util.PortletResourceBundle, key LogLevel at java.util.ResourceBundle.getObject(ResourceBundle.java:314) at java.util.ResourceBundle.getString(ResourceBundle.java:274) at portlet.TWNewMailPortlet.init(TWNewMailPortlet.java:45) at com.plumtree.portlet.servlet.BaseServlet.init(BaseServlet.java:522) at com.plumtree.portlet.servlet.PortletServlet.service(PortletServlet.java:136)
    The properties file 'testprofile.properties' is not loaded successfully, maybe.
    Do you know how to specify or use ResouceBundle in using Plumtree JSR168?
    The tips of source code is following
    In Portlet class which extends GenericPortlet
    public void init(PortletConfig config) throws PortletException {  super.init(config);  PortletLogger.init("Test", getPortletContext());  ResourceBundle rb = getResourceBundle(Locale.getDefault());  for (Enumeration e = rb.getKeys(); e.hasMoreElements(); ) {   String str = (String)e.nextElement();   System.out.println(str);  } String level = rb.getString("LogLevel"); PortletLogger.setLevel(level); }

    Are you naming your resource bundles something like:
    1. messages_en.properties (for English)
    2. messages_de.properties (for German)
    and so on.
    Also, do you include these properties files in your final deployment package, because if they're not there then the messages won't be displayed.

  • Update portlet.xml(for JSR 168 portlets) at runtime

    Is there a way to update the portlet.xml dynamically? That is, add an instance of the portlet using <portlet> tag at runtime to the portlet.xml. Does the portlet container need to be bounced back so that the updates are picked up?
    Got to know that that this is very much a portal-dependent functionality. Does Oracle Portal support this functionality?
    Thanks,
    Parul

    Hi Parul,
    I am not sure that you will be able to add portlets dynamically .. since, even if you do, you will still need to refresh the provider on the portal.
    thanks,
    Harsha
    p.s.: What is your use-case for such an requirement?

  • Weblogic-portlet.xml documentation

    Can someone tell me where to find documentation on the weblogic-portlet.xml deployment descriptor elements?
    Thanks
    Tim

    Hi Tim,
    You can find moreinformation regarding portal at
    http://e-docs.bea.com/wlp/docs81/index.html
    Regards,
    Prasanna Yalam

  • Merging two portlet.xml

    Hi,
    I have a portal application which has a portlet.xml. For this application we added weblogic shared library which includes another portlet.xml. There was a conflict due to two portlet.xml files. I have manually copied portlet entries to form one portlet.xml. This works fine. Is there any other solution to merge (not manually) the two portlet.xml files ?

    Hello,
    Spring configuration files aren't going to get merged by default; I can list out configuration files that are merged, but it won't help you in your case.
    The merging mechanism isn't extensible by end-developers, so it isn't going to be possible to modify it to merge the Spring config files. Many configuration files, such as the portlet.xml file (and, I believe the Spring config files) cannot be automatically merged because the schema for the configuration file is incompatible with automatic merging-- it isn't that it can't be merged, just that the process can't be automated because details of the implementation must be taken into account when the files are merged-- details which only the developer knows.
    So unfortunately, I think you will have to merge your Spring configuration files manually.
    Kevin

  • How to get security roles in a JSF portlet

    I need to get the LDAP user-roles available in the Sun Portal Server 7 in my JSF-168 portlet.
    I've added the mapping file, updated the portlet.xml and web.xml, deployed the portlet (psconsole). But the portlet shows the "content not available" error with javax....title title.
    I've probably messed up the descriptors, but I don't see what is wrong. Here they are:
    roleMaps.properties
    cn\=VSM.Administrator,dc\=neco,dc\=cz=Administrator
    web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4">
      <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>server</param-value>
      </context-param>
      <context-param>
        <param-name>javax.faces.CONFIG_FILES</param-name>
        <param-value>/WEB-INF/navigation.xml,/WEB-INF/managed-beans.xml</param-value>
      </context-param>
      <context-param>
        <param-name>com.sun.faces.validateXml</param-name>
        <param-value>true</param-value>
      </context-param>
      <context-param>
        <param-name>com.sun.faces.verifyObjects</param-name>
        <param-value>false</param-value>
      </context-param>
      <filter>
        <filter-name>UploadFilter</filter-name>
        <filter-class>com.sun.rave.web.ui.util.UploadFilter</filter-class>
        <init-param>
          <description>
              The maximum allowed upload size in bytes.  If this is set
              to a negative value, there is no maximum.  The default
              value is 1000000.
            </description>
          <param-name>maxSize</param-name>
          <param-value>1000000</param-value>
        </init-param>
        <init-param>
          <description>
              The size (in bytes) of an uploaded file which, if it is
              exceeded, will cause the file to be written directly to
              disk instead of stored in memory.  Files smaller than or
              equal to this size will be stored in memory.  The default
              value is 4096.
            </description>
          <param-name>sizeThreshold</param-name>
          <param-value>4096</param-value>
        </init-param>
      </filter>
      <filter-mapping>
        <filter-name>UploadFilter</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
      </filter-mapping>
      <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet>
        <servlet-name>ExceptionHandlerServlet</servlet-name>
        <servlet-class>com.sun.errorhandler.ExceptionHandler</servlet-class>
        <init-param>
          <param-name>errorHost</param-name>
          <param-value>localhost</param-value>
        </init-param>
        <init-param>
          <param-name>errorPort</param-name>
          <param-value>25444</param-value>
        </init-param>
      </servlet>
      <servlet>
        <servlet-name>ThemeServlet</servlet-name>
        <servlet-class>com.sun.rave.web.ui.theme.ThemeServlet</servlet-class>
      </servlet>
      <servlet>
        <description>Generated By Sun Java Studio Creator</description>
        <display-name>CreatorPortlet Wrapper</display-name>
        <servlet-name>VSMPortal</servlet-name>
        <servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
        <init-param>
          <param-name>portlet-class</param-name>
          <param-value>com.sun.faces.portlet.FacesPortlet</param-value>
        </init-param>
        <init-param>
          <param-name>portlet-guid</param-name>
          <param-value>VSMPortal.VSMPortal</param-value>
        </init-param>
      </servlet>
      <servlet-mapping>
        <servlet-name>ExceptionHandlerServlet</servlet-name>
        <url-pattern>/error/ExceptionHandler</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>ThemeServlet</servlet-name>
        <url-pattern>/theme/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>VSMPortal</servlet-name>
        <url-pattern>/VSMPortal/*</url-pattern>
      </servlet-mapping>
      <welcome-file-list>
        <welcome-file>faces/null</welcome-file>
      </welcome-file-list>
      <error-page>
        <exception-type>javax.servlet.ServletException</exception-type>
        <location>/error/ExceptionHandler</location>
      </error-page>
      <error-page>
        <exception-type>java.io.IOException</exception-type>
        <location>/error/ExceptionHandler</location>
      </error-page>
      <error-page>
        <exception-type>javax.faces.FacesException</exception-type>
        <location>/error/ExceptionHandler</location>
      </error-page>
      <error-page>
        <exception-type>com.sun.rave.web.ui.appbase.ApplicationException</exception-type>
        <location>/error/ExceptionHandler</location>
      </error-page>
      <jsp-config>
        <jsp-property-group>
          <url-pattern>*.jspf</url-pattern>
          <is-xml>true</is-xml>
        </jsp-property-group>
      </jsp-config>
         <security-role>
              <role-name>Administrator</role-name>
         </security-role>          
    </web-app>
    portlet.xml
    <?xml version='1.0' encoding='UTF-8' ?>
    <portlet-app xmlns='http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd                         http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd' version='1.0'>
         <portlet>
              <description>Created By Java Studio Creator</description>
              <portlet-name>VSMPortal</portlet-name>
              <display-name>VSMPortal Portlet</display-name>
              <portlet-class>com.sun.faces.portlet.FacesPortlet</portlet-class>
              <init-param>
                   <name>com.sun.faces.portlet.INIT_VIEW</name>
                   <value>/Uctarna.jsp</value>
              </init-param>
              <expiration-cache>0</expiration-cache>
              <supports>
                   <mime-type>text/html</mime-type>
                   <portlet-mode>VIEW</portlet-mode>
              </supports>
              <supported-locale>en</supported-locale>
              <portlet-info>
                   <title>VSMPortal</title>
                   <short-title>VSMPortal</short-title>
                   <keywords>Creator</keywords>
              </portlet-info>
              <security-role-ref>
                   <role-name>Administrator</role-name>
                   <role-link>Administrator</role-link>
              </security-role-ref>          
         </portlet>
    </portlet-app>If I don't use the security-role and security-role-ref tags, the portlet works, and the isUserInRole method obviously doesn't.

    Nobody uses the LDAP roles in a portlet? Anybody knows other thread discussing similar issue (I can't find anything)?

  • Unable to bind portlet parameter with page parameter in webcenter portal

    Hi All,
    I am trying to bind portlet parameter with the page parameter so that I can ahieve some business requirements.
    Here is what I did,
    In my Portlet producer application:
    1) Created standards based portlet (jsr 286) with view.jspx and edit.jspx with rest of the things being default.
    2) In my portlet.xml created two parameters and assigned these parameters to the portlet created above.
    3) In the view.jspx added couple of output label adf components in the page.
    4) deployed this to integrated weblogic server.
    In my WC portal application:
    Created a new page and added the portlet to this page( WSRP connection already exists).
    deployed portal application on integrated server.
    In the edit mode of the page I added one page parameter(Param1) and some default (constant) value added.
    What I want is this:
    when Param1 value is One display first output label and
    when Param1 value is Two display second output label.
    I am using jdev 11.1.1.5.0 with integrated weblogic server.

    There is no need to use page parameters for this.
    You also have two types of parameters depending on what you want...
    1) Preferences: these parameters can be used on a user based level. This means that users can personalize the portlets. When a user change the value of a preference, it is only applied for that specific user
    2) Public parameters: these parameters are used to customize the portlet. The value you set in these parameter apply for all users.
    I have made a simple example to show these two differences: http://www.yonaweb.be/PortletTest.zip
    The portlet has 4 inputText on it. The first two can be set by specifying One or Two into the preference.
    The other 2 inputText uses the value of the public parameter.
    You should only deploy the portlet and consume it in a webcenter application. In the webcenter application, you don't need to do anything special. All is done in the portlet.
    I am guessing you don't have written the code that will get the value of the parameter:
    in case of a preference you will get the value by following code:
       PortletRequest request = (PortletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
       PortletPreferences preferences = request.getPreferences();
       return preferences.getValue("outputparam", "One");In case of a public parameter (for customization instead of personalization) you use following code to retreive the value of a public parameter:
    PortletRequest req = (PortletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
      String param = (String)req.getParameter("PublicParam");
      if(param == null)
          return "Three";
      return param;This code can also be found in the sample portlet application.

  • We can use JSR-168 JPS portlet upload file,

    We can use JSR-168 JPS portlet upload file,
    here is the source for you referrence:
    upload file can use JSR168 portlet,
    1,CustomizablePortlet.java File
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.ResourceBundle;
    import javax.portlet.*;
    import oracle.webdb.utils.SimpleStringBuffer;
    public class CustomizablePortlet extends GenericPortlet {
    private static final String TITLE_KEY = "title";
    protected static final String OK_ACTION = "ok_action";
    protected static final String APPLY_ACTION = "apply_action";
    protected static final PortletMode PREVIEW_MODE = new PortletMode("preview");
    protected static final PortletMode EDIT_DEFAULTS_MODE = new PortletMode("EDIT_DEFAULTS");
    protected static final PortletMode ABOUT_MODE = new PortletMode("ABOUT");
    public CustomizablePortlet() {
    public String getTitle(RenderRequest request) {
    return request.getPreferences().getValue("title", getPortletConfig().getResourceBundle(request.getLocale()).getString("javax.portlet.title"));
    public void doEdit(RenderRequest request, RenderResponse response) throws PortletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.print("<FORM ACTION=\"");
    out.print(getEditFormSubmitURL(request, response));
    out.println("\" METHOD=\"POST\">");
    out.println("<TABLE BORDER=\"0\">");
    out.println("<TR>");
    out.println("<TD WIDTH=\"20%\">");
    out.println("<P CLASS=\"portlet-form-field\" ALIGN=\"RIGHT\">Title:");
    out.println("</TD>");
    out.println("<TD WIDTH=\"80%\">");
    out.print("<INPUT CLASS=\"portlet-form-input-field\" TYPE=\"TEXT\" NAME=\"");
    out.print("title");
    out.print("\" VALUE=\"");
    out.print(getTitle(request));
    out.println("\" SIZE=\"20\">");
    out.println("</TD>");
    out.println("</TR>");
    out.println("<TR>");
    out.println("<TD COLSPAN=\"2\" ALIGN=\"CENTER\">");
    out.print("<INPUT CLASS=\"portlet-form-button\" TYPE=\"SUBMIT\" NAME=\"");
    out.print("ok_action");
    out.print("\" VALUE=\"OK\">");
    out.print("<INPUT CLASS=\"portlet-form-button\" TYPE=\"SUBMIT\" NAME=\"");
    out.print("apply_action");
    out.print("\" VALUE=\"Apply\">");
    out.println("</TD>");
    out.println("</TR>");
    out.println("</TABLE>");
    out.println("</FORM>");
    protected String getEditFormSubmitURL(RenderRequest request, RenderResponse response) {
    return response.createActionURL().toString();
    public void doHelp(RenderRequest request, RenderResponse response) throws PortletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.print("Help for <i><b>");
    out.print(getTitle(request));
    out.println("</b></i>.");
    public void doAbout(RenderRequest request, RenderResponse response) throws PortletException, IOException {
    String aboutHTML = (new SimpleStringBuffer(30)).append("/about_").append(getPortletName()).append(".html").toString();
    PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher(aboutHTML);
    response.setContentType("text/html");
    if(rd != null) {
    rd.include(request, response);
    } else {
    PrintWriter out = response.getWriter();
    out.print("<p class=\"portlet-font\">This is the about page for ");
    out.print(getTitle(request));
    out.print(".</p><p class=\"portlet-font\">");
    out.print("To customize the contents of this page, create a file named '");
    out.print(aboutHTML.substring(1));
    out.print("' in the Portlet web application's root directory containing HTML ");
    out.print("to appear here. ");
    out.print("Alternatively, override the <code>CustomizablePortlet</code> ");
    out.println("class's <code>doAbout()</code> method.</p>");
    public void doDispatch(RenderRequest request, RenderResponse response) throws PortletException, IOException {
    WindowState state = request.getWindowState();
    if(!state.equals(WindowState.MINIMIZED)) {
    PortletMode mode = request.getPortletMode();
    if(mode.equals(PREVIEW_MODE))
    doView(request, response);
    else
    if(mode.equals(EDIT_DEFAULTS_MODE))
    doEdit(request, response);
    else
    if(mode.equals(ABOUT_MODE))
    doAbout(request, response);
    else
    super.doDispatch(request, response);
    } else {
    super.doDispatch(request, response);
    public void processAction(ActionRequest request, ActionResponse actionResponse) throws PortletException, IOException {
    String newTitle = request.getParameter("title");
    PortletPreferences prefs = request.getPreferences();
    prefs.setValue("title", newTitle);
    prefs.store();
    if(request.getParameter("ok_action") != null) {
    actionResponse.setPortletMode(PortletMode.VIEW);
    actionResponse.setWindowState(WindowState.NORMAL);
    2,FileUploadPortlet.java file
    import java.io.*;
    import javax.activation.DataHandler;
    import javax.mail.MessagingException;
    import javax.mail.internet.MimeBodyPart;
    import javax.portlet.*;
    import oracle.portal.portlet.sample.CustomizablePortlet;
    public class FileUploadPortlet extends CustomizablePortlet
    private static final String FILE_PARAM = "file";
    private static final String SUBMIT_PARAM = "submit";
    private static final String DEFAULT_CHARSET = "ISO-8859-1";
    private static final String uploadRoot = "";
    public FileUploadPortlet()
    public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.print("<form action=\"");
    out.print(response.createActionURL().toString());
    out.println("\" enctype=\"multipart/form-data\" method=\"post\">");
    out.println("<center><table border=\"0\">");
    out.println("<tr>");
    out.print("<td class=\"portlet-form-field\" align=\"right\">");
    out.print("Please browse to an HTML file:");
    out.println("</td>");
    out.print("<td>");
    out.print("<input class=\"portlet-form-input-field\" type=\"file\" name=\"");
    out.print("file");
    out.print("\">");
    out.println("</td>");
    out.println("</tr>");
    out.println("<tr>");
    out.println("<td colspan=\"2\" align=\"center\">");
    out.print("<input type=\"submit\" class=\"portlet-form-button\" name=\"");
    out.print("submit");
    out.print("\" value=\"Display\">");
    out.println("</td>");
    out.println("</tr>");
    out.println("</table>");
    out.println("</form>");
    String lastFile = request.getPreferences().getValue("file", null);
    if(lastFile != null) {
    out.println("<hr width=\"100%\"><br>");
    out.print(lastFile);
    public void processAction(ActionRequest request, ActionResponse actionResponse) throws PortletException, IOException {
    FormDataParser parsedRequest = new FormDataParser(request);
    MimeBodyPart mbp = parsedRequest.getMimeBodyPart("file");
    if(mbp == null)
    super.processAction(request, actionResponse);
    else
    try {
    String fileName= mbp.getFileName();
    int splash = fileName.lastIndexOf("\\");
    if(splash != -1)
    fileName = fileName.substring(splash +1, fileName.length()).trim();
    String contentType = mbp.getContentType();
    String charSet = getCharsetFromContentType(contentType);
    int sepIndex = contentType.indexOf(';');
    if(sepIndex != -1)
    contentType = contentType.substring(0, sepIndex).trim();
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    mbp.getDataHandler().writeTo(bos);
    bos.close();
    String content = new String(bos.toByteArray(), charSet);
    FileOutputStream fos = new FileOutputStream(fileName);
    fos.write(bos.toByteArray());
    fos.close();
    PortletPreferences prefs = request.getPreferences();
    prefs.setValue("file", fileName + "upload ok");
    prefs.store();
    catch(MessagingException me) {
    throw new PortletException(me);
    public static String getCharsetFromContentType(String contentType) {
    int lastPos;
    if((lastPos = contentType.indexOf(';')) == -1)
    return "ISO-8859-1";
    lastPos++;
    String lowerContentType = contentType.toLowerCase();
    int nextPos;
    do {
    nextPos = lowerContentType.indexOf(';', lastPos);
    String param;
    if(nextPos == -1)
    param = lowerContentType.substring(lastPos).trim();
    else
    param = lowerContentType.substring(lastPos, nextPos).trim();
    if(param.startsWith("charset=") && param.length() > 8)
    return param.substring(8);
    lastPos = nextPos + 1;
    } while(nextPos != -1);
    return "ISO-8859-1";
    3,FormDataParser.java file
    import java.io.*;
    import java.util.*;
    import javax.activation.DataSource;
    import javax.mail.MessagingException;
    import javax.mail.internet.MimeBodyPart;
    import javax.mail.internet.MimeMultipart;
    import javax.portlet.ActionRequest;
    import javax.portlet.PortletException;
    public class FormDataParser {
    private static final String MULTIPART_PREFIX = "multipart/";
    private static final String MULTIPART_FORM_DATA = "multipart/form-data";
    private static final String PLAIN_TEXT = "text/plain";
    private ActionRequest mWrappedRequest;
    private Map mParams;
    private Map mBodyParts;
    private boolean mIsInitialized;
    private boolean mHasMultipart;
    public FormDataParser(ActionRequest request) {
    mWrappedRequest = request;
    public String getParameter(String name) throws PortletException {
    String value = mWrappedRequest.getParameter(name);
    if(value != null)
    return value;
    initParameters();
    if(!mHasMultipart)
    return null;
    List paramList = (List)mParams.get(name);
    if(paramList != null)
    return (String)paramList.get(0);
    else
    return null;
    public String[] getParameterValues(String name) throws PortletException {
    String values[] = mWrappedRequest.getParameterValues(name);
    if(!mHasMultipart)
    return values;
    initParameters();
    List valueList = (List)mParams.get(name);
    if(valueList == null)
    return values;
    int size = valueList.size();
    if(values != null) {
    List newValueList = new ArrayList(values.length + size);
    newValueList.addAll(Arrays.asList(values));
    newValueList.addAll(valueList);
    valueList = newValueList;
    values = new String[size];
    valueList.toArray(values);
    return values;
    public MimeBodyPart getMimeBodyPart(String name) throws PortletException {
    initParameters();
    if(!mHasMultipart) {
    return null;
    } else {
    List parts = (List)mBodyParts.get(name);
    return parts != null ? (MimeBodyPart)parts.get(0) : null;
    public MimeBodyPart[] getMimeBodyParts(String name) throws PortletException {
    initParameters();
    if(!mHasMultipart)
    return null;
    List parts = (List)mBodyParts.get(name);
    if(parts == null) {
    return null;
    } else {
    MimeBodyPart mimeBodyParts[] = new MimeBodyPart[parts.size()];
    parts.toArray(mimeBodyParts);
    return mimeBodyParts;
    private void initParameters() throws PortletException {
    if(mIsInitialized)
    return;
    String contentType = mWrappedRequest.getContentType();
    if(contentType == null) {
    mIsInitialized = true;
    return;
    int sepIndex = contentType.indexOf(';');
    if(sepIndex != -1)
    contentType = contentType.substring(0, sepIndex).trim();
    if(contentType.equalsIgnoreCase("multipart/form-data")) {
    mParams = new HashMap(20);
    mBodyParts = new HashMap(20);
    DataSource ds = new DataSource() {
    public InputStream getInputStream() throws IOException {
    return mWrappedRequest.getPortletInputStream();
    public OutputStream getOutputStream() throws IOException {
    throw new IOException("OutputStream not available");
    public String getContentType() {
    return mWrappedRequest.getContentType();
    public String getName() {
    return getClass().getName();
    try {
    MimeMultipart multipartMessage = new MimeMultipart(ds);
    parseMultiPart(multipartMessage, null);
    catch(MessagingException me) {
    throw new PortletException(me);
    catch(IOException ioe) {
    throw new PortletException(ioe);
    mHasMultipart = true;
    mIsInitialized = true;
    private void parseMultiPart(MimeMultipart multipartMessage, String parentFieldName) throws MessagingException, IOException {
    int partCount = multipartMessage.getCount();
    for(int i = 0; i < partCount; i++) {
    javax.mail.BodyPart part = multipartMessage.getBodyPart(i);
    if(part instanceof MimeBodyPart) {
    MimeBodyPart mimePart = (MimeBodyPart)part;
    String disps[] = mimePart.getHeader("Content-Disposition");
    if(disps != null && disps.length != 0) {
    String disp = disps[0];
    String lcDisp = disp.toLowerCase();
    int nameStart;
    int nameEnd;
    if((nameStart = lcDisp.indexOf("name=\"")) != -1 && (nameEnd = lcDisp.indexOf("\"", nameStart + 6)) != -1)
    parentFieldName = disp.substring(nameStart + 6, nameEnd);
    if(parentFieldName != null)
    if(mimePart.getContentType().toLowerCase().startsWith("multipart/")) {
    Object content = mimePart.getContent();
    if(content instanceof MimeMultipart)
    parseMultiPart((MimeMultipart)content, parentFieldName);
    } else
    if((nameStart = lcDisp.indexOf("filename=\"")) != -1 && (nameEnd = lcDisp.indexOf("\"", nameStart + 10)) != -1) {
    List values = (List)mBodyParts.get(parentFieldName);
    if(values == null) {
    values = new ArrayList(1);
    mBodyParts.put(parentFieldName, values);
    values.add(mimePart);
    } else
    if(mimePart.getContentType().toLowerCase().startsWith("text/plain")) {
    Object content = mimePart.getContent();
    if(content instanceof String) {
    List values = (List)mParams.get(parentFieldName);
    if(values == null) {
    values = new ArrayList(1);
    mParams.put(parentFieldName, values);
    values.add((String)content);
    4.web.xml file
    <?xml version = '1.0' encoding = 'ISO-8859-1'?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <display-name>hanhuiwen OracleSamplePortlets</display-name>
    <description>hanhuiwen Oracle Sample Portlet Application</description>
    <servlet>
    <servlet-name>portletdeploy</servlet-name>
    <servlet-class>oracle.webdb.wsrp.server.deploy.PortletDeployServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>portletjaxrpc</servlet-name>
    <servlet-class>com.sun.xml.rpc.server.http.JAXRPCServlet</servlet-class>
    <init-param>
    <param-name>configuration.file</param-name>
    <param-value>/WEB-INF/WSRPService_Config.properties</param-value>
    </init-param>
    </servlet>
    <servlet>
    <servlet-name>portletresource</servlet-name>
    <servlet-class>oracle.webdb.wsrp.server.ResourceServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>ChartServlet</servlet-name>
    <display-name>Chart Servlet</display-name>
    <description>Demo image-generating servlet</description>
    <servlet-class>oracle.portal.portlet.sample.chart.ChartServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>uix</servlet-name>
    <servlet-class>oracle.cabo.servlet.UIXServlet</servlet-class>
    <init-param>
    <param-name>oracle.cabo.servlet.pageBroker</param-name>
    <param-value>oracle.cabo.servlet.xml.UIXPageBroker</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>ChartServlet</servlet-name>
    <url-pattern>/chart*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>portletjaxrpc</servlet-name>
    <url-pattern>/portlets*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>portletresource</servlet-name>
    <url-pattern>/portletresource*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>uix</servlet-name>
    <url-pattern>*.uix</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>uix</servlet-name>
    <url-pattern>/uix/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>60</session-timeout>
    </session-config>
    <welcome-file-list>
    <welcome-file>index.uix</welcome-file>
    </welcome-file-list>
    <!--
    LogLevel controls the amount of information logged. There are 7 log levels:
    0 - logging disabled
    1 - configuration
    2 - severe error
    3 - warning
    4 - throwing exception
    5 - performance
    6 - information
    7 - debug
    The oracle.portal.log.Logger interface defines methods that map to these 7
    log levels. However, there are also 2 methods that do not map to log
    levels. These methods are included for backwards compatibility and data
    logged using these methods will always be logged regardless of the log level.
    -->
    <env-entry>
    <env-entry-name>oracle/portal/log/logLevel</env-entry-name>
    <env-entry-type>java.lang.Integer</env-entry-type>
    <env-entry-value>7</env-entry-value>
    </env-entry>
    </web-app>
    5.portlet.xml
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd" version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
    <portlet>
    <description xml:lang="en">A portlet that demonstrates the file upload features of the Java Portlet Specification.</description>
    <portlet-name>FileUpload</portlet-name>
    <portlet-class>FileUploadPortlet</portlet-class>
    <expiration-cache>0</expiration-cache>
    <supports>
    <mime-type>text/html</mime-type>
    <portlet-mode>help</portlet-mode>
    <portlet-mode>about</portlet-mode>
    <portlet-mode>edit_defaults</portlet-mode>
    </supports>
    <supported-locale>en</supported-locale>
    <portlet-info>
    <title>File Upload Portlet</title>
    <short-title>File Upload</short-title>
    <keywords>File,Upload, Portlet</keywords>
    </portlet-info>
    </portlet>
    <custom-portlet-mode>
    <description xml:lang="en">This mode should be used by the portlet to display information on the portlet's purpose, origin, version, etc.</description>
    <portlet-mode>about</portlet-mode>
    </custom-portlet-mode>
    <custom-portlet-mode>
    <description xml:lang="en">This mode signifies that the portlet should render a screen to set the default values for the modifiable preferences that are typically changed in the EDIT screen. Calling this mode requires that the user must have administrator rights.</description>
    <portlet-mode>edit_defaults</portlet-mode>
    </custom-portlet-mode>
    <custom-portlet-mode>
    <description xml:lang="en">This mode should be used by the portlet to render output without the need of having back-end connections or user specific data available.</description>
    <portlet-mode>preview</portlet-mode>
    </custom-portlet-mode>
    <user-attribute>
    <name>user.name.given</name>
    </user-attribute>
    <user-attribute>
    <name>user.name.family</name>
    </user-attribute>
    <user-attribute>
    <name>user.name.middle</name>
    </user-attribute>
    <user-attribute>
    <name>user.name.nickname</name>
    </user-attribute>
    <user-attribute>
    <name>user.bdate</name>
    </user-attribute>
    <user-attribute>
    <name>user.business-info.online.email</name>
    </user-attribute>
    </portlet-app>

    Hello i had exactly the same error, but not with file upload.
    I'm sure you have in your application lib directory to jars which aren't compatible to each other.
    And the problem occured between my myfaces and tomahawk jars .
    See this page:
    http://wiki.apache.org/myfaces/CompatibilityMatrix
    It tells you which myfaces and tomahawk jars you can use together.
    Hope it can help.
    bye

  • How can i deploy my .war portlet application

    Hi Gurrus!
    I want to deploy programatically (manuall way can also helps me to program the manual logic) my .war portlet application comprise of
    content:
    1) 1 java file(portlet one)
    2) 1 jsp file
    3) web.xml
    4) portlet.xml
    questions:
    1) how can i do the above task
    2) in 8.1sp 3 is there a way that i deploy my .war as an application than using admin/workshop console link them in a portal page?, if yes than please guide me in this regard.
    THANKS IN ADVANCE
    -Kashif

    Hello Gurus,
    Is there an update version of portletpreparer for weblogic portal 9.2?
    I tried the instruction on the link and got java exception during running the ant command.
    Has anyone had luck to use this utility?
    Thanks,
    -Nick
    PS. Exception
    C:\work\portletpreparer\portletpreparer\build.xml:12: java.lang.NullPointerException
    at org.apache.tools.ant.Task.perform(Task.java:373)
    at org.apache.tools.ant.Target.execute(Target.java:341)
    at org.apache.tools.ant.Target.performTasks(Target.java:369)
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
    at org.apache.tools.ant.Main.runBuild(Main.java:668)
    at org.apache.tools.ant.Main.startAnt(Main.java:187)
    at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
    at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)
    Caused by: java.lang.NullPointerException
    at com.bea.task.PreparePortlets.execute(PreparePortlets.java:81)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
    at org.apache.tools.ant.Task.perform(Task.java:364)
    ... 10 more
    --- Nested Exception ---
    java.lang.NullPointerException
    at com.bea.task.PreparePortlets.execute(PreparePortlets.java:81)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
    at org.apache.tools.ant.Task.perform(Task.java:364)
    at org.apache.tools.ant.Target.execute(Target.java:341)
    at org.apache.tools.ant.Target.performTasks(Target.java:369)
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
    at org.apache.tools.ant.Main.runBuild(Main.java:668)
    at org.apache.tools.ant.Main.startAnt(Main.java:187)
    at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
    at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)
    Total time: 1 second

  • Portlets with ADF faces does not work

    Hello
    I am trying to portlize an hello world ADF application but am unable to do so because of the situation describe below. I have tried all the options given on this post but nothing seems to resolve the issue.
    I have followed the instructions of portelizing at http://download-east.oracle.com/otndocs/tech/webcenter/files/owcs_10132_bridge_viewlet.html
    A simple portlets without AFD works fine in oc4h or webcenter or jboss, but when I include ADF in the project then none of the application server or the container works
    I am using jdeveloper 10.1.3.2.0 and the embedded webcenter oc4j for this test
    I have two projects
    1) ui where the ADF appplication is and
    2) test1 where the producer is registered and is tested
    In ui I have a simple jsp page untitled1.jsp with just one adf component (ADF Command Link)
    Here is the source of untitled1.jsp
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <%@ page contentType="text/html;charset=windows-1252"%>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/portlet" prefix="adfp"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/customizable" prefix="cust"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>
    <f:view>
    <afh:html binding="#{backing_untitled1.html1}" id="html1">
    <afh:head title="Pixel Home" binding="#{backing_untitled1.head1}"
    id="head1">
    <meta http-equiv="Content-Type"
    content="text/html; charset=windows-1252"/>
    <style type="text/css">
    body {
    background-color: #ffffff;
    a:link { color: #2121ff; }
    </style>
    </afh:head>
    <afh:body binding="#{backing_untitled1.body1}" id="body1">
    <h:form binding="#{backing_untitled1.form1}" id="form1">
    <af:commandLink text="commandLink 1"
    binding="#{backing_untitled1.commandLink1}"
    id="commandLink1"/>
    </h:form>
    </afh:body>
    </afh:html>
    </f:view>
    After deploying this in webcenter I can see the WSDL page
    http://localhost:6688/AdfFacesDemo1/portlets/wsrp1?WSDL
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:bind="urn:oasis:names:tc:wsrp:v1:bind" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:oasis:names:tc:wsrp:v1:wsdl">
    <import namespace="urn:oasis:names:tc:wsrp:v1:bind" location="wsrp_v1_bindings.wsdl"/>
    <wsdl:service name="WSRP_v1_Service">
    <wsdl:port binding="bind:WSRP_v1_Markup_Binding_SOAP" name="WSRPBaseService">
    <soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPBaseService"/>
    </wsdl:port>
    <wsdl:port binding="bind:WSRP_v1_ServiceDescription_Binding_SOAP" name="WSRPServiceDescriptionService">
    <soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPServiceDescriptionService"/>
    </wsdl:port>
    <wsdl:port binding="bind:WSRP_v1_Registration_Binding_SOAP" name="WSRPRegistrationService">
    <soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPRegistrationService"/>
    </wsdl:port>
    <wsdl:port binding="bind:WSRP_v1_PortletManagement_Binding_SOAP" name="WSRPPortletManagementService">
    <soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPPortletManagementService"/>
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    In test1 project I have a simple jsp page test1.jsp and here is the source
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <%@ page contentType="text/html;charset=windows-1252"%>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/portlet" prefix="adfp"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/customizable" prefix="cust"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>
    <f:view>
    <afh:html binding="#{backing_test1.html1}" id="html1">
    <afh:head title="Pixel Home" binding="#{backing_test1.head1}" id="head1">
    <meta http-equiv="Content-Type"
    content="text/html; charset=windows-1252"/>
    <style type="text/css">
    body {
    background-color: #ffffff;
    a:link { color: #2121ff; }
    </style>
    </afh:head>
    <afh:body binding="#{backing_test1.body1}" id="body1">
    <h:form binding="#{backing_test1.form1}" id="form1">
    <adfp:portlet value="#{bindings.ADFFacesDemoPortlet11_1}"
    portletType="/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7"
    id="portlet1" binding="#{backing_test1.portlet1}"/>
    </h:form>
    </afh:body>
    </afh:html>
    </f:view>
    <%-- oracle-jdev-comment:auto-binding-backing-bean-name:backing_test1--%>
    I have already registered a producer called[b] ADFFacesDemoProducer in test1 project with 300 sec as timeout. Now when I run the test1.jsp page in oc4j container I get the following error. I have tried all the options in this forum and nothing worked.
    Target URL -- http://131.225.95.117:8988/PortletTest6-test1-context-root/faces/test1.jsp
    07/08/06 11:31:04 Oracle Containers for J2EE 10g (10.1.3.1.1) initialized
    Warning : Not able to reserve 2048M memory for the heap. Heap reduced to 890M
    Aug 6, 2007 11:31:17 AM oracle.adf.share.config.ADFConfigFactory findOrCreateADFConfig
    INFO: oracle.adf.share.config.ADFConfigFactory Reading META-INF/adf-config.xml
    07/08/06 11:31:18 PortletContainer portletTechnologies set to '{oracle.portlet.client.containerimpl.web.WebPortletTechnologyConfig,oracle.portlet.client.containerimpl.wsrp.WSRPPortletTechnologyConfig}' from adf-config.xml
    07/08/06 11:31:18 PortletContainer defaultTimeout set to '20' from adf-config.xml
    07/08/06 11:31:18 PortletContainer minimumTimeout set to '1' from adf-config.xml
    07/08/06 11:31:18 PortletContainer maximumTimeout set to '60' from adf-config.xml
    07/08/06 11:31:18 PortletContainer resourceProxyPath set to '/resourceproxy' from adf-config.xml
    Aug 6, 2007 11:31:20 AM oracle.adfinternal.view.faces.application.ViewHandlerImpl _checkTimestamp
    INFO: ADF Faces is running with time-stamp checking enabled. This should not be used in a production environment. See the oracle.adf.view.faces.CHECK_FILE_MODIFICATION property in WEB-INF/web.xml
    Aug 6, 2007 11:31:20 AM oracle.portlet.client.utils.PortletLogger info
    INFO: Portlet Client MBeans registered
    Aug 6, 2007 11:31:25 AM oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer preRender
    SEVERE: oracle.adf.model.portlet.binding.PortletBindingException: Unable to get portlet response (Internal Error) for portlet binding ADFFacesDemoPortlet11_1
         at oracle.adf.model.portlet.binding.PortletBinding.getPortletRendition(PortletBinding.java:514)
         at oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer.preRender(PortletRenderer.java:417)
         at oracle.adfinternal.view.faces.renderkit.html.customizable.ShowDetailFrameRenderer.encodeBegin(ShowDetailFrameRenderer.java:227)
         at oracle.adf.view.faces.component.UIXComponentBase.encodeBegin(UIXComponentBase.java:593)
         at oracle.adfinternal.view.faces.renderkit.RenderUtils.encodeRecursive(RenderUtils.java:39)
         at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeChild(CoreRenderer.java:242)
         at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeAllChildren(CoreRenderer.java:265)
         at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:65)
         at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:117)
         at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:147)
         at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:60)
         at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeEnd(CoreRenderer.java:169)
         at oracle.adf.view.faces.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:624)
         at javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:645)
         at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:568)
         at oracle.adf.view.faces.webapp.UIXComponentTag.doEndTag(UIXComponentTag.java:100)
         at test1.jspService(_test1.java:122)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:598)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:522)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:712)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
         at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:286)
         at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:50)
         at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:192)
         at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
         at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:197)
         at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:157)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: oracle.portlet.client.container.PortletRemoteException: oracle.portlet.server.container.OperationFailedException: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
         at oracle.portlet.client.techimpl.wsrp.WSRPBaseTerminalPipe.processException(WSRPBaseTerminalPipe.java:37)
         at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMarkupPipe.java:185)
         at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.pre(WSRPGetMarkupPipe.java:52)
         at oracle.portlet.client.service.pipeline.PipeContext.internalExecute2(PipeContext.java:516)
         at oracle.portlet.client.service.pipeline.PipeContext.internalExecute(PipeContext.java:403)
         at oracle.portlet.client.service.pipeline.PipeContextRunnable.run(PipeContextRunnable.java:24)
         at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:431)
         at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
         at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.runTask(ModifiedThreadPoolExecutor.java:398)
         at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.run(ModifiedThreadPoolExecutor.java:423)
         ... 1 more
    Caused by: oracle.portlet.server.container.OperationFailedException: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
         at oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:1093)
         at oracle.portlet.client.connection.wsrp.ActivityServerWrapper.getMarkup(ActivityServerWrapper.java:1330)
         at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMarkupPipe.java:116)
         ... 9 more
    Caused by: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
         at oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_v1_Markup_PortTypeJaxbToSoap.java:101)
         at oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:977)
         ... 11 more
    Caused by: oracle.portlet.wsrp.v1.soap.OperationFailed
         at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_PortType_getMarkup_Fault_SOAPSerializer.deserializeDetail(WSRP_v1_Markup_PortType_getMarkup_Fault_SOAPSerializer.java:269)
         at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserializeSOAP11(SOAPFaultInfoSerializer.java:132)
         at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserialize(SOAPFaultInfoSerializer.java:94)
         at oracle.j2ee.ws.common.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:180)
         at oracle.j2ee.ws.common.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:147)
         at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub._readBodyFaultElement(WSRP_v1_Markup_Binding_SOAP_Stub.java:456)
         at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:321)
         at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
         at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub.getMarkup(WSRP_v1_Markup_Binding_SOAP_Stub.java:76)
         at oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_v1_Markup_PortTypeJaxbToSoap.java:78)
         ... 12 more
    Then I tried to deploy the test1.jsp as a WAR file in the webcenter OC4J and tried this URL
    http://localhost:6688/AdfFacesDemoTest1/test1.jsp
    but it gave me this error
    500 Internal Server Error
    Servlet error: An exception occurred. The current application deployment descriptors do not allow for including it in this response. Please consult the application log for details.
    When I tried this URL I got a diffrent error. Googling this did not help at all
    http://localhost:6688/AdfFacesDemoTest1/faces/test1.jsp
    07/08/06 11:33:26 PortletContainer portletTechnologies set to '{oracle.portlet.client.containerimpl.web.WebPortletTechnologyConfig,oracle.portlet.client.containerimpl.wsrp.WSRPPortletTechnologyConfig}' from adf-config.xml
    07/08/06 11:33:26 PortletContainer defaultTimeout set to '20' from adf-config.xml
    07/08/06 11:33:26 PortletContainer minimumTimeout set to '1' from adf-config.xml
    07/08/06 11:33:26 PortletContainer maximumTimeout set to '60' from adf-config.xml
    07/08/06 11:33:26 PortletContainer resourceProxyPath set to '/resourceproxy' from adf-config.xml
    2007-08-06 11:33:58.843 ERROR oracle.portlet.client.persistence.PersistenceNotFoundException: mdsId=/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7.pxml not found
         at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:587)
         at oracle.portlet.client.beanimpl.persistence.PersistenceBeanFactory.getExisting(PersistenceBeanFactory.java:226)
         at oracle.portlet.client.beanimpl.persistence.PersistenceBeanContext.getExisting(PersistenceBeanContext.java:83)
         at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:248)
         at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:258)
         at oracle.portlet.client.containerimpl.PortletContainerImpl.getPortlet(PortletContainerImpl.java:227)
         at oracle.adf.model.portlet.binding.PortletBinding.prepareModel(PortletBinding.java:801)
         at oracle.adf.model.portlet.binding.PortletBinding.refresh(PortletBinding.java:606)
         at oracle.adf.model.binding.DCBindingContainerDef$1RegionBindingAdapter.refresh(DCBindingContainerDef.java:1011)
         at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2455)
         at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2260)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:99)
         at oracle.adf.controller.faces.lifecycle.FacesPageLifecycle.prepareModel(FacesPageLifecycle.java:73)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$8.execute(Lifecycle.java:210)
         at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:29)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$4.after(ADFPhaseListener.java:327)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:90)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:254)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: oracle.mds.core.MetadataNotFoundException: No metadata found for metadata object "/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7.pxml"
         at oracle.mds.core.MetadataObject.getBaseMO(Unknown Source)
         at oracle.mds.core.MDSSession.getBaseMO(Unknown Source)
         at oracle.mds.core.MDSSession.getMutableMO(Unknown Source)
         at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.getBaseMutableMO(MDSPersistenceContext.java:1143)
         at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:577)
         ... 40 more
    Here is my portlet.xml in ui project
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
    version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
    http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
    <portlet>
    <description>ADF Faces Demo Portlet 1</description>
    <portlet-name>ADFFacesDemo1</portlet-name>
    <display-name>ADF Faces Demo portlet 1</display-name>
    <portlet-class>oracle.portlet.server.bridges.jsf.FacesPortlet
    </portlet-class>
    <init-param>
    <name>DefaultPage.view</name>
    <value>/untitled1.jsp</value>
    </init-param>
    <init-param>
    <name>BridgeLifecycleListeners</name>
    <value>
    oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener,
    oracle.portlet.server.bridges.jsf.adf.BindingFacesBridgeLifecycleListener
    </value>
    </init-param>
    <supports>
    <mime-type>text/html</mime-type>
    <portlet-mode>VIEW</portlet-mode>
    </supports>
    <supported-locale>en</supported-locale>
    <portlet-info>
    <title>ADF Faces Demo Portlet 1</title>
    <short-title>ADFFacesDemo1</short-title>
    </portlet-info>
    </portlet>
    </portlet-app>
    web.xml in ui project (where the AFD application is)
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <web-app 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/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
    <description>Empty web.xml file for Web Application</description>
    <filter>
    <filter-name>adfFaces</filter-name>
    <filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>adfFaces</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>resources</servlet-name>
    <servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>35</session-timeout>
    </session-config>
    <mime-mapping>
    <extension>html</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>txt</extension>
    <mime-type>text/plain</mime-type>
    </mime-mapping>
    </web-app>
    web.xml in test1 project (where portlet producer is registered)
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <web-app 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/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
    <description>Empty web.xml file for Web Application</description>
    <context-param>
    <param-name>CpxFileName</param-name>
    <param-value>test1.DataBindings</param-value>
    </context-param>
    <context-param>
    <param-name>oracle.mds.web-app-root</param-name>
    <param-value>/test1/public_html</param-value>
    </context-param>
    <context-param>
    <param-name>oracle.adf.view.faces.CHANGE_PERSISTENCE</param-name>
    <param-value>oracle.adfinternal.view.faces.change.HybridChangeManager</param-value>
    </context-param>
    <filter>
    <filter-name>adfFaces</filter-name>
    <filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
    </filter>
    <filter>
    <filter-name>adfBindings</filter-name>
    <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
    </filter>
    <filter>
    <filter-name>mdsFilter</filter-name>
    <filter-class>oracle.mds.jsp.MDSJSPFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>adfFaces</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jspx</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <servlet-name>resourceproxy</servlet-name>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <servlet-name>adfportlet</servlet-name>
    </filter-mapping>
    <filter-mapping>
    <filter-name>mdsFilter</filter-name>
    <servlet-name>jsp2</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>INCLUDE</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>resources</servlet-name>
    <servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>adfportlet</servlet-name>
    <servlet-class>oracle.adfinternal.view.faces.renderkit.html.portlet.ADFPortletServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>resourceproxy</servlet-name>
    <servlet-class>oracle.portlet.client.resourceproxy.adf.ADFPortletResourceServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>jsp2</servlet-name>
    <servlet-class>oracle.jsp.runtimev2.JspServlet</servlet-class>
    <init-param>
    <param-name>tags_reuse_default</param-name>
    <param-value>none</param-value>
    </init-param>
    <init-param>
    <param-name>check_page_scope</param-name>
    <param-value>true</param-value>
    </init-param>
    <init-param>
    <param-name>debug_mode</param-name>
    <param-value>false</param-value>
    </init-param>
    <init-param>
    <param-name>page_provider</param-name>
    <param-value>oracle.mds.jsp.MDSJSPProvider</param-value>
    </init-param>
    <init-param>
    <param-name>page_repository</param-name>
    <param-value>oracle.mds.jsp.MDSJSPProvider</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>adfportlet</servlet-name>
    <url-pattern>/adfportlet</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>adfportlet</servlet-name>
    <url-pattern>/adfportletfullpage</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resourceproxy</servlet-name>
    <url-pattern>/resourceproxy</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>jsp2</servlet-name>
    <url-pattern>/*.jspx</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>35</session-timeout>
    </session-config>
    <mime-mapping>
    <extension>html</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>txt</extension>
    <mime-type>text/plain</mime-type>
    </mime-mapping>
    <service-ref xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <service-ref-name>service/WSRPServiceRefV1</service-ref-name>
    <service-interface>javax.xml.rpc.Service</service-interface>
    <wsdl-file>WEB-INF/wsdl/WSRP_v1_Service.wsdl</wsdl-file>
    <jaxrpc-mapping-file>WEB-INF/WSRP_v1_Service-java-wsdl-mapping.xml</jaxrpc-mapping-file>
    <service-qname xmlns:service-qname_ns__="urn:oasis:names:tc:wsrp:v1:wsdl">service-qname_ns__:WSRP_v1_Service</service-qname>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_Markup_PortType</service-endpoint-interface>
    </port-component-ref>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_ServiceDescription_PortType</service-endpoint-interface>
    </port-component-ref>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_Registration_PortType</service-endpoint-interface>
    </port-component-ref>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_PortletManagement_PortType</service-endpoint-interface>
    </port-component-ref>
    </service-ref>
    <service-ref xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <service-ref-name>service/WSRPServiceRefV2</service-ref-name>
    <service-interface>javax.xml.rpc.Service</service-interface>
    <wsdl-file>WEB-INF/wsdl/WSRP_v2_Service.wsdl</wsdl-file>
    <jaxrpc-mapping-file>WEB-INF/WSRP_v2_Service-java-wsdl-mapping.xml</jaxrpc-mapping-file>
    <service-qname xmlns:service-qname_ns__="urn:oasis:names:tc:wsrp:v2:wsdl">service-qname_ns__:WSRP_v2_Service</service-qname>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_Markup_PortType</service-endpoint-interface>
    </port-component-ref>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_ServiceDescription_PortType</service-endpoint-interface>
    </port-component-ref>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_Registration_PortType</service-endpoint-interface>
    </port-component-ref>
    <port-component-ref>
    <service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_PortletManagement_PortType</service-endpoint-interface>
    </port-component-ref>
    </service-ref>
    </web-app>
    Can anyone help please
    regards
    Vijay

    Hello dvohra,
    Thanks for the reply but I have done everything before I posted my message on this forum
    1. Is the Portlet Faces Bridge library in the project libraries?
    yes in both test1 project and ui project. ui project is where the ADF application is and test1 is where the producer is registered
    2. I sent the web.xml earlier in the forum. Yes it include the tags
    here is it again
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <web-app 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/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
    <description>Empty web.xml file for Web Application</description>
    <filter>
    <filter-name>adfFaces</filter-name>
    <filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
    </filter>
    <filter>
    <filter-name>adfBindings</filter-name>
    <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>adfFaces</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jspx</url-pattern>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>resources</servlet-name>
    <servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>35</session-timeout>
    </session-config>
    <mime-mapping>
    <extension>html</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>txt</extension>
    <mime-type>text/plain</mime-type>
    </mime-mapping>
    <context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>server</param-value>
    </context-param>
    </web-app>
    3. Yes it include that tag also. Please see the web.xml I pasted above
    4. Yes I deployed it as the simple WAR file and NEVER as a WebCenter Application WAR
    I am assuming that when you refer to web.xml you refer to the one in my ui project where the ADF application is . There is another web.xml file in test1 project where I try to test the portlet. That web.xml is also pasted in my earlier blog
    Any other idea ?
    thanks a lot
    Vijay
    ______________________________________________________________________

  • Getting the username from a portlet

    Hi,
    I have a new installation of Portal 10.1.4 and I'm trying to write a portlet that has access to the username from within a JSP. I am trying renderRequest.getRemoteUser() and renderRequest.getUserPrincipal().getName() and both return the username with brackets and a number inside, for example "MCOARR[1]". What I really want is the uid from LDAP.
    Looking in the directory server my user is mcoarr (or more specifically, both the uid and cn attributes are set to "mcoarr").
    How do I get just the username?
    Thanks,
    Matt

    Yeah, I had to do that too (the text munging stuff). Unfortunately, Oracle Portal doesn't seem to be following the WSRP spec on getting user attributes. There is a whole section in the spec about how to map user attributes in your portlet.xml and then get them in a portlet by doing stuff like:
    Map userInfo = (Map) request.getAttribute(PortletRequest.USER_INFO);
    String givenName = (userInfo!=null) ? (String) userInfo.get(“user.name.given”) : “”;
    String lastName = (userInfo!=null) ? (String) userInfo.get(“user.name.family”) : “”;
    This is how it works in uPortal, Liferay and other portals we tried. I don't know why Oracle portal has been through two revs of WSRP support and hasn't got this right yet.
    -Mike

Maybe you are looking for

  • How do I view websites in theie desktop version instead of mobile?

    I would like to view Facebook.com in the desktop version, but am not given that option.

  • Authorisation object for  posting parked document

    Hi Gurus, In our company, documents are being parked via an interface. After this, i require that only one particular person be able to post document if the GL account is say 100000 and no one else should be able to post this document eg if GL accoun

  • Passing date criteria in url parameter

    Hi, I want to filter a recordset by a given date. Create the recordset, if I use a runtime value of #27/11/06# all the records for that date are returned. However, when I try to pass the same information through an URL Parameter it doesn't work. Is t

  • Concatinating values

    Hi, I have a report which I have to export to excel. I am getting data in this report from 3 tables for one Partner. Unique record id there in the master table, and in other 3 tables, for the same Partner there are multiple records. When I write a qu

  • When to turn sleep, turn off, etc.?

    This question has probably already been asked, but at what points (in terms of time not in use) is it worth putting the MacBook to sleep? Turning it off? What's best for the battery? The hardware? (For instance, if you're going to be away from the co