SuperX-Kernmodul
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

617 lines
22 KiB

<?xml version="1.0" encoding="UTF-8"?>
<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">
<display-name>SuperX</display-name>
<absolute-ordering />
<description>SuperX</description>
<context-param>
<param-name>superxStandalone</param-name>
<param-value>true</param-value>
</context-param>
<!-- Falls Passwordkontrolle für SuperX-Standalone via LDAP laufen sollen, benennen Sie superx_standalone_ldap.properties.sam superx_standalone_ldap.properties
und pflegen dort die Parameter, beim Serverstart erscheint in der superx_default.log ein Hinweis ...
-->
<context-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</context-param>
<context-param>
<param-name>db.user</param-name>
<param-value>sa</param-value>
</context-param>
<context-param>
<param-name>db.password</param-name>
<param-value />
</context-param>
<context-param>
<param-name>db.encryptpassword</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>db.tcpServer</param-name>
<param-value>-tcpAllowOthers</param-value>
</context-param>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<!--<context-param>
<param-name>contextInitializerClasses</param-name>
<param-value>de.superx.spring.HisInOneConfiguration</param-value>
</context-param> -->
<!-- MONDRIAN -->
<listener>
<listener-class>mondrian.web.taglib.Listener</listener-class>
</listener>
<!-- END MONDRIAN -->
<!-- Encoding fuer DBFORMS setzen -->
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>org.dbforms.util.external.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/servlet/control</url-pattern>
</filter-mapping>
<!--
Define servlets that are included in the example application
<servlet>
<servlet-name>log4j-init</servlet-name>
<servlet-class>de.superx.servlet.LogInit</servlet-class>
<init-param>
<param-name>log4j-init-file</param-name>
<param-value>WEB-INF/log4j.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
-->
<!--
=========== DbForms Configuration Servlet ===========
-->
<servlet>
<servlet-name>org.dbforms.ConfigServlet</servlet-name>
<!--
servlet-class>org.dbforms.servlets.ConfigServlet</servlet-class
-->
<servlet-class>de.superx.servlet.SxDbformsConfigServlet</servlet-class>
<!--
init-param>
<param-name>log4j.configuration</param-name>
<param-value>/WEB-INF/log4j.properties</param-value>
</init-param
-->
<init-param>
<param-name>digesterDebugLevel</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>localeKey</param-name>
<param-value>de_DE</param-value>
</init-param>
<init-param>
<param-name>resourceBundle</param-name>
<param-value>ApplicationResources</param-value>
</init-param>
<!--
<init-param>
<param-name>validation</param-name>
<param-value>/WEB-INF/validation.xml</param-value>
</init-param>
<init-param>
<param-name>validator-rules</param-name>
<param-value>/WEB-INF/validator-rules.xml</param-value>
</init-param>
-->
<load-on-startup>5</load-on-startup>
</servlet>
<!--
=========== DbForms Controller Servlet ==============
-->
<servlet>
<servlet-name>control</servlet-name>
<!-- <servlet-class>org.dbforms.servlets.Controller</servlet-class> -->
<servlet-class>de.superx.servlet.DbFormsController</servlet-class>
<init-param>
<param-name>maxUploadSize</param-name>
<param-value>800000</param-value>
</init-param>
</servlet>
<!--
=========== DbForms FileServlet =====================
-->
<servlet>
<servlet-name>file</servlet-name>
<servlet-class>org.dbforms.servlets.FileServlet</servlet-class>
<load-on-startup>6</load-on-startup>
</servlet>
<!-- SuperX-Servlets -->
<!--
Das SuperXManager-Servlet initialisiert den ConnectionPool und gecachte Object automatisch beim Tomcat-Start-
Ob die webapp als SuperX-Standlone oder in HisInOne integriert läuft muss ganz oben als context-param superxStandalone definiert werden -->
<servlet>
<servlet-name>SuperXManager</servlet-name>
<servlet-class>de.superx.servlet.SuperXManager</servlet-class>
<load-on-startup>50</load-on-startup>
<init-param>
<param-name>sharedSecret</param-name>
<param-value>hzcxbXCYwbtSRUAyuDKEVIYtSKtcADrW5</param-value>
</init-param>
<init-param>
<param-name>xml_return_link</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xsl_processor</param-name>
<param-value>net.sf.saxon.TransformerFactoryImpl</param-value>
<!--
<param-value>org.apache.xalan.xsltc.trax.TransformerFactoryImpl</param-value> deprecated macht Probleme bei UT8
-->
</init-param>
<init-param>
<!-- deaktiviert da manueller Datenupdate moeglich -->
<param-name>sichtenCaching</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<!-- statische Felder (Art=1) in Masken cachen? -->
<param-name>field1Cache</param-name>
<param-value>1=0</param-value>
<!--
(hier sql moegliche, z.B. bestimmte felder ausschließen
-->
</init-param>
<init-param>
<param-name>defaultMaskXsl</param-name>
<param-value>maske_html.xsl</param-value>
</init-param>
<init-param>
<param-name>maxRows</param-name>
<param-value>60000</param-value>
</init-param>
<!--
<init-param>
<param-name>defaultTableHtmlXsl</param-name>
<param-value>tabelle_html_his1.xsl</param-value>
</init-param>
<init-param>
<param-name>defaultTableXlsXsl</param-name>
<param-value>tabelle_xls_his1.xsl</param-value>
</init-param>
<init-param>
<param-name>defaultTablePdfXsl</param-name>
<param-value>tabelle_fo_pdf_his1.xsl</param-value>
</init-param>
-->
</servlet>
<servlet>
<servlet-name>SuperXUpload</servlet-name>
<servlet-class>de.superx.servlet.SuperXUpload</servlet-class>
<init-param>
<!-- MandantenID -->
<param-name>default</param-name>
<!-- Filter * vorlage.xls,*.xsl -->
<param-value>vorlage.xls,*.gif,*.png,*.htm,*.jrxml,*.jasper</param-value>
</init-param>
<!--
ggfs weitere Einträge für weitere Mandanten hinzufuegen
-->
</servlet>
<servlet>
<servlet-name>de.superx.servlet.Entwicklung</servlet-name>
<servlet-class>de.superx.servlet.Entwicklung</servlet-class>
</servlet>
<servlet>
<servlet-name>SuperXhtmlAnmeldung</servlet-name>
<servlet-class>de.superx.servlet.SuperXhtmlAnmeldung</servlet-class>
</servlet>
<!--
************************* SUPERXDBSERVLET ************************************
-->
<servlet>
<servlet-name>SuperXDBServlet</servlet-name>
<servlet-class>de.superx.servlet.SuperXDBServlet</servlet-class>
<init-param>
<!--
Dieser Parameter legt fest, wie viele Zeilen das Servlet maximal zurueckgeben soll.
Achtung: Diese Zahl muss groesser als die Zahl der Eintraege im Organigramm sein,
sonst funktioniert das AdminTool nicht.
-->
<param-name>maxRows</param-name>
<param-value>17000</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>SuperXmlAnmeldung</servlet-name>
<servlet-class>de.superx.servlet.SuperXmlAnmeldung</servlet-class>
<init-param>
<param-name>maxRows</param-name>
<param-value>17000</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>SuperXmlAbmeldung</servlet-name>
<servlet-class>de.superx.servlet.SuperXmlAbmeldung</servlet-class>
<init-param>
<param-name>alt_redirect_url</param-name>
<param-value>/qisserver</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>SuperXmlMaske</servlet-name>
<servlet-class>de.superx.servlet.SuperXmlMaske</servlet-class>
<init-param>
<param-name>maxRows</param-name>
<param-value>17000</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>SuperXmlTabelle</servlet-name>
<servlet-class>de.superx.servlet.SuperXmlTabelle</servlet-class>
<init-param>
<param-name>maxRows</param-name>
<param-value>17000</param-value>
</init-param>
<init-param>
<param-name>maxOffset</param-name>
<param-value>30</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>SuperXmlPwChanger</servlet-name>
<servlet-class>de.superx.servlet.SuperXmlPwChanger</servlet-class>
</servlet>
<servlet>
<servlet-name>de.superx.servlet.SuperXmlMenu</servlet-name>
<servlet-class>de.superx.servlet.SuperXmlMenu</servlet-class>
</servlet>
<servlet>
<servlet-name>SuperXmlMenu</servlet-name>
<servlet-class>de.superx.servlet.SuperXmlMenu</servlet-class>
</servlet>
<servlet>
<servlet-name>ImageServlet</servlet-name>
<servlet-class>net.sf.jasperreports.j2ee.servlets.ImageServlet</servlet-class>
</servlet>
<!-- MONRIAN -->
<servlet>
<servlet-name>MDXQueryServlet</servlet-name>
<servlet-class>mondrian.web.servlet.MdxQueryServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>MondrianXmlaServlet</servlet-name>
<servlet-class>mondrian.xmla.impl.DynamicDatasourceXmlaServlet</servlet-class>
<init-param>
<param-name>DataSourcesConfig</param-name>
<param-value>/WEB-INF/saiku/datasources.xml</param-value>
</init-param>
<!--
This is an example of how to add a callback to the XML/A servlet.
It must implement mondrian.xmla.XmlaRequestCallback.
<init-param>
<param-name>Callbacks</param-name>
<param-value>com.example.MyCallbackClass;com.example.SomeOtherCallback</param-value>
</init-param>
-->
</servlet>
<servlet-mapping>
<servlet-name>MDXQueryServlet</servlet-name>
<url-pattern>/mdxquery</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>MondrianXmlaServlet</servlet-name>
<url-pattern>/xmla</url-pattern>
</servlet-mapping>
<!-- END MONDRIAN -->
<servlet-mapping>
<servlet-name>ImageServlet</servlet-name>
<url-pattern>/servlet/image</url-pattern>
</servlet-mapping>
<!--
==== Controller Servlet and FileServlet Mappings========
-->
<servlet-mapping>
<servlet-name>control</servlet-name>
<url-pattern>/servlet/control</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>file</servlet-name>
<url-pattern>/servlet/file</url-pattern>
</servlet-mapping>
<!-- SuperX Mappings -->
<servlet-mapping>
<servlet-name>SuperXmlAnmeldung</servlet-name>
<url-pattern>/servlet/SuperXmlAnmeldung</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXmlAnmeldung</servlet-name>
<url-pattern>/servlet/de.superx.servlet.SuperXmlAnmeldung</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXDBServlet</servlet-name>
<url-pattern>/servlet/SuperXDBServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXmlAbmeldung</servlet-name>
<url-pattern>/servlet/SuperXmlAbmeldung</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXmlMaske</servlet-name>
<url-pattern>/servlet/SuperXmlMaske</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXmlTabelle</servlet-name>
<url-pattern>/servlet/SuperXmlTabelle</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXmlPwChanger</servlet-name>
<url-pattern>/servlet/de.superx.servlet.SuperXmlPwChanger</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXmlPwChanger</servlet-name>
<url-pattern>/servlet/SuperXmlPwChanger</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXManager</servlet-name>
<url-pattern>/servlet/SuperXManager</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXUpload</servlet-name>
<url-pattern>/servlet/SuperXUpload</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SuperXmlMenu</servlet-name>
<url-pattern>/servlet/SuperXmlMenu</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>de.superx.servlet.Entwicklung</servlet-name>
<url-pattern>/servlet/de.superx.servlet.Entwicklung</url-pattern>
</servlet-mapping>
<jsp-config>
<taglib>
<taglib-uri>/WEB-INF/dbforms.tld</taglib-uri>
<taglib-location>/WEB-INF/dbforms.tld</taglib-location>
</taglib>
</jsp-config>
<resource-ref>
<description>SuperX Datasource</description>
<res-ref-name>jdbc/superx</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<!--
<resource-env-ref>
<description>
SuperX Datasource
</description>
<resource-env-ref-name>
jdbc/superx
</resource-env-ref-name>
<resource-env-ref-type>
javax.sql.DataSource
</resource-env-ref-type>
</resource-env-ref>
-->
<!--
How long (in minutes) will a session be maintained in spite of inactivity?
A negative value means forever
-->
<session-config>
<session-timeout>180</session-timeout>
</session-config>
<!-- SAIKU -->
<!-- commented out, because context init now in Servlet dispatcher
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/saiku/applicationContext.xml</param-value>
</context-param>
-->
<filter>
<filter-name>MultipartFilter</filter-name>
<filter-class>org.springframework.web.multipart.support.MultipartFilter</filter-class>
<init-param>
<param-name>multipartResolverBeanName</param-name>
<param-value>filterMultipartResolver</param-value>
</init-param>
</filter>
<!-- HealthCheckURL -->
<!-- ################### -->
<filter>
<filter-name>healthCheckFilter</filter-name>
<filter-class>de.superx.servlet.filter.HealthCheckFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>healthCheckFilter</filter-name>
<url-pattern>/health</url-pattern>
</filter-mapping>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>MultipartFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>7</load-on-startup>
</servlet>
<servlet>
<servlet-name>jersey2</servlet-name>
<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<!--
<param-value>org.saiku.web;com.fasterxml.jackson.jaxrs.json;de.superx.rest</param-value>
-->
<param-value>org.saiku.web;com.his.jackson.jaxrs.json</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.feature.Trace</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>jaxrs.providers</param-name>
<param-value>org.saiku.web.rest.SerializableProvider</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.feature.DisableWADL</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>8</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey2</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>xmla</servlet-name>
<servlet-class>org.saiku.olap.util.SaikuXmlaServlet</servlet-class>
<init-param>
<param-name>OlapDriverUsePreConfiguredDiscoverDatasourcesResponse</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>OlapDriverDiscoverDatasources.dataSourceName</param-name>
<param-value>[XMLA olap4ld]</param-value>
</init-param>
<init-param>
<param-name>OlapDriverDiscoverDatasources.dataSourceInfo</param-name>
<param-value>[LdCatalogSchema]</param-value>
</init-param>
<init-param>
<param-name>OlapDriverDiscoverDatasources.url</param-name>
<param-value>@datasourceUrl@</param-value>
</init-param>
<init-param>
<param-name>OlapDriverDiscoverDatasources.providerType</param-name>
<param-value>TDP</param-value>
</init-param>
<init-param>
<param-name>OlapDriverDiscoverDatasources.authenticationMode</param-name>
<param-value>Unauthenticated</param-value>
</init-param>
<init-param>
<param-name>OlapDriverMaxNumConnectionsPerUser</param-name>
<param-value>15</param-value>
</init-param>
<init-param>
<param-name>OlapDriverClassName</param-name>
<param-value>org.olap4j.driver.olap4ld.Olap4ldDriver</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionString</param-name>
<param-value>jdbc:ld://olap4ld;Catalog=LdCatalog;JdbcDrivers=com.mysql.jdbc.Driver;Server=http://;Database=EMBEDDEDSESAME;Datastructuredefinitions=;Datasets=;</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.Prefix</param-name>
<param-value>@connectionPrefix@</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.FetchLevelProperties</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.FetchMemberProperties</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.FetchMembers</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.QueryTimeoutMs</param-name>
<param-value>@queryTimeout@</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.AuthenticationProvider</param-name>
<param-value>com.someotherclass.XmlaAuthenticationProvider</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.ConnectionTimeoutMs</param-name>
<param-value>@connectionTimeout@</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.TotalCellLimit</param-name>
<param-value>@totalCellLimit@</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.PerPivotCellLimit</param-name>
<param-value>@perPivotCellLimit@</param-value>
</init-param>
<init-param>
<param-name>OlapDriverConnectionProperty.Source</param-name>
<param-value>Excel</param-value>
</init-param>
<init-param>
<param-name>IdleConnectionsTimeoutMinutes</param-name>
<param-value>@idleConnectionCleanupTimeout@</param-value>
</init-param>
<init-param>
<param-name>EnableConnectionReuse</param-name>
<param-value>@enableConnectionsReuse@</param-value>
</init-param>
<init-param>
<param-name>EnableCubesMetadataPrefetch</param-name>
<param-value>@enableCubesMetadataPrefetch@</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>xmla</servlet-name>
<url-pattern>/xmla/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<!--
later this is supposed to become the DispatcherServlet for superx (see https://en.wikipedia.org/wiki/Front_controller)
Then url-pattern would become /** i.e. all request would go through this, for now its only for testing purposes
-->
<servlet-name>dispatcher</servlet-name>
<url-pattern>/ds/*</url-pattern>
</servlet-mapping>
<!-- SpezialServlets, die nur von einigen Hochschulen genutzt werden -->
<!-- Erweiterte SAP-Kontierungsrechte - 10/2021 Uni Hohenheim -->
<servlet>
<servlet-name>GxstageUserRights</servlet-name>
<servlet-class>de.superx.servlet.GxstageUserRights</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>GxstageUserRights</servlet-name>
<url-pattern>/servlet/GxstageUserRights</url-pattern>
</servlet-mapping>
<!-- Anbindung Dokumentenmanagementsystem 10/2021 Uni Freiburg/Uni Mannheim -->
<servlet>
<servlet-name>DocMan</servlet-name>
<servlet-class>de.superx.docmanagement.DocMan</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DocMan</servlet-name>
<url-pattern>/servlet/DocMan</url-pattern>
</servlet-mapping>
<error-page>
<error-code>403</error-code>
<location>/403.jsp</location>
</error-page>
</web-app>