File: /var/www/html/unitime/target/unitime-4.8/WEB-INF/web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
* Licensed to The Apereo Foundation under one or more contributor license
* agreements. See the NOTICE file distributed with this work for
* additional information regarding copyright ownership.
*
* The Apereo Foundation 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://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>
UniTime
</display-name>
<absolute-ordering/>
<description>
University Timetabling Application
</description>
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>
<!-- Error Pages -->
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error.jsp</location>
</error-page>
<session-config>
<session-timeout>45</session-timeout>
</session-config>
<!-- Sprint Servlets -->
<servlet>
<servlet-name>gwt-dispatcher</servlet-name>
<servlet-class>org.unitime.timetable.spring.gwt.GwtDispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>calendarServlet</servlet-name>
<servlet-class>org.unitime.timetable.gwt.server.CalendarServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>patternServlet</servlet-name>
<servlet-class>org.unitime.timetable.gwt.server.PatternServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>gwtRpcServlet</servlet-name>
<servlet-class>org.unitime.timetable.gwt.command.server.GwtRpcServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>uploadServlet</servlet-name>
<servlet-class>org.unitime.timetable.gwt.server.UploadServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>exportServlet</servlet-name>
<servlet-class>org.unitime.timetable.export.ExportServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>queueOutputServlet</servlet-name>
<servlet-class>org.unitime.timetable.util.queue.QueueOutputFileServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>taskOutputServlet</servlet-name>
<servlet-class>org.unitime.timetable.server.script.TaskOutputFileServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>remoteLogging</servlet-name>
<servlet-class>org.unitime.timetable.gwt.server.UniTimeRemoteLoggingService</servlet-class>
</servlet>
<servlet>
<servlet-name>roomPictureServlet</servlet-name>
<servlet-class>org.unitime.timetable.server.rooms.RoomPictureServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>apiServlet</servlet-name>
<servlet-class>org.unitime.timetable.api.ApiServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>mapServlet</servlet-name>
<servlet-class>org.unitime.timetable.server.rooms.StaticMapServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>gwt-dispatcher</servlet-name>
<url-pattern>*.gwt</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>calendarServlet</servlet-name>
<url-pattern>/calendar</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>gwtRpcServlet</servlet-name>
<url-pattern>/unitime/gwt.rpc</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>patternServlet</servlet-name>
<url-pattern>/pattern</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>roomPictureServlet</servlet-name>
<url-pattern>/picture</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>uploadServlet</servlet-name>
<url-pattern>/upload</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>exportServlet</servlet-name>
<url-pattern>/export</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>queueOutputServlet</servlet-name>
<url-pattern>/qpfile</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>taskOutputServlet</servlet-name>
<url-pattern>/taskfile</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>apiServlet</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>mapServlet</servlet-name>
<url-pattern>/maps</url-pattern>
</servlet-mapping>
<!-- Servlet Mappings -->
<servlet-mapping>
<servlet-name>remoteLogging</servlet-name>
<url-pattern>/unitime/remote_logging</url-pattern>
</servlet-mapping>
<filter>
<filter-name>log4jServletFilter</filter-name>
<filter-class>org.apache.logging.log4j.web.Log4jServletFilter</filter-class>
</filter>
<!-- Filter to automatically close any open hibernate sessions -->
<filter>
<filter-name>
Hibernate Session Filter
</filter-name>
<filter-class>
org.unitime.timetable.filter.HibSessionFilter
</filter-class>
</filter>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter>
<filter-name>
Page Access Filter
</filter-name>
<filter-class>
org.unitime.timetable.filter.PageAccessFilter
</filter-class>
</filter>
<filter>
<filter-name>
Encoding Filter
</filter-name>
<filter-class>
org.unitime.timetable.filter.EncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter>
<filter-name>
Query Log Filter
</filter-name>
<filter-class>
org.unitime.timetable.filter.QueryLogFilter
</filter-class>
<init-param>
<param-name>exclude</param-name>
<param-value>menu.gwt: MenuService#getSolverInfo,sectioning.gwt: SectioningService#logIn</param-value>
</init-param>
</filter>
<filter>
<filter-name>
Message Log Filter
</filter-name>
<filter-class>
org.unitime.timetable.filter.MessageLogFilter
</filter-class>
</filter>
<filter>
<filter-name>
Locale Filter
</filter-name>
<filter-class>
org.unitime.timetable.filter.LocaleFilter
</filter-class>
<init-param>
<param-name>use-browser-settings</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter>
<filter-name>JavaScript Cache Filter</filter-name>
<filter-class>org.unitime.timetable.filter.JavaScriptCacheFilter</filter-class>
</filter>
<filter>
<filter-name>Busy Sessions</filter-name>
<filter-class>org.unitime.timetable.filter.BusySessions$Filter</filter-class>
</filter>
<filter>
<filter-name>Apache Struts 2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
<param-name>config</param-name>
<param-value>struts-default.xml,struts-plugin.xml,../struts.xml</param-value>
</init-param>
</filter>
<filter>
<filter-name>Do-Action Redirect</filter-name>
<filter-class>org.unitime.timetable.filter.DoToActionRedirectFilter</filter-class>
</filter>
<!-- Filter Mappings -->
<filter-mapping>
<filter-name>log4jServletFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
<dispatcher>ASYNC</dispatcher><!-- Servlet 3.0 w/ disabled auto-initialization only; not supported in 2.5 -->
</filter-mapping>
<filter-mapping>
<filter-name>Do-Action Redirect</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Encoding Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Hibernate Session Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Message Log Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Page Access Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Query Log Filter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Query Log Filter</filter-name>
<url-pattern>*.gwt</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Query Log Filter</filter-name>
<url-pattern>/calendar</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Query Log Filter</filter-name>
<url-pattern>/export</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Query Log Filter</filter-name>
<url-pattern>/api/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Locale Filter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Locale Filter</filter-name>
<url-pattern>*.gwt</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Locale Filter</filter-name>
<url-pattern>*.rpc</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Locale Filter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Locale Filter</filter-name>
<url-pattern>/export</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>JavaScript Cache Filter</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>JavaScript Cache Filter</filter-name>
<url-pattern>*.css</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Busy Sessions</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Apache Struts 2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<jsp-config>
<jsp-property-group>
<url-pattern>*.jspf</url-pattern>
</jsp-property-group>
</jsp-config>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<context-param>
<param-name>isLog4jAutoInitializationDisabled</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>log4jContextName</param-name>
<param-value>UniTime</param-value>
</context-param>
<context-param>
<param-name>log4jConfiguration</param-name>
<param-value>log4j2-UniTime.xml</param-value>
</context-param>
<listener>
<listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<listener>
<listener-class>org.unitime.timetable.filter.BusySessions$Listener</listener-class>
</listener>
<!-- CAS Authentication -->
<listener>
<listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
</listener>
<listener>
<listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class>
</listener>
<listener>
<listener-class>org.unitime.timetable.server.access.AccessControllBackend$Listener</listener-class>
</listener>
</web-app>