You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2006/10/30 15:14:01 UTC

svn commit: r469151 - in /incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF: applicationContext.xml servicemix.xml web.xml

Author: gnodet
Date: Mon Oct 30 06:14:00 2006
New Revision: 469151

URL: http://svn.apache.org/viewvc?view=rev&rev=469151
Log:
Extract jmx server configuration to easily derive a distribution from this war

Added:
    incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/servicemix.xml
Modified:
    incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml
    incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml

Modified: incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml?view=diff&rev=469151&r1=469150&r2=469151
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml (original)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml Mon Oct 30 06:14:00 2006
@@ -1,102 +1,85 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-   
-    http://www.apache.org/licenses/LICENSE-2.0
-   
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+   
+    http://www.apache.org/licenses/LICENSE-2.0
+   
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
 <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
                            http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
-  
-  <bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
-    <property name="location" value="classpath:servicemix-web-console.properties" />
-  </bean>
-  
-  <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
-  </bean>
-  
-  <bean id="server" class="org.springframework.jmx.support.MBeanServerConnectionFactoryBean">
-    <property name="serviceUrl" value="${jmx-service-url}" />
-    <property name="environmentMap">
-      <map>
-        <entry key="jmx.remote.credentials">
-          <bean class="org.springframework.util.StringUtils" factory-method="commaDelimitedListToStringArray">
-            <constructor-arg value="${jmx-username},${jmx-password}" />
-          </bean>
-        </entry>
-      </map>
-    </property>
+  
+  <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
   </bean>
   
-  <bean id="jmxProxy" abstract="true" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
+  <bean id="jmxProxy" abstract="true" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
     <property name="server" ref="server"/>
     <property name="useStrictCasing" value="false" />
     <property name="connectOnStartup" value="false" />
-  </bean>
-  
-  <bean id="jdbcAuditorMBean" parent="jmxProxy">
-    <property name="objectName" value="${jdbc-auditor-mbean-name}" />
-    <property name="proxyInterface" value="org.apache.servicemix.jbi.audit.AuditorMBean" />
-  </bean>
-  
-  <bean id="adminCommandsServiceMBean" parent="jmxProxy">
-    <property name="objectName" value="${admin-commands-service-mbean-name}" />
-    <property name="proxyInterface" value="org.apache.servicemix.jbi.framework.AdminCommandsServiceMBean" />
-  </bean>
-  
-  <bean id="registryMBean" parent="jmxProxy">
-    <property name="objectName" value="${registry-mbean-service-name}" />
-    <property name="proxyInterface" value="org.apache.servicemix.jbi.framework.RegistryMBean" />
-  </bean>
-  
-  <bean id="dotViewServiceMBean" parent="jmxProxy">
-    <property name="objectName" value="${dot-view-mbean-service-name}" />
-    <property name="proxyInterface" value="org.apache.servicemix.jbi.view.DotViewServiceMBean" />
-  </bean>
-  
-  <bean id="proxyManager" class="org.apache.servicemix.web.model.ProxyManager">
-    <constructor-arg ref="server" />
-  </bean>
-  
-  <bean id="registry" class="org.apache.servicemix.web.model.Registry">
-    <constructor-arg ref="proxyManager" />
-    <constructor-arg ref="registryMBean" />
-  </bean>
-  
-  <bean id="auditor" class="org.apache.servicemix.web.Auditor" scope="prototype">
-    <constructor-arg ref="jdbcAuditorMBean" />
-  </bean>
-  <bean id="components" factory-bean="registry" factory-method="getComponents" scope="prototype" />
-  <bean id="endpoints" factory-bean="registry" factory-method="getEndpoints" scope="prototype" />
-  <bean id="serviceAssemblies" factory-bean="registry" factory-method="getServiceAssemblies" scope="prototype" />
-  <bean id="serviceUnits" factory-bean="registry" factory-method="getServiceUnits" scope="prototype" />
-  <bean id="sharedLibraries" factory-bean="registry" factory-method="getSharedLibraries" scope="prototype" />
-  <bean id="component" class="org.apache.servicemix.web.ComponentFactoryBean">
+  </bean>
+  
+  <bean id="jdbcAuditorMBean" parent="jmxProxy">
+    <property name="objectName" value="${jdbc-auditor-mbean-name}" />
+    <property name="proxyInterface" value="org.apache.servicemix.jbi.audit.AuditorMBean" />
+  </bean>
+  
+  <bean id="adminCommandsServiceMBean" parent="jmxProxy">
+    <property name="objectName" value="${admin-commands-service-mbean-name}" />
+    <property name="proxyInterface" value="org.apache.servicemix.jbi.framework.AdminCommandsServiceMBean" />
+  </bean>
+  
+  <bean id="registryMBean" parent="jmxProxy">
+    <property name="objectName" value="${registry-mbean-service-name}" />
+    <property name="proxyInterface" value="org.apache.servicemix.jbi.framework.RegistryMBean" />
+  </bean>
+  
+  <bean id="dotViewServiceMBean" parent="jmxProxy">
+    <property name="objectName" value="${dot-view-mbean-service-name}" />
+    <property name="proxyInterface" value="org.apache.servicemix.jbi.view.DotViewServiceMBean" />
+  </bean>
+  
+  <bean id="proxyManager" class="org.apache.servicemix.web.model.ProxyManager">
+    <constructor-arg ref="server" />
+  </bean>
+  
+  <bean id="registry" class="org.apache.servicemix.web.model.Registry">
+    <constructor-arg ref="proxyManager" />
+    <constructor-arg ref="registryMBean" />
+  </bean>
+  
+  <bean id="auditor" class="org.apache.servicemix.web.Auditor" scope="prototype">
+    <constructor-arg ref="jdbcAuditorMBean" />
+  </bean>
+  <bean id="components" factory-bean="registry" factory-method="getComponents" scope="prototype" />
+  <bean id="endpoints" factory-bean="registry" factory-method="getEndpoints" scope="prototype" />
+  <bean id="serviceAssemblies" factory-bean="registry" factory-method="getServiceAssemblies" scope="prototype" />
+  <bean id="serviceUnits" factory-bean="registry" factory-method="getServiceUnits" scope="prototype" />
+  <bean id="sharedLibraries" factory-bean="registry" factory-method="getSharedLibraries" scope="prototype" />
+  <bean id="component" class="org.apache.servicemix.web.ComponentFactoryBean">
+    <property name="registry" ref="registry" />
+  </bean>
+  <bean id="endpoint" class="org.apache.servicemix.web.EndpointFactoryBean">
+    <property name="registry" ref="registry" />
+  </bean>
+  <bean id="serviceUnit" class="org.apache.servicemix.web.ServiceUnitFactoryBean">
     <property name="registry" ref="registry" />
-  </bean>
-  <bean id="endpoint" class="org.apache.servicemix.web.EndpointFactoryBean">
-    <property name="registry" ref="registry" />
-  </bean>
-  <bean id="serviceUnit" class="org.apache.servicemix.web.ServiceUnitFactoryBean">
-    <property name="registry" ref="registry" />
-  </bean>
-  <bean id="serviceAssembly" class="org.apache.servicemix.web.ServiceAssemblyFactoryBean">
-    <property name="registry" ref="registry" />
-  </bean>
-  <bean id="sharedLibrary" class="org.apache.servicemix.web.SharedLibraryFactoryBean">
-    <property name="registry" ref="registry" />
-  </bean>
-  
-</beans>
+  </bean>
+  <bean id="serviceAssembly" class="org.apache.servicemix.web.ServiceAssemblyFactoryBean">
+    <property name="registry" ref="registry" />
+  </bean>
+  <bean id="sharedLibrary" class="org.apache.servicemix.web.SharedLibraryFactoryBean">
+    <property name="registry" ref="registry" />
+  </bean>
+  
+</beans>

Added: incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/servicemix.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/servicemix.xml?view=auto&rev=469151
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/servicemix.xml (added)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/servicemix.xml Mon Oct 30 06:14:00 2006
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+   
+    http://www.apache.org/licenses/LICENSE-2.0
+   
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans 
+                           http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
+  
+  <bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
+    <property name="location" value="classpath:servicemix-web-console.properties" />
+  </bean>
+  
+  <bean id="server" class="org.springframework.jmx.support.MBeanServerConnectionFactoryBean">
+    <property name="serviceUrl" value="${jmx-service-url}" />
+    <property name="environmentMap">
+      <map>
+        <entry key="jmx.remote.credentials">
+          <bean class="org.springframework.util.StringUtils" factory-method="commaDelimitedListToStringArray">
+            <constructor-arg value="${jmx-username},${jmx-password}" />
+          </bean>
+        </entry>
+      </map>
+    </property>
+  </bean>
+  
+</beans>

Modified: incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml?view=diff&rev=469151&r1=469150&r2=469151
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml (original)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml Mon Oct 30 06:14:00 2006
@@ -1,108 +1,113 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-   
-    http://www.apache.org/licenses/LICENSE-2.0
-   
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
-                             http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
-         version="2.4">
-
-    <description>
-      ServiceMix Console
-    </description>
-    <display-name>ServiceMix Console</display-name>
-
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <!--              Configuration of the SiteMesh Filter.                                                                 -->
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <filter>
-        <filter-name>sitemesh</filter-name>
-        <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
-    </filter>
-
-    <filter-mapping>
-        <filter-name>sitemesh</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-    
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <!--              Expose Spring POJOs to JSP                   .                                                             -->
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <filter>
-        <filter-name>spring</filter-name>
-        <filter-class>org.apache.servicemix.web.filter.ApplicationContextFilter</filter-class>
-    </filter>
-
-    <filter-mapping>
-        <filter-name>spring</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <!--              ServiceMix servlets                                                                                                -->
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-        
-    
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <!--              Spring listener.                   -->
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-		<listener>
-		  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+   
+    http://www.apache.org/licenses/LICENSE-2.0
+   
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
+                             http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+         version="2.4">
+
+    <description>
+      ServiceMix Console
+    </description>
+    <display-name>ServiceMix Console</display-name>
+
+    <context-param>
+        <param-name>contextConfigLocation</param-name>
+        <param-value>/WEB-INF/applicationContext.xml /WEB-INF/servicemix.xml</param-value>
+    </context-param>
+
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!--              Configuration of the SiteMesh Filter.                                                                 -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <filter>
+        <filter-name>sitemesh</filter-name>
+        <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
+    </filter>
+
+    <filter-mapping>
+        <filter-name>sitemesh</filter-name>
+        <url-pattern>/*</url-pattern>
+    </filter-mapping>
+    
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!--              Expose Spring POJOs to JSP                   .                                                             -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <filter>
+        <filter-name>spring</filter-name>
+        <filter-class>org.apache.servicemix.web.filter.ApplicationContextFilter</filter-class>
+    </filter>
+
+    <filter-mapping>
+        <filter-name>spring</filter-name>
+        <url-pattern>/*</url-pattern>
+    </filter-mapping>
+
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!--              ServiceMix servlets                                                                                                -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+        
+    
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!--              Spring listener.                   -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+		<listener>
+		  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 		</listener>
     <listener>
       <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
-		</listener>
-
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <!--         Configuration of the Spring MVC dispatcher              -->
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-		<servlet>
-			<servlet-name>dispatcher</servlet-name>
-			<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
-			<load-on-startup>2</load-on-startup>
-		</servlet>
-
-    <servlet-mapping>
-        <servlet-name>dispatcher</servlet-name>
-        <url-pattern>*.action</url-pattern>
+		</listener>
+
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!--         Configuration of the Spring MVC dispatcher              -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+		<servlet>
+			<servlet-name>dispatcher</servlet-name>
+			<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
+			<load-on-startup>2</load-on-startup>
+		</servlet>
+
+    <servlet-mapping>
+        <servlet-name>dispatcher</servlet-name>
+        <url-pattern>*.action</url-pattern>
     </servlet-mapping>
     <servlet-mapping>
         <servlet-name>dispatcher</servlet-name>
-        <url-pattern>*.svg</url-pattern>
-    </servlet-mapping>
-
-	  <welcome-file-list>
-			<welcome-file>index.html</welcome-file>
-			<welcome-file>index.jsp</welcome-file>
-		</welcome-file-list>
-		
-		<error-page>
-		  <exception-type>java.lang.Exception</exception-type>
-		  <location>/error.jsp</location>
-		</error-page>
-
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-    <!--         Factor out common headers in JSP pages            -->
-    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
-	  <jsp-config>
-	    <jsp-property-group>
-	       <url-pattern>*.jsp</url-pattern>
-	       <include-prelude>/WEB-INF/jspf/headertags.jspf</include-prelude>
-	     </jsp-property-group>
-   </jsp-config>
-</web-app>
+        <url-pattern>*.svg</url-pattern>
+    </servlet-mapping>
+
+	  <welcome-file-list>
+			<welcome-file>index.html</welcome-file>
+			<welcome-file>index.jsp</welcome-file>
+		</welcome-file-list>
+		
+		<error-page>
+		  <exception-type>java.lang.Exception</exception-type>
+		  <location>/error.jsp</location>
+		</error-page>
+
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!--         Factor out common headers in JSP pages            -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+	  <jsp-config>
+	    <jsp-property-group>
+	       <url-pattern>*.jsp</url-pattern>
+	       <include-prelude>/WEB-INF/jspf/headertags.jspf</include-prelude>
+	     </jsp-property-group>
+   </jsp-config>
+</web-app>