Module Builder Extension for pluto
----------------------------------

                 Key: GERONIMO-3252
                 URL: https://issues.apache.org/jira/browse/GERONIMO-3252
             Project: Geronimo
          Issue Type: New Feature
      Security Level: public (Regular issues)
    Affects Versions: Wish List
            Reporter: Paul McMahan


Create a module builder extension that can detect WEB-INF/portlet.xml and add 
<servlet> and <servlet-mapping> entries to the application's web.xml file for 
each portlet.

For example this entry in portlet.xml:
     <portlet>
        <portlet-name>Welcome</portlet-name>
        <display-name>Welcome Portlet</display-name>
        
<portlet-class>org.apache.geronimo.console.welcome.WelcomePortlet</portlet-class>
[...]
        <portlet-info>
            <title>Welcome</title>
            <short-title>Welcome</short-title>
            <keywords>Welcome</keywords>
        </portlet-info>
    </portlet>


would add this to web.xml
  <servlet>
    <servlet-name>Welcome</servlet-name>
    <servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
    <init-param>
      <param-name>portlet-name</param-name>
      <param-value>Welcome</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
[...]
  <servlet-mapping>
    <servlet-name>Welcome</servlet-name>
    <url-pattern>/PlutoInvoker/Welcome</url-pattern>
  </servlet-mapping>



The pluto-maven-plugin currently has this functionality.  But the web.xml that 
it creates does not always work with geronimo because it does not retain all of 
the attributes of <web-app>, such as the xmlns, when it rewrites the web.xml.

Some pluto webapps will already have the necessary entries web.xml either by 
using the pluto-maven-plugin or by manual insertion.  For those apps the module 
builder extension should either replace those entries in web.xml or avoid 
writing new entries.

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

Reply via email to