[jbossseam-issues] [JBoss JIRA] Updated: (JBSEAM-4077) Refactor/Redesign org.jboss.seam.navigation.Pages

Drew Kutchar (JIRA) jira-events at lists.jboss.org
Fri Apr 3 20:08:22 EDT 2009


     [ https://jira.jboss.org/jira/browse/JBSEAM-4077?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Drew Kutchar updated JBSEAM-4077:
---------------------------------

    Attachment: JBSEAM-4077.patch


This patch is for a very minimal change to minimize the side effects.

> Refactor/Redesign org.jboss.seam.navigation.Pages
> -------------------------------------------------
>
>                 Key: JBSEAM-4077
>                 URL: https://jira.jboss.org/jira/browse/JBSEAM-4077
>             Project: Seam
>          Issue Type: Feature Request
>          Components: Core
>    Affects Versions: 2.1.1.GA
>            Reporter: Drew Kutchar
>         Attachments: JBSEAM-4077.patch
>
>
> Currently org.jboss.seam.navigation.Pages is a major pain point since some of the methods are marked private and some are static (don't know why).
> For example, selectDataModelRow() is private and it's got this line "if ( index<dataModel.getRowCount() )" in it which I don't think is really necessary. This caused a lot of pain for us when we were trying to integrate it with RichFaces ExtendedDataModel and DataScroller. Basically when you're getting ranges from the database, the RowCount would query the database. So we had to avoid using @DataModel and @DataModelSelection completely. I know I can override installing the Pages component, but then I have to copy/paste pretty much everything from Pages to our CustomPages just to change a line, talk about anti-DRY. I can give you more details on this if you want.
> In addition, the other not so cool method is "public static String getRequestScheme(FacesContext facesContext)" which determines if a request is secure by looking at the URL. There are scenarios that you would want to override this method. Consider the case when you have an SSL accelerator. The accelerator will terminate the SSL connection and create a new HTTP connection to the app server. Now you have the option to pass an HTTP header when the accelerator decrypts HTTPS packets so you're app server knows that the request was originally secure (so no need to redirect, or anything).
> This class has not been designed that well for extension and I think it can be improved.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list