Portlet compatibility

Hi all..
is the portlet developed using Web dynpro can be run on any other portal server???
How do we deploy the portlet with out using studio??

Hello,
I never received a response to this question, so I'll post again -- even confirmation of yes or no would be helpful.
Thanks,
Damian

Similar Messages

  • Building portlets with PL/SQl vs java

    Hi
    We are planing to use oracle 9iAS application server(Enterprise version)to build portal application.
    Can someone suggest me which one should i use, building portlets with j2ee or building portlets with PL/SQL.
    what are the advantages of web providers over database providers?which one is the best way of building portlets.

    Hello
    I've been using Portal for years now, and I'm still developping in PL/SQL. It's very simple and quick to developp. I'm even not using any database providers, I'm just invoking my procedures via their URLs with some Ajax hidden components, and I could developp some screens like employees vacations managements, trombinoscope, portal statistics, etc ...
    I learnt at Oracle how to developp some "true" portlets with DB providers but it's not usefull for me at this time as I don't need portlet customization etc.
    BUT
    if I had to developp a really big project with several developpers I would use DB providers.
    And maybe I would use Java but it takes rather long time to be efficient with this language and it needs to be a realy big project for I start using this language. And as explained above Java offers more compatibility with 3rd party products.
    And last but not least, one has to know what Oracle is more and more dealing with Java, the next 11g version that has just released is much more using Java than 10g does, and that's true for every Oracle products.
    So it's just a matter of skill and time.
    A.

  • 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

  • Ajax Compatibility with Weblogic Portal 10.3.2

    Hi,
    I'm developing a POC for a large project. We plan to use Ajax functionality in weblogic portal 10.3.2 using Jsf portlets. I'm getting alot of compatibility issues using Jsf libraries like IceFaces or RichFaces. I've even removed the jsf bridge from the workshop and try to make it work but it throws alot of exceptions.
    Is there any good Ajax library that works well in weblogic portal 10.3.2 environment ?
    Oracle allows Jsf portlets to be created but does not provide any clear direction on Ajax compatibility. The base jsf components are not good enough to buid an enterprise level application.
    DAMM .. dev2dev is also down.
    Help would be appreciated.
    Regards
    Edited by: 787605 on Aug 10, 2010 10:28 AM
    Edited by: 787605 on Aug 10, 2010 10:48 AM

    I worked through the document referenced in the previous post and I still cant get Open Faces ajax to work.
    I keep getting
    java.lang.ClassCastException: com.bea.portlet.container.ResourceRequestImpl cannot be cast to javax.servlet.http.HttpServletRequest errors.
    The last thing I tried was to extract the javascript into a resources folder and declared it as a render dependency to the portlet, but that is giving me some issues too.
    Another issue I get is Perm Gen out of memory about every 3 redeploys.
    I know the library I am using uses a ton of AJAX for the cool form widgets it has, so rewriting the AJAX calls is not an option.

  • JSF Portlet with RichFaces implementation

    I am trying to build a JSF 1.1 portlet with RichFaces implementation.
    Although, the portlet gets displayed with out any errors. I do not see the RichFaces capabilities getting executed such as "A4J:support" tag is not doing an Ajax based form validation.
    Any help on this? Are there any completed PoCs on RF compatibility with JSF portlets.
    Thanks
    Rajesh

    Hello,
    Have you resolved your issue ? I am also trying to run a RichFaces-based webapp on an Oracle portal (WCI) and I have some troubles.
    If you have time to look at my problem, I created a post here Oracle JSF Bridge with JBoss Richfaces .
    Thanks
    K.L.

  • API to find a Portlet from its name

    I need to find a Portlet knowing its own name and without any portal name.
    I could really find one from the documentation. Thus I looked for it in the
    JSP Tag Library Javadoc. But neither <es:portalManager> nor
    <es:portletManager> provide this. Finally I checked out add_portlets.jsp
    from the tools.war webapp (admin console), where I found
    com.beasys.commerce.portal.admin.jspbeans.PortalFinderJspBean (from WLPS
    Javadoc, "contains numerous finder methods that wrap many of the
    PortalManger APIs."). A method getPortletFor(String aPortletName) seemed to
    be exactly what I was looking for.
    First, I would like to be sure that it will be supported in following
    versions of WLPS. (as I did not find any doc about it)
    Secondly, as I now have some performance issues localized on this search
    task, I would like to be sure it is the most relevant API to do what I want.
    Regards.
    Yann

    Hello Yann,
    The PortalFinderJspBean wraps the methods of the PortalManager session bean.
    If you want to, you can use the PortalManager session bean directly.
    PortalManagerHome is not in the javadoc (there is an engineering change request
    to get it in), but it really does exist and you can get a PortalManager like
    this:
    PortalManagerHome pmh = (PortalManagerHome)
    JNDIHelper.getService(PortalManager.LOOKUP_NAME);
    PortalManager pm = pmh.create();
    The PortalManager is part of the public API, so it is as safe as anything, as
    far as future compatibility.
    If you ever have issues with performance, feel free to contact support with
    the details. Please open a support case at
    http://www.bea.com/support/index.jsp if you are still having a performance
    problem.
    Yann Feyzeau wrote:
    I need to find a Portlet knowing its own name and without any portal name.
    I could really find one from the documentation. Thus I looked for it in the
    JSP Tag Library Javadoc. But neither <es:portalManager> nor
    <es:portletManager> provide this. Finally I checked out add_portlets.jsp
    from the tools.war webapp (admin console), where I found
    com.beasys.commerce.portal.admin.jspbeans.PortalFinderJspBean (from WLPS
    Javadoc, "contains numerous finder methods that wrap many of the
    PortalManger APIs."). A method getPortletFor(String aPortletName) seemed to
    be exactly what I was looking for.
    First, I would like to be sure that it will be supported in following
    versions of WLPS. (as I did not find any doc about it)
    Secondly, as I now have some performance issues localized on this search
    task, I would like to be sure it is the most relevant API to do what I want.
    Regards.
    Yann--
    Ture Hoefner
    BEA Systems, Inc.
    2590 Pearl St.
    Suite 110
    Boulder, CO 80302
    www.bea.com

  • [content portlet suite] - problem to install patch

    Hi all,
    I've installed CPS with CIS for Oracle Portal 10.1.2 upgraded at 10.1.4.0.0 on Unbrakeable Linux .
    CPS Contribution Portlet use WSRP v1 and so have a upload file size limit to 65k.
    This is a kwown issue and Oracle Metalink suggest to iinstall two patch 4640471 first,
    and then 5752494.
    The first installation was completed succesfully.
    But when I try to install the second I obtain a warning first:
    Patch(es) 4640471,  conflict with the patch currently being installed (5752494).
    If you continue, patch(es) 4640471,  will be rolled back and the
    new patch (5752494) will be installed.
    When I try to continue opatch return an error on compatibility between the patch(5752494) version
    and the host operative system, althought the patch download is single and for "generic platform"
    with a title "for linux 32" (and my host OS is Linux 32 bit).
    Have you got any suggestion about work around this limitation on upload file size or patch installing?
    Thanks in advance.
    Federico

    Hi all,
    I've installed CPS with CIS for Oracle Portal 10.1.2 upgraded at 10.1.4.0.0 on Unbrakeable Linux .
    CPS Contribution Portlet use WSRP v1 and so have a upload file size limit to 65k.
    This is a kwown issue and Oracle Metalink suggest to iinstall two patch 4640471 first,
    and then 5752494.
    The first installation was completed succesfully.
    But when I try to install the second I obtain a warning first:
    Patch(es) 4640471,  conflict with the patch currently being installed (5752494).
    If you continue, patch(es) 4640471,  will be rolled back and the
    new patch (5752494) will be installed.
    When I try to continue opatch return an error on compatibility between the patch(5752494) version
    and the host operative system, althought the patch download is single and for "generic platform"
    with a title "for linux 32" (and my host OS is Linux 32 bit).
    Have you got any suggestion about work around this limitation on upload file size or patch installing?
    Thanks in advance.
    Federico

  • I have formatted my SSD and hard drive.... I am running a clean install from disk of 8.1 pro. I cannot determine if it is a compatibility

    issue or hardware issue. I had run a memory test and scan disk for bad sectors from the bios. As administrator, I enabled automount  in diskpart to allow windows to assign a drive name. 
    From the bios, I can see both drives and only the ssd. I have not pinpointed when the harddisk is unmounted. It is formatted as NTFS. I can hear it unmount either during boot or upon waking from sleep mode. The bios sees no bad sectors nor does windows.
    However, when I had the intel compatibility software installed, my hard drive never mounted. I did a restart and inorder for windows to see my hard drive. I disabled the intel software for the 4th gen i7 processor. This problem is happening less often. I do
    not think I have solved the problem. Intel or Windows... I think a bit of both. 
    If there is a software patch, please guide me to it. I am in school and use my laptop ALL the time. I believe it is a compatibility issue. I have attached this from searching intel's site for downloads and windows is up to date. 
    I am quite concerned because I can hear my harddrive unmount. It is labeled as healthy NTFS partition. I have checked for hidden volumes and done everything I know to do to check the integrity of the hardware as administrator. I have searched microsofts
    libraries and forums and have done everything I can find as suggestions. 
    I have checked for malware, viruses, etc. My only clue this is going to happen is the hard disk spins up and I hear the fan, then I hear it unmount the drive. Of course, after unmounted there are other issues which I have ruled out as the cause of the problem.
    Basically, I am experiencing a lack of swap space after my hard drive unmounts.
    Any suggestions, are welcome! I would really like to know if this is a known windows issue. I should not have to disable intel's processor software. I paid for the features of the i7 and would like to utilise the processor.

    Hi,
    According to your descriptioin, I don't think this is system problem, it should be Intel driver problem. It would be contact Intel to confirm this issue whether this is their driver problem.
    Roger Lu
    TechNet Community Support

  • Itunes wont open - compatibility error...

    hi,
    today I had a problem with moving songs from itunes to ipod. have had this issue in the past which was fixed by using ipod updater.
    this didnt seem to work so for first time in ages ran the itunes updater. I can no longer open itunes and get the following error.
    Quicktime unavailable
    itunes requires Windows 2000 or later
    Please make sure compatibility mode is disbaled in the compatibility tab of the properties of itunes.exe
    well....I tried to do this (I am not massively IT literate!), have tried selecting or deselecting compatibility on this tab....and still wont open....any ideas?
    im on windows XP professional.
    cheers in advance
    mike

    hiya!
    if I find the mp3 file on my hardrive and move it to ipod manually it still doesnt appear when I disconnect.
    that's normal. for the ipod to recognise a song it needs to be transferred to the ipod via itunes rather than dragged and dropped with Windows Explorer. see the note at the end of this article:
    iPod: Operating System or iTunes Reports the Disk is Full, But It Does Not Look Full
    ... try resetting the warnings on your ipod and trying another manual sync:
    Resetting iPod warnings
    do you get an error message show up after resetting warnings?
    love, b

  • Is there a Data Execution Prevention compatable version of iTunes?  I have reinstalled iTunes 10.5 at least 10 times, and after it installs, it will not open because of DEP.

    I have tried all the advice I have seen on Apple Support discussion boards for the past 2 days, and nothing works.  Disabling DEP is not possible, regardless of what the Windows Support discussions tell you.  In the meantime, I have absolutely no access to iTunes, or even the ability to update my iPhone or iPod.  The only feasable solution is the possibility of a version of iTunes that is compatable with Data Execution Prevention settings. 
    In the past 2 days, I have:  Removed iTunes and related components from the Control Panel (numerous times)  Per the instructions on Apple Service discussions pages, I did it in this order.  1. iTunes  2. QuickTime  3. Apple Software Update  4. Apple Mobile Device Support 5. Bonjour ^. Apple Application Support.  After all that, I reinstalled iTunes. 
    Everything looks fine during installation, with no error messages.  At the end, it says everything was successfully installed.  However, when the installation tool closes, iTunes will only partially open a window, but will stay blank.  Then I get the message that iTunes has stopped working and that Windows has shut it down.  Then I get notified that DEP has caused iTunes to shut down. 
    Can someone please help?  Or, is there a DEP compatible version of iTunes? 
    I would appreciate any help.  Thanks!!

    Polydorus,
    Thank you for your kind reply.  During the many times I uninstalled iTunes, and all the other Apple programs, I only used the Uninstall Programs in Windows Control Panel.  To make a long story short, I found a solution that works for me, but it is still not a complete soluton.
    Here is what I did:
    I used Uninstall Program in the Windows Control Panel to uninstall everything IN THIS ORDER
    1. iTunes
    2. QuickTime
    3. Apple Software Update
    4. Apple Mobile Device Support
    5. Bonjour
    6. Apple Application Support
    Then I went to C:\Program Files and looked for any iTunes or Apple program listed there and deleted it.
    I have 64-bit, so I then went to C:\Program files (x86) and looked for any iTunes, QuickTime, Bonjour or any other file or folder that had Apple or any Apple program in the name and deleted it.
    I went to C:\Windows|SysWOW64\Quicktime  and C:\Windows\SysWOW64\QuicktimeVR and deleted them
    Go back to START, and open the "C" drive.  Open the USERS folder.  Open the folder with your username.  Open the AppData folder.  Then double-click on the LOCAL folder to open it.  If you see any files or folders there that show any Apple program or file, delete those files or folders.  Then go to the REMOTE folder and do the same.  If there are any other users on this computer, go to each individual user and do the same thing in each LOCAL and REMOTE folder.  Restart your computer.
    Go to http://www.apple.com/itunes/download/ This is the page where you will actually download iTunes.  Scroll down the page to the section under "Windows Software"  that says "64-bit editions of Windows Vista or Windows 7 require the iTunes 64-bit installer".  Click on that line to get the installer.  It will take you to another download window.
    Scroll to the bottom of the page to the message that says "Download for iTunes 10.4.1 for Windows (64-bit) here: iTunes for Windows 64-bit."  Click there to get the download.
    This is not iTunes 10.5, so you will not have access to "The Cloud", but it is at least functional until Apple actually comes out with a version that will not activate the DEP message.  There was no combination of uninstalling and reinstalling, with or without Quicktime, with 10.5 that did not cause problems with Data Execution Prevention problems that I found.
    I also used Firefox for the downloading instead of Internet Explorer.  It just seemed to function better that way.
    I hope this is helpful to someone.  It's just what worked for me.   

  • How to set Compatibility Mode for a single site in ie10

    This question was originally posted on the Answers forum -
    http://answers.microsoft.com/en-us/ie/forum/ie10-windows_7/how-to-set-compatibility-mode-for-a-single-site-in/187152e3-142a-4d96-8d1b-af82ef571eec
    I am having problem with getting ie10 to set ie9 compatibility for a single site (sharepoint.contoso.com).
    When I add this website in Compatibility View Settings (Alt > Tools > Compatibility View Settings > 'Add this Website') it adds the domain 'contoso.com' and not the individual website (sharepoint.contoso.com).
    This cause other sites (www.contoso.com) to be configured to use compatibility mode. Because this is a separate site (different web server) to the site sharepoint.contoso.com (sharepoint 2010 server) we need different compatibility settings.
    Using a different example to explain the issue -
    Microsoft has three websites that are different websites created by different developers written in different programming languages and they only work with certain browsers.
    microsoft.com (Website1 created by Developer1) - compatible with ie8/ie9/ie10
    msdn.microsoft.com (Website2 created by Developer2) - compatible with ie8/ie9
    technet.microsoft.com (Website3 website created by Developer3) - compatible only with ie10
    The only thing the three website share is the URL contains 'microsoft.com'.
    Marking 'msdn.microsoft.com' to run in compatibility mode affects the other 2 websites - mainly technet.microsoft.com which will not work now since it only runs in pure ie10 mode. 
    Should you be able to add an individual site to the compatibility list instead of all sites that have  .microsoft.com in the URL? Am I missing a simple setting in the ie10?
    As a workaround I am using the F12 Developer Tools to set the Browser Mode which temporary sets the compatibility mode. However this is not a nice solution to the end users at our organisation. 

    problem is not solved for non corporate environments...
    You could start your own thread.  Then if you got that answer and it was marked Answered you would have the ability to unmark it.  The OP of this one seems satisfied.  Also note that this is TechNet.  Consumers can get help on Answers
    forums.
    Robert Aldwinckle
    Oh! I wrote it wrong: I should have said: This is not solved for NON-AD environments. No demands what so ever to use Window 7/8 professional in a small corporation or on a big corporation with Island of smaller departments for example offshore.
    The problem is that the thread is not "Answered" by the OP, its is marked answered by a moderator (and same moderator that did the answer) so no way of telling if the OP is satisfied.
    But you are right in the fact that I am almost kidnapping the thread. But a complete answer would benefit all in this case I would presume.
    Regards
    /Aldus

  • How can I turn on the Compatibility View Option?

    In viewing a vendor's online reporting, I noticed that the report's header appears on the right, while the report's content appear on the left, creating a confusing viewing.
    The vendor has recommended that I turn on the Compatibility View Option, but I cannot find this option anywhere.
    Would someone direct me to the section where I can turn on the Compatibility View Option?
    Thank you!

    You can try these steps in case of issues with web pages:
    You can reload web page(s) and bypass the cache to refresh possibly outdated or corrupted files.
    *Hold down the Shift key and left-click the Reload button
    *Press "Ctrl + F5" or press "Ctrl + Shift + R" (Windows,Linux)
    *Press "Command + Shift + R" (Mac)
    Clear the cache and cookies only from websites that cause problems.
    "Clear the Cache":
    *Firefox/Tools > Options > Advanced > Network > Cached Web Content: "Clear Now"
    "Remove Cookies" from sites causing problems:
    *Firefox/Tools > Options > Privacy > "Use custom settings for history" > Cookies: "Show Cookies"
    Start Firefox in <u>[[Safe Mode|Safe Mode]]</u> to check if one of the extensions (Firefox/Tools > Add-ons > Extensions) or if hardware acceleration is causing the problem.
    *Switch to the DEFAULT theme: Firefox/Tools > Add-ons > Appearance
    *Do NOT click the Reset button on the Safe Mode start window
    *https://support.mozilla.org/kb/Safe+Mode
    *https://support.mozilla.org/kb/Troubleshooting+extensions+and+themes

  • I am trying to find "compatibility view settings" in order to add a website that I need to use for work. PLEASE HELP!

    I received a "how to" sheet of how to be able to view this website but it wants me to download Internet Explorer (excuse me while i say yuck!)...
    So the directions state: Under "Tools" click on "compatibility view settings". Where is says "add this website" write in the website and then click add and close. Log off and reboot.
    I live on Mozilla on all my devices. I recommend it to anyone who has not been introduced yet. I cringe to think of being forced to use internet explorer!!!
    Thank you for all you do!!!

    hello ETRU, "compatibility view" is a concept of internet explorer that other browsers do not have. do you have any particular problem viewing it with firefox?

  • How to Get Portlet Namespace in a JSP attribute

    Hi All,
    The id of any component in a JSF application (with JSR168 portlets) takes the form
    'view'+'<portlet:namespace/>'+':'+'formname:componentidname';
    I need this id to be used for certain validations.
    Currently I am using it as below :-
    <h:intputText required="#{ ! empty param['viewns_7_CGAH47L000NAF0I04I42ND10P7_:form:login']}"/>
    Presently I have hardcoded the portlet namespace 'ns_7_CGAH47L000NAF0I04I42ND10P7_' by looking into the html source of the rendered page.
    Is there any way by which i can automatically get this portlet namespace within the param tag in the jsp.
    I know for a fact that within javascript tags, it can be used as <portlet:namespace/> as shown below :-
    <script type="text/javascript">
    function doSomething()
    buttonId= 'view' + '<portlet:namespace/>'+':'+'formName:buttonId';
    document.getElementById(buttonId).disabled = true;
    </script>
    Kindly treat this on high priority.
    Thanks and Regards,
    Darshan Shroff

    Perhaps so.
    I need to use it within param as below
    <h:inputText value="#{bean.userid}"
    required="#{!empty param['viewns_7_CGAH47L00GLRE0I0BCOUKS00I5_:form:login']}" />
    Here 'viewns_7_CGAH47L00GLRE0I0BCOUKS00I5_:form:login' is actually
    'view' + '<portlet:namespace/>'+':'+'formName:buttonId';
    I am just trying to check the presence of the client ID in the request paramameter map inorder to attain action dependent requiredness.
    Kindly tell me how i could access it within param.
    Thanks & Regards,
    Darshan Shroff

  • 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)?

Maybe you are looking for