You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bridges-dev@portals.apache.org by "Trevor Lohrbeer (JIRA)" <br...@portals.apache.org> on 2009/08/12 03:00:15 UTC

[jira] Created: (PB-92) JSF servlets don't work when used side-by-side with JSF portlets

JSF servlets don't work when used side-by-side with JSF portlets
----------------------------------------------------------------

                 Key: PB-92
                 URL: https://issues.apache.org/jira/browse/PB-92
             Project: Portals Bridges
          Issue Type: Bug
          Components: jsf
    Affects Versions: 1.0.4
         Environment: JBoss 4.0.5 running Apache MyFaces 1.1.5, portlet-bridges 1.0.4
            Reporter: Trevor Lohrbeer


When the portlet bridges library is included in a WAR file, JSP pages can only be accessed through portlets, not directly from the FacesServlet. Attempting to access a JSP page through the FacesServlet results in an IllegalArgumentException with the message "Only PortletContext supported". The stack trace shows that this occurs when attempting to access the session map.

Upon further investigation, the problem stems from the fact that the portlet-bridges-jsf library includes a META-INF/faces-config.xml file which installs a custom FacesContextFactory and ViewHandler. These are installed for the entire web application, yet are designed only to work with portlets. Thus, running JSF portlets and servlets side-by-side results in errors.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: bridges-dev-help@portals.apache.org


[jira] Updated: (PB-92) JSF servlets don't work when used side-by-side with JSF portlets

Posted by "Trevor Lohrbeer (JIRA)" <br...@portals.apache.org>.
     [ https://issues.apache.org/jira/browse/PB-92?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Trevor Lohrbeer updated PB-92:
------------------------------

    Attachment: servlet-and-portlets-side-by-side-v2.patch

Attached is an updated patch. My isPortlet() function in PortletViewHandlerImpl was not working correctly because PortletExternalContextImpl does not implement javax.portlet.PortletContext. Instead, now I'm testing to see if the facesContext is an instance of PortletFacesContextImpl, which should work as long as the FacesContextFactory remains the portals bridges FacesContextFactoryImpl.

> JSF servlets don't work when used side-by-side with JSF portlets
> ----------------------------------------------------------------
>
>                 Key: PB-92
>                 URL: https://issues.apache.org/jira/browse/PB-92
>             Project: Portals Bridges
>          Issue Type: Bug
>          Components: jsf
>    Affects Versions: 1.0.4
>         Environment: JBoss 4.0.5 running Apache MyFaces 1.1.5, portlet-bridges 1.0.4
>            Reporter: Trevor Lohrbeer
>         Attachments: servlet-and-portlets-side-by-side-v2.patch, servlet-and-portlets-side-by-side.patch
>
>
> When the portlet bridges library is included in a WAR file, JSP pages can only be accessed through portlets, not directly from the FacesServlet. Attempting to access a JSP page through the FacesServlet results in an IllegalArgumentException with the message "Only PortletContext supported". The stack trace shows that this occurs when attempting to access the session map.
> Upon further investigation, the problem stems from the fact that the portlet-bridges-jsf library includes a META-INF/faces-config.xml file which installs a custom FacesContextFactory and ViewHandler. These are installed for the entire web application, yet are designed only to work with portlets. Thus, running JSF portlets and servlets side-by-side results in errors.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: bridges-dev-help@portals.apache.org


[jira] Updated: (PB-92) JSF servlets don't work when used side-by-side with JSF portlets

Posted by "Trevor Lohrbeer (JIRA)" <br...@portals.apache.org>.
     [ https://issues.apache.org/jira/browse/PB-92?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Trevor Lohrbeer updated PB-92:
------------------------------

    Attachment: servlet-and-portlets-side-by-side.patch

Attached is a patch that fixes the problem by allowing the various maps used by a request to use either portlet or servlet contexts and requests. It also modifies the PortletViewHandlerImpl to delegate to the parent view handler when processing a servlet request.

Note that I just started looking at the code today, so there may be a more efficient way to achieve the same results. I included notes in parts that I thought might need to be reviewed before merging into the main codebase.

> JSF servlets don't work when used side-by-side with JSF portlets
> ----------------------------------------------------------------
>
>                 Key: PB-92
>                 URL: https://issues.apache.org/jira/browse/PB-92
>             Project: Portals Bridges
>          Issue Type: Bug
>          Components: jsf
>    Affects Versions: 1.0.4
>         Environment: JBoss 4.0.5 running Apache MyFaces 1.1.5, portlet-bridges 1.0.4
>            Reporter: Trevor Lohrbeer
>         Attachments: servlet-and-portlets-side-by-side.patch
>
>
> When the portlet bridges library is included in a WAR file, JSP pages can only be accessed through portlets, not directly from the FacesServlet. Attempting to access a JSP page through the FacesServlet results in an IllegalArgumentException with the message "Only PortletContext supported". The stack trace shows that this occurs when attempting to access the session map.
> Upon further investigation, the problem stems from the fact that the portlet-bridges-jsf library includes a META-INF/faces-config.xml file which installs a custom FacesContextFactory and ViewHandler. These are installed for the entire web application, yet are designed only to work with portlets. Thus, running JSF portlets and servlets side-by-side results in errors.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: bridges-dev-help@portals.apache.org