Wicket
  1. Wicket
  2. WICKET-647 New Wicket Portlet support
  3. WICKET-660

New Wicket Portlet support: Merge WicketPortletFilter back in WicketFilter using a delagate class for handling and (class) loading the portlet specific functionality

    Details

    • Type: Sub-task Sub-task
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.3.0-beta2
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      I moved the usage of all portlet api specific classes in WicketPortletFilter to a separately class, WicketFilterPortletContext, which will only be created when running in a portlet container.
      As effect, the resulting WicketPortletFilter code doesn't depend on the portlet api anymore, so using it within a non-portlet container context (plain Tomcat or Jetty for instance) is now possible too.

      But, now the remaing code in WicketPortletFilter really does do much itself anymore and can easily be integrated back in WicketFilter without problems.

      I've decided to do so as it makes Wicket portlet support even less intrusive as it was before: no need to configure a different filter anymore in web.xml !

        Activity

        Ate Douma created issue -
        Hide
        Ate Douma added a comment -

        Done.

        So now you can deploy a portlet-supporting wicket application also in plain web containers!

        I've build a new version of the wicket-examples.war which you can download from my apache home page

        http://people.apache.org/~ate/wicket/wicket-examples/r547598/wicket-examples.war

        This example can be used a drop in replacement in the jetspeed-2.1.1-beta1-wicket-demo-installer I've created yesterday (see: WICKET-658): just copy it into $

        {installationPath}

        /webapps/jetspeed/WEB-INF/deploy.
        And of course you can test run it in a plain web container like Tomcat or Jetty too.

        Show
        Ate Douma added a comment - Done. So now you can deploy a portlet-supporting wicket application also in plain web containers! I've build a new version of the wicket-examples.war which you can download from my apache home page http://people.apache.org/~ate/wicket/wicket-examples/r547598/wicket-examples.war This example can be used a drop in replacement in the jetspeed-2.1.1-beta1-wicket-demo-installer I've created yesterday (see: WICKET-658 ): just copy it into $ {installationPath} /webapps/jetspeed/WEB-INF/deploy. And of course you can test run it in a plain web container like Tomcat or Jetty too.
        Ate Douma made changes -
        Field Original Value New Value
        Resolution Fixed [ 1 ]
        Status Open [ 1 ] Resolved [ 5 ]
        Hide
        Ate Douma added a comment -

        The merge of WicketFilter and WicketPortletFilter isn't correct yet.
        Super calls allows for easy override of parameters, which shouldn't be overlooked when merging two methods...

        Show
        Ate Douma added a comment - The merge of WicketFilter and WicketPortletFilter isn't correct yet. Super calls allows for easy override of parameters, which shouldn't be overlooked when merging two methods...
        Ate Douma made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Hide
        Ate Douma added a comment -

        Fixed again.

        I've updated the downloadable wicket-examples.war too:

        http://people.apache.org/~ate/wicket/wicket-examples/r547651/wicket-examples.war

        Show
        Ate Douma added a comment - Fixed again. I've updated the downloadable wicket-examples.war too: http://people.apache.org/~ate/wicket/wicket-examples/r547651/wicket-examples.war
        Ate Douma made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        ate committed 572321 (14 files)
        Reviews: none

        WICKET-650: New Wicket Portlet support: use a RequestContext for abstracted url generation, writing header response and namespacing
        See: https://issues.apache.org/jira/browse/WICKET-650 and https://issues.apache.org/jira/browse/WICKET-660
        - New portlet support package with features like the WicketPortlet and the PortletRequestContext extension of RequestContext, as well as
          several Portlet "wrapper" classes used when serving a Portlet request.
          These portlet-support objects are all hooked in transparent, e.g. hidden from developers POV: all the portlet-support integration API is handled
          through the generic (e.g. Portlet independant) o.a.w.RequestContext class.
          For bootstrapping the portlet-support only WicketFilter needs a few internal changes which are transparent as well.
        - As the portlet-support is and should be optional, the required build dependencies (portlet-api, portal-bridges-common) are optional as well.
          Furthermore, the way the portlet-support will be bootstrapped by WicketFilter (to be committed after this), runtime dependency will be optional as well,
          e.g. unless a Portlet Context is (dynamically) discovered, none of these classes will be loaded.
        - This contains changes originally committed to the wicket-1.3-portlet-support branch for WiCKET-650 and -660 as well as several new improvements,
          now applied to the new wicket-1.3.0-beta3-portlet-support branch.

        wicket wicket-1.3.0-beta3-portlet-support
        ate committed 572333 (1 file)
        Reviews: none

        WICKET-650: New Wicket Portlet support: use a RequestContext for abstracted url generation, writing header response and namespacing
        See: https://issues.apache.org/jira/browse/WICKET-650 and https://issues.apache.org/jira/browse/WICKET-660
        - Bootstrapping the portlet-support in WicketFilter: for this only internal and transparent changes are needed.
        - As the portlet-support needs to be optional, runtime dependency on portlet-support specific api's (portlet-api, portal-bridges-common) is not loaded
          unless a Portlet Context is dynamically discovered.

        Martin Grigorov made changes -
        Component/s wicket-portlet [ 12311803 ]

          People

          • Assignee:
            Ate Douma
            Reporter:
            Ate Douma
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development