| @@ -0,0 +1,261 @@ | ||
| // 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. | ||
|
|
||
| // ============================================================================ | ||
| // catalina.policy - Security Policy Permissions for Tomcat | ||
| // | ||
| // This file contains a default set of security policies to be enforced (by the | ||
| // JVM) when Catalina is executed with the "-security" option. In addition | ||
| // to the permissions granted here, the following additional permissions are | ||
| // granted to each web application: | ||
| // | ||
| // * Read access to the web application's document root directory | ||
| // * Read, write and delete access to the web application's working directory | ||
| // ============================================================================ | ||
|
|
||
|
|
||
| // ========== SYSTEM CODE PERMISSIONS ========================================= | ||
|
|
||
|
|
||
| // These permissions apply to javac | ||
| grant codeBase "file:${java.home}/lib/-" { | ||
| permission java.security.AllPermission; | ||
| }; | ||
|
|
||
| // These permissions apply to all shared system extensions | ||
| grant codeBase "file:${java.home}/jre/lib/ext/-" { | ||
| permission java.security.AllPermission; | ||
| }; | ||
|
|
||
| // These permissions apply to javac when ${java.home] points at $JAVA_HOME/jre | ||
| grant codeBase "file:${java.home}/../lib/-" { | ||
| permission java.security.AllPermission; | ||
| }; | ||
|
|
||
| // These permissions apply to all shared system extensions when | ||
| // ${java.home} points at $JAVA_HOME/jre | ||
| grant codeBase "file:${java.home}/lib/ext/-" { | ||
| permission java.security.AllPermission; | ||
| }; | ||
|
|
||
|
|
||
| // ========== CATALINA CODE PERMISSIONS ======================================= | ||
|
|
||
|
|
||
| // These permissions apply to the daemon code | ||
| grant codeBase "file:${catalina.home}/bin/commons-daemon.jar" { | ||
| permission java.security.AllPermission; | ||
| }; | ||
|
|
||
| // These permissions apply to the logging API | ||
| // Note: If tomcat-juli.jar is in ${catalina.base} and not in ${catalina.home}, | ||
| // update this section accordingly. | ||
| // grant codeBase "file:${catalina.base}/bin/tomcat-juli.jar" {..} | ||
| grant codeBase "file:${catalina.home}/bin/tomcat-juli.jar" { | ||
| permission java.io.FilePermission | ||
| "${java.home}${file.separator}lib${file.separator}logging.properties", "read"; | ||
|
|
||
| permission java.io.FilePermission | ||
| "${catalina.base}${file.separator}conf${file.separator}logging.properties", "read"; | ||
| permission java.io.FilePermission | ||
| "${catalina.base}${file.separator}logs", "read, write"; | ||
| permission java.io.FilePermission | ||
| "${catalina.base}${file.separator}logs${file.separator}*", "read, write"; | ||
|
|
||
| permission java.lang.RuntimePermission "shutdownHooks"; | ||
| permission java.lang.RuntimePermission "getClassLoader"; | ||
| permission java.lang.RuntimePermission "setContextClassLoader"; | ||
|
|
||
| permission java.lang.management.ManagementPermission "monitor"; | ||
|
|
||
| permission java.util.logging.LoggingPermission "control"; | ||
|
|
||
| permission java.util.PropertyPermission "java.util.logging.config.class", "read"; | ||
| permission java.util.PropertyPermission "java.util.logging.config.file", "read"; | ||
| permission java.util.PropertyPermission "org.apache.juli.AsyncLoggerPollInterval", "read"; | ||
| permission java.util.PropertyPermission "org.apache.juli.AsyncMaxRecordCount", "read"; | ||
| permission java.util.PropertyPermission "org.apache.juli.AsyncOverflowDropType", "read"; | ||
| permission java.util.PropertyPermission "org.apache.juli.ClassLoaderLogManager.debug", "read"; | ||
| permission java.util.PropertyPermission "catalina.base", "read"; | ||
|
|
||
| // Note: To enable per context logging configuration, permit read access to | ||
| // the appropriate file. Be sure that the logging configuration is | ||
| // secure before enabling such access. | ||
| // E.g. for the examples web application (uncomment and unwrap | ||
| // the following to be on a single line): | ||
| // permission java.io.FilePermission "${catalina.base}${file.separator} | ||
| // webapps${file.separator}examples${file.separator}WEB-INF | ||
| // ${file.separator}classes${file.separator}logging.properties", "read"; | ||
| }; | ||
|
|
||
| // These permissions apply to the server startup code | ||
| grant codeBase "file:${catalina.home}/bin/bootstrap.jar" { | ||
| permission java.security.AllPermission; | ||
| }; | ||
|
|
||
| // These permissions apply to the servlet API classes | ||
| // and those that are shared across all class loaders | ||
| // located in the "lib" directory | ||
| grant codeBase "file:${catalina.home}/lib/-" { | ||
| permission java.security.AllPermission; | ||
| }; | ||
|
|
||
|
|
||
| // If using a per instance lib directory, i.e. ${catalina.base}/lib, | ||
| // then the following permission will need to be uncommented | ||
| // grant codeBase "file:${catalina.base}/lib/-" { | ||
| // permission java.security.AllPermission; | ||
| // }; | ||
|
|
||
|
|
||
| // ========== WEB APPLICATION PERMISSIONS ===================================== | ||
|
|
||
|
|
||
| // These permissions are granted by default to all web applications | ||
| // In addition, a web application will be given a read FilePermission | ||
| // for all files and directories in its document root. | ||
| grant { | ||
| // Required for JNDI lookup of named JDBC DataSource's and | ||
| // javamail named MimePart DataSource used to send mail | ||
| permission java.util.PropertyPermission "java.home", "read"; | ||
| permission java.util.PropertyPermission "java.naming.*", "read"; | ||
| permission java.util.PropertyPermission "javax.sql.*", "read"; | ||
|
|
||
| // OS Specific properties to allow read access | ||
| permission java.util.PropertyPermission "os.name", "read"; | ||
| permission java.util.PropertyPermission "os.version", "read"; | ||
| permission java.util.PropertyPermission "os.arch", "read"; | ||
| permission java.util.PropertyPermission "file.separator", "read"; | ||
| permission java.util.PropertyPermission "path.separator", "read"; | ||
| permission java.util.PropertyPermission "line.separator", "read"; | ||
|
|
||
| // JVM properties to allow read access | ||
| permission java.util.PropertyPermission "java.version", "read"; | ||
| permission java.util.PropertyPermission "java.vendor", "read"; | ||
| permission java.util.PropertyPermission "java.vendor.url", "read"; | ||
| permission java.util.PropertyPermission "java.class.version", "read"; | ||
| permission java.util.PropertyPermission "java.specification.version", "read"; | ||
| permission java.util.PropertyPermission "java.specification.vendor", "read"; | ||
| permission java.util.PropertyPermission "java.specification.name", "read"; | ||
|
|
||
| permission java.util.PropertyPermission "java.vm.specification.version", "read"; | ||
| permission java.util.PropertyPermission "java.vm.specification.vendor", "read"; | ||
| permission java.util.PropertyPermission "java.vm.specification.name", "read"; | ||
| permission java.util.PropertyPermission "java.vm.version", "read"; | ||
| permission java.util.PropertyPermission "java.vm.vendor", "read"; | ||
| permission java.util.PropertyPermission "java.vm.name", "read"; | ||
|
|
||
| // Required for OpenJMX | ||
| permission java.lang.RuntimePermission "getAttribute"; | ||
|
|
||
| // Allow read of JAXP compliant XML parser debug | ||
| permission java.util.PropertyPermission "jaxp.debug", "read"; | ||
|
|
||
| // All JSPs need to be able to read this package | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.tomcat"; | ||
|
|
||
| // Precompiled JSPs need access to these packages. | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.el"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime"; | ||
| permission java.lang.RuntimePermission | ||
| "accessClassInPackage.org.apache.jasper.runtime.*"; | ||
|
|
||
| // Precompiled JSPs need access to these system properties. | ||
| permission java.util.PropertyPermission | ||
| "org.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER", "read"; | ||
| permission java.util.PropertyPermission | ||
| "org.apache.el.parser.COERCE_TO_ZERO", "read"; | ||
|
|
||
| // The cookie code needs these. | ||
| permission java.util.PropertyPermission | ||
| "org.apache.catalina.STRICT_SERVLET_COMPLIANCE", "read"; | ||
| permission java.util.PropertyPermission | ||
| "org.apache.tomcat.util.http.ServerCookie.STRICT_NAMING", "read"; | ||
| permission java.util.PropertyPermission | ||
| "org.apache.tomcat.util.http.ServerCookie.FWD_SLASH_IS_SEPARATOR", "read"; | ||
|
|
||
| // Applications using WebSocket need to be able to access these packages | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.tomcat.websocket"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.tomcat.websocket.server"; | ||
|
|
||
| // Applications need to access these packages to use the Servlet 4.0 Preview | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.servlet4preview"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.servlet4preview.http"; | ||
| }; | ||
|
|
||
|
|
||
| // The Manager application needs access to the following packages to support the | ||
| // session display functionality. These settings support the following | ||
| // configurations: | ||
| // - default CATALINA_HOME == CATALINA_BASE | ||
| // - CATALINA_HOME != CATALINA_BASE, per instance Manager in CATALINA_BASE | ||
| // - CATALINA_HOME != CATALINA_BASE, shared Manager in CATALINA_HOME | ||
| grant codeBase "file:${catalina.base}/webapps/manager/-" { | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.ha.session"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.manager"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.manager.util"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.util"; | ||
| }; | ||
| grant codeBase "file:${catalina.home}/webapps/manager/-" { | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.ha.session"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.manager"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.manager.util"; | ||
| permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.util"; | ||
| }; | ||
|
|
||
| // You can assign additional permissions to particular web applications by | ||
| // adding additional "grant" entries here, based on the code base for that | ||
| // application, /WEB-INF/classes/, or /WEB-INF/lib/ jar files. | ||
| // | ||
| // Different permissions can be granted to JSP pages, classes loaded from | ||
| // the /WEB-INF/classes/ directory, all jar files in the /WEB-INF/lib/ | ||
| // directory, or even to individual jar files in the /WEB-INF/lib/ directory. | ||
| // | ||
| // For instance, assume that the standard "examples" application | ||
| // included a JDBC driver that needed to establish a network connection to the | ||
| // corresponding database and used the scrape taglib to get the weather from | ||
| // the NOAA web server. You might create a "grant" entries like this: | ||
| // | ||
| // The permissions granted to the context root directory apply to JSP pages. | ||
| // grant codeBase "file:${catalina.base}/webapps/examples/-" { | ||
| // permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect"; | ||
| // permission java.net.SocketPermission "*.noaa.gov:80", "connect"; | ||
| // }; | ||
| // | ||
| // The permissions granted to the context WEB-INF/classes directory | ||
| // grant codeBase "file:${catalina.base}/webapps/examples/WEB-INF/classes/-" { | ||
| // }; | ||
| // | ||
| // The permission granted to your JDBC driver | ||
| // grant codeBase "jar:file:${catalina.base}/webapps/examples/WEB-INF/lib/driver.jar!/-" { | ||
| // permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect"; | ||
| // }; | ||
| // The permission granted to the scrape taglib | ||
| // grant codeBase "jar:file:${catalina.base}/webapps/examples/WEB-INF/lib/scrape.jar!/-" { | ||
| // permission java.net.SocketPermission "*.noaa.gov:80", "connect"; | ||
| // }; | ||
|
|
||
| // To grant permissions for web applications using packed WAR files, use the | ||
| // Tomcat specific WAR url scheme. | ||
| // | ||
| // The permissions granted to the entire web application | ||
| // grant codeBase "war:file:${catalina.base}/webapps/examples.war*/-" { | ||
| // }; | ||
| // | ||
| // The permissions granted to a specific JAR | ||
| // grant codeBase "war:file:${catalina.base}/webapps/examples.war*/WEB-INF/lib/foo.jar" { | ||
| // }; |
| @@ -0,0 +1,148 @@ | ||
| # 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. | ||
|
|
||
| # | ||
| # List of comma-separated packages that start with or equal this string | ||
| # will cause a security exception to be thrown when | ||
| # passed to checkPackageAccess unless the | ||
| # corresponding RuntimePermission ("accessClassInPackage."+package) has | ||
| # been granted. | ||
| package.access=sun.,org.apache.catalina.,org.apache.coyote.,org.apache.jasper.,org.apache.tomcat. | ||
| # | ||
| # List of comma-separated packages that start with or equal this string | ||
| # will cause a security exception to be thrown when | ||
| # passed to checkPackageDefinition unless the | ||
| # corresponding RuntimePermission ("defineClassInPackage."+package) has | ||
| # been granted. | ||
| # | ||
| # by default, no packages are restricted for definition, and none of | ||
| # the class loaders supplied with the JDK call checkPackageDefinition. | ||
| # | ||
| package.definition=sun.,java.,org.apache.catalina.,org.apache.coyote.,\ | ||
| org.apache.jasper.,org.apache.naming.,org.apache.tomcat. | ||
|
|
||
| # | ||
| # | ||
| # List of comma-separated paths defining the contents of the "common" | ||
| # classloader. Prefixes should be used to define what is the repository type. | ||
| # Path may be relative to the CATALINA_HOME or CATALINA_BASE path or absolute. | ||
| # If left as blank,the JVM system loader will be used as Catalina's "common" | ||
| # loader. | ||
| # Examples: | ||
| # "foo": Add this folder as a class repository | ||
| # "foo/*.jar": Add all the JARs of the specified folder as class | ||
| # repositories | ||
| # "foo/bar.jar": Add bar.jar as a class repository | ||
| # | ||
| # Note: Values are enclosed in double quotes ("...") in case either the | ||
| # ${catalina.base} path or the ${catalina.home} path contains a comma. | ||
| # Because double quotes are used for quoting, the double quote character | ||
| # may not appear in a path. | ||
| common.loader="${catalina.base}/lib","${catalina.base}/lib/*.jar","${catalina.home}/lib","${catalina.home}/lib/*.jar" | ||
|
|
||
| # | ||
| # List of comma-separated paths defining the contents of the "server" | ||
| # classloader. Prefixes should be used to define what is the repository type. | ||
| # Path may be relative to the CATALINA_HOME or CATALINA_BASE path or absolute. | ||
| # If left as blank, the "common" loader will be used as Catalina's "server" | ||
| # loader. | ||
| # Examples: | ||
| # "foo": Add this folder as a class repository | ||
| # "foo/*.jar": Add all the JARs of the specified folder as class | ||
| # repositories | ||
| # "foo/bar.jar": Add bar.jar as a class repository | ||
| # | ||
| # Note: Values may be enclosed in double quotes ("...") in case either the | ||
| # ${catalina.base} path or the ${catalina.home} path contains a comma. | ||
| # Because double quotes are used for quoting, the double quote character | ||
| # may not appear in a path. | ||
| server.loader= | ||
|
|
||
| # | ||
| # List of comma-separated paths defining the contents of the "shared" | ||
| # classloader. Prefixes should be used to define what is the repository type. | ||
| # Path may be relative to the CATALINA_BASE path or absolute. If left as blank, | ||
| # the "common" loader will be used as Catalina's "shared" loader. | ||
| # Examples: | ||
| # "foo": Add this folder as a class repository | ||
| # "foo/*.jar": Add all the JARs of the specified folder as class | ||
| # repositories | ||
| # "foo/bar.jar": Add bar.jar as a class repository | ||
| # Please note that for single jars, e.g. bar.jar, you need the URL form | ||
| # starting with file:. | ||
| # | ||
| # Note: Values may be enclosed in double quotes ("...") in case either the | ||
| # ${catalina.base} path or the ${catalina.home} path contains a comma. | ||
| # Because double quotes are used for quoting, the double quote character | ||
| # may not appear in a path. | ||
| shared.loader= | ||
|
|
||
| # Default list of JAR files that should not be scanned using the JarScanner | ||
| # functionality. This is typically used to scan JARs for configuration | ||
| # information. JARs that do not contain such information may be excluded from | ||
| # the scan to speed up the scanning process. This is the default list. JARs on | ||
| # this list are excluded from all scans. The list must be a comma separated list | ||
| # of JAR file names. | ||
| # The list of JARs to skip may be over-ridden at a Context level for individual | ||
| # scan types by configuring a JarScanner with a nested JarScanFilter. | ||
| # The JARs listed below include: | ||
| # - Tomcat Bootstrap JARs | ||
| # - Tomcat API JARs | ||
| # - Catalina JARs | ||
| # - Jasper JARs | ||
| # - Tomcat JARs | ||
| # - Common non-Tomcat JARs | ||
| # - Test JARs (JUnit, Cobertura and dependencies) | ||
| tomcat.util.scan.StandardJarScanFilter.jarsToSkip=\ | ||
| bootstrap.jar,commons-daemon.jar,tomcat-juli.jar,\ | ||
| annotations-api.jar,el-api.jar,jsp-api.jar,servlet-api.jar,websocket-api.jar,\ | ||
| jaspic-api.jar,\ | ||
| catalina.jar,catalina-ant.jar,catalina-ha.jar,catalina-storeconfig.jar,\ | ||
| catalina-tribes.jar,\ | ||
| jasper.jar,jasper-el.jar,ecj-*.jar,\ | ||
| tomcat-api.jar,tomcat-util.jar,tomcat-util-scan.jar,tomcat-coyote.jar,\ | ||
| tomcat-dbcp.jar,tomcat-jni.jar,tomcat-websocket.jar,\ | ||
| tomcat-i18n-en.jar,tomcat-i18n-es.jar,tomcat-i18n-fr.jar,tomcat-i18n-ja.jar,\ | ||
| tomcat-juli-adapters.jar,catalina-jmx-remote.jar,catalina-ws.jar,\ | ||
| tomcat-jdbc.jar,\ | ||
| tools.jar,\ | ||
| commons-beanutils*.jar,commons-codec*.jar,commons-collections*.jar,\ | ||
| commons-dbcp*.jar,commons-digester*.jar,commons-fileupload*.jar,\ | ||
| commons-httpclient*.jar,commons-io*.jar,commons-lang*.jar,commons-logging*.jar,\ | ||
| commons-math*.jar,commons-pool*.jar,\ | ||
| jstl.jar,taglibs-standard-spec-*.jar,\ | ||
| geronimo-spec-jaxrpc*.jar,wsdl4j*.jar,\ | ||
| ant.jar,ant-junit*.jar,aspectj*.jar,jmx.jar,h2*.jar,hibernate*.jar,httpclient*.jar,\ | ||
| jmx-tools.jar,jta*.jar,log4j*.jar,mail*.jar,slf4j*.jar,\ | ||
| xercesImpl.jar,xmlParserAPIs.jar,xml-apis.jar,\ | ||
| junit.jar,junit-*.jar,hamcrest-*.jar,easymock-*.jar,cglib-*.jar,\ | ||
| objenesis-*.jar,ant-launcher.jar,\ | ||
| cobertura-*.jar,asm-*.jar,dom4j-*.jar,icu4j-*.jar,jaxen-*.jar,jdom-*.jar,\ | ||
| jetty-*.jar,oro-*.jar,servlet-api-*.jar,tagsoup-*.jar,xmlParserAPIs-*.jar,\ | ||
| xom-*.jar | ||
|
|
||
| # Default list of JAR files that should be scanned that overrides the default | ||
| # jarsToSkip list above. This is typically used to include a specific JAR that | ||
| # has been excluded by a broad file name pattern in the jarsToSkip list. | ||
| # The list of JARs to scan may be over-ridden at a Context level for individual | ||
| # scan types by configuring a JarScanner with a nested JarScanFilter. | ||
| tomcat.util.scan.StandardJarScanFilter.jarsToScan=\ | ||
| log4j-web*.jar,log4j-taglib*.jar,log4javascript*.jar,slf4j-taglib*.jar | ||
|
|
||
| # String cache configuration. | ||
| tomcat.util.buf.StringCache.byte.enabled=true | ||
| #tomcat.util.buf.StringCache.char.enabled=true | ||
| #tomcat.util.buf.StringCache.trainThreshold=500000 | ||
| #tomcat.util.buf.StringCache.cacheSize=5000 |
| @@ -0,0 +1,30 @@ | ||
| <?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. | ||
| --> | ||
| <!-- The contents of this file will be loaded for each web application --> | ||
| <Context> | ||
|
|
||
| <!-- Default set of monitored resources. If one of these changes, the --> | ||
| <!-- web application will be reloaded. --> | ||
| <WatchedResource>WEB-INF/web.xml</WatchedResource> | ||
| <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource> | ||
|
|
||
| <!-- Uncomment this to disable session persistence across Tomcat restarts --> | ||
| <!-- | ||
| <Manager pathname="" /> | ||
| --> | ||
| </Context> |
| @@ -0,0 +1,23 @@ | ||
| <?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. | ||
| --> | ||
| <jaspic-providers xmlns="http://tomcat.apache.org/xml" | ||
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
| xsi:schemaLocation="http://tomcat.apache.org/xml jaspic-providers.xsd" | ||
| version="1.0"> | ||
| <!-- No JASPIC providers configured by default --> | ||
| </jaspic-providers> |
| @@ -0,0 +1,53 @@ | ||
| <?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. | ||
| --> | ||
| <xs:schema xmlns="http://www.w3.org/2001/XMLSchema" | ||
| targetNamespace="http://tomcat.apache.org/xml" | ||
| xmlns:jaspic="http://tomcat.apache.org/xml" | ||
| xmlns:xs="http://www.w3.org/2001/XMLSchema" | ||
| elementFormDefault="qualified" | ||
| attributeFormDefault="unqualified" | ||
| version="1.0"> | ||
| <xs:element name="jaspic-providers"> | ||
| <xs:complexType> | ||
| <xs:sequence> | ||
| <xs:element name="provider" minOccurs="0" maxOccurs="unbounded"> | ||
| <xs:complexType> | ||
| <xs:sequence> | ||
| <xs:element name="property" minOccurs="0" maxOccurs="unbounded"> | ||
| <xs:complexType> | ||
| <xs:attribute name="name" use="required" type="jaspic:propertyname" /> | ||
| <xs:attribute name="value" use="required" type="xs:string" /> | ||
| </xs:complexType> | ||
| </xs:element> | ||
| </xs:sequence> | ||
| <xs:attribute name="className" use="required" type="xs:string" /> | ||
| <xs:attribute name="layer" use="required" type="xs:string" /> | ||
| <xs:attribute name="appContext" use="required" type="xs:string" /> | ||
| <xs:attribute name="description" type="xs:string" /> | ||
| </xs:complexType> | ||
| </xs:element> | ||
| </xs:sequence> | ||
| <xs:attribute name="version" type="xs:string" /> | ||
| </xs:complexType> | ||
| </xs:element> | ||
| <xs:simpleType name="propertyname"> | ||
| <xs:restriction base="xs:string"> | ||
| <xs:minLength value="1"/> | ||
| </xs:restriction> | ||
| </xs:simpleType> | ||
| </xs:schema> |
| @@ -0,0 +1,70 @@ | ||
| # 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. | ||
|
|
||
| handlers = 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler | ||
|
|
||
| .handlers = 1catalina.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler | ||
|
|
||
| ############################################################ | ||
| # Handler specific properties. | ||
| # Describes specific configuration info for Handlers. | ||
| ############################################################ | ||
|
|
||
| 1catalina.org.apache.juli.AsyncFileHandler.level = FINE | ||
| 1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs | ||
| 1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina. | ||
|
|
||
| 2localhost.org.apache.juli.AsyncFileHandler.level = FINE | ||
| 2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs | ||
| 2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost. | ||
|
|
||
| 3manager.org.apache.juli.AsyncFileHandler.level = FINE | ||
| 3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs | ||
| 3manager.org.apache.juli.AsyncFileHandler.prefix = manager. | ||
|
|
||
| 4host-manager.org.apache.juli.AsyncFileHandler.level = FINE | ||
| 4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs | ||
| 4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager. | ||
|
|
||
| java.util.logging.ConsoleHandler.level = FINE | ||
| java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter | ||
|
|
||
|
|
||
| ############################################################ | ||
| # Facility specific properties. | ||
| # Provides extra control for each logger. | ||
| ############################################################ | ||
|
|
||
| org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO | ||
| org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.AsyncFileHandler | ||
|
|
||
| org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO | ||
| org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.AsyncFileHandler | ||
|
|
||
| org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO | ||
| org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.AsyncFileHandler | ||
|
|
||
| # For example, set the org.apache.catalina.util.LifecycleBase logger to log | ||
| # each component that extends LifecycleBase changing state: | ||
| #org.apache.catalina.util.LifecycleBase.level = FINE | ||
|
|
||
| # To see debug messages in TldLocationsCache, uncomment the following line: | ||
| #org.apache.jasper.compiler.TldLocationsCache.level = FINE | ||
|
|
||
| # To see debug messages for HTTP/2 handling, uncomment the following line: | ||
| #org.apache.coyote.http2.level = FINE | ||
|
|
||
| # To see debug messages for WebSocket handling, uncomment the following line: | ||
| #org.apache.tomcat.websocket.level = FINE |
| @@ -0,0 +1,162 @@ | ||
| <?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. | ||
| --> | ||
| <!-- Note: A "Server" is not itself a "Container", so you may not | ||
| define subcomponents such as "Valves" at this level. | ||
| Documentation at /docs/config/server.html | ||
| --> | ||
| <Server port="8005" shutdown="SHUTDOWN"> | ||
| <Listener className="org.apache.catalina.startup.VersionLoggerListener" /> | ||
| <!-- Security listener. Documentation at /docs/config/listeners.html | ||
| <Listener className="org.apache.catalina.security.SecurityListener" /> | ||
| --> | ||
| <!--APR library loader. Documentation at /docs/apr.html --> | ||
| <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> | ||
| <!-- Prevent memory leaks due to use of particular java/javax APIs--> | ||
| <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> | ||
| <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> | ||
| <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> | ||
|
|
||
| <!-- Global JNDI resources | ||
| Documentation at /docs/jndi-resources-howto.html | ||
| --> | ||
| <GlobalNamingResources> | ||
| <!-- Editable user database that can also be used by | ||
| UserDatabaseRealm to authenticate users | ||
| --> | ||
| <Resource name="UserDatabase" auth="Container" | ||
| type="org.apache.catalina.UserDatabase" | ||
| description="User database that can be updated and saved" | ||
| factory="org.apache.catalina.users.MemoryUserDatabaseFactory" | ||
| pathname="conf/tomcat-users.xml" /> | ||
| </GlobalNamingResources> | ||
|
|
||
| <!-- A "Service" is a collection of one or more "Connectors" that share | ||
| a single "Container" Note: A "Service" is not itself a "Container", | ||
| so you may not define subcomponents such as "Valves" at this level. | ||
| Documentation at /docs/config/service.html | ||
| --> | ||
| <Service name="Catalina"> | ||
|
|
||
| <!--The connectors can use a shared executor, you can define one or more named thread pools--> | ||
| <!-- | ||
| <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" | ||
| maxThreads="150" minSpareThreads="4"/> | ||
| --> | ||
|
|
||
|
|
||
| <!-- A "Connector" represents an endpoint by which requests are received | ||
| and responses are returned. Documentation at : | ||
| Java HTTP Connector: /docs/config/http.html | ||
| Java AJP Connector: /docs/config/ajp.html | ||
| APR (HTTP/AJP) Connector: /docs/apr.html | ||
| Define a non-SSL/TLS HTTP/1.1 Connector on port 8080 | ||
| --> | ||
| <Connector port="8080" protocol="HTTP/1.1" | ||
| connectionTimeout="20000" | ||
| redirectPort="8443" /> | ||
| <!-- A "Connector" using the shared thread pool--> | ||
| <!-- | ||
| <Connector executor="tomcatThreadPool" | ||
| port="8080" protocol="HTTP/1.1" | ||
| connectionTimeout="20000" | ||
| redirectPort="8443" /> | ||
| --> | ||
| <!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443 | ||
| This connector uses the NIO implementation with the JSSE engine. When | ||
| using the JSSE engine, the JSSE configuration attributes must be used. | ||
| --> | ||
| <!-- | ||
| <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" | ||
| maxThreads="150" SSLEnabled="true"> | ||
| <SSLHostConfig> | ||
| <Certificate certificateKeystoreFile="conf/localhost-rsa.jks" | ||
| type="RSA" /> | ||
| </SSLHostConfig> | ||
| </Connector> | ||
| --> | ||
| <!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443 with HTTP/2 | ||
| This connector uses the APR/native implementation. When using the | ||
| APR/native implementation or the OpenSSL engine with NIO or NIO2 then | ||
| the OpenSSL configuration attributes must be used. | ||
| --> | ||
| <!-- | ||
| <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol" | ||
| maxThreads="150" SSLEnabled="true" > | ||
| <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" /> | ||
| <SSLHostConfig> | ||
| <Certificate certificateKeyFile="conf/localhost-rsa-key.pem" | ||
| certificateFile="conf/localhost-rsa-cert.pem" | ||
| certificateChainFile="conf/localhost-rsa-chain.pem" | ||
| type="RSA" /> | ||
| </SSLHostConfig> | ||
| </Connector> | ||
| --> | ||
|
|
||
| <!-- Define an AJP 1.3 Connector on port 8009 --> | ||
| <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> | ||
|
|
||
|
|
||
| <!-- An Engine represents the entry point (within Catalina) that processes | ||
| every request. The Engine implementation for Tomcat stand alone | ||
| analyzes the HTTP headers included with the request, and passes them | ||
| on to the appropriate Host (virtual host). | ||
| Documentation at /docs/config/engine.html --> | ||
|
|
||
| <!-- You should set jvmRoute to support load-balancing via AJP ie : | ||
| <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1"> | ||
| --> | ||
| <Engine name="Catalina" defaultHost="localhost"> | ||
|
|
||
| <!--For clustering, please take a look at documentation at: | ||
| /docs/cluster-howto.html (simple how to) | ||
| /docs/config/cluster.html (reference documentation) --> | ||
| <!-- | ||
| <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> | ||
| --> | ||
|
|
||
| <!-- Use the LockOutRealm to prevent attempts to guess user passwords | ||
| via a brute-force attack --> | ||
| <Realm className="org.apache.catalina.realm.LockOutRealm"> | ||
| <!-- This Realm uses the UserDatabase configured in the global JNDI | ||
| resources under the key "UserDatabase". Any edits | ||
| that are performed against this UserDatabase are immediately | ||
| available for use by the Realm. --> | ||
| <Realm className="org.apache.catalina.realm.UserDatabaseRealm" | ||
| resourceName="UserDatabase"/> | ||
| </Realm> | ||
|
|
||
| <Host name="localhost" appBase="webapps" | ||
| unpackWARs="true" autoDeploy="true"> | ||
|
|
||
| <!-- SingleSignOn valve, share authentication between web applications | ||
| Documentation at: /docs/config/valve.html --> | ||
| <!-- | ||
| <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> | ||
| --> | ||
|
|
||
| <!-- Access log processes all example. | ||
| Documentation at: /docs/config/valve.html | ||
| Note: The pattern used is equivalent to using pattern="common" --> | ||
| <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" | ||
| prefix="localhost_access_log" suffix=".txt" | ||
| pattern="%h %l %u %t "%r" %s %b" /> | ||
|
|
||
| </Host> | ||
| </Engine> | ||
| </Service> | ||
| </Server> |
| @@ -0,0 +1,44 @@ | ||
| <?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. | ||
| --> | ||
| <tomcat-users xmlns="http://tomcat.apache.org/xml" | ||
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
| xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd" | ||
| version="1.0"> | ||
| <!-- | ||
| NOTE: By default, no user is included in the "manager-gui" role required | ||
| to operate the "/manager/html" web application. If you wish to use this app, | ||
| you must define such a user - the username and password are arbitrary. It is | ||
| strongly recommended that you do NOT use one of the users in the commented out | ||
| section below since they are intended for use with the examples web | ||
| application. | ||
| --> | ||
| <!-- | ||
| NOTE: The sample user and role entries below are intended for use with the | ||
| examples web application. They are wrapped in a comment and thus are ignored | ||
| when reading this file. If you wish to configure these users for use with the | ||
| examples web application, do not forget to remove the <!.. ..> that surrounds | ||
| them. You will also need to set the passwords to something appropriate. | ||
| --> | ||
| <!-- | ||
| <role rolename="tomcat"/> | ||
| <role rolename="role1"/> | ||
| <user username="tomcat" password="<must-be-changed>" roles="tomcat"/> | ||
| <user username="both" password="<must-be-changed>" roles="tomcat,role1"/> | ||
| <user username="role1" password="<must-be-changed>" roles="role1"/> | ||
| --> | ||
| </tomcat-users> |
| @@ -0,0 +1,59 @@ | ||
| <?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. | ||
| --> | ||
| <xs:schema xmlns="http://www.w3.org/2001/XMLSchema" | ||
| targetNamespace="http://tomcat.apache.org/xml" | ||
| xmlns:users="http://tomcat.apache.org/xml" | ||
| xmlns:xs="http://www.w3.org/2001/XMLSchema" | ||
| elementFormDefault="qualified" | ||
| attributeFormDefault="unqualified" | ||
| version="1.0"> | ||
| <xs:element name="tomcat-users"> | ||
| <xs:complexType> | ||
| <xs:sequence> | ||
| <xs:element name="role" minOccurs="0" maxOccurs="unbounded"> | ||
| <xs:complexType> | ||
| <xs:attribute name="rolename" use="required" type="users:entityname" /> | ||
| <xs:attribute name="description" type="xs:string" /> | ||
| </xs:complexType> | ||
| </xs:element> | ||
| <xs:element name="group" minOccurs="0" maxOccurs="unbounded"> | ||
| <xs:complexType> | ||
| <xs:attribute name="groupname" use="required" type="users:entityname" /> | ||
| <xs:attribute name="description" type="xs:string" /> | ||
| <xs:attribute name="roles" type="xs:string" /> | ||
| </xs:complexType> | ||
| </xs:element> | ||
| <xs:element name="user" minOccurs="0" maxOccurs="unbounded"> | ||
| <xs:complexType> | ||
| <xs:attribute name="username" use="required" type="users:entityname" /> | ||
| <xs:attribute name="fullname" type="xs:string" /> | ||
| <xs:attribute name="password" type="xs:string" /> | ||
| <xs:attribute name="roles" type="xs:string" /> | ||
| <xs:attribute name="groups" type="xs:string" /> | ||
| </xs:complexType> | ||
| </xs:element> | ||
| </xs:sequence> | ||
| <xs:attribute name="version" type="xs:string" /> | ||
| </xs:complexType> | ||
| </xs:element> | ||
| <xs:simpleType name="entityname"> | ||
| <xs:restriction base="xs:string"> | ||
| <xs:minLength value="1"/> | ||
| </xs:restriction> | ||
| </xs:simpleType> | ||
| </xs:schema> |
| @@ -0,0 +1,177 @@ | ||
| ================================================================================ | ||
| 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. | ||
| ================================================================================ | ||
|
|
||
|
|
||
| Apache Tomcat Version 8.5.8 | ||
| Release Notes | ||
|
|
||
|
|
||
| ========= | ||
| CONTENTS: | ||
| ========= | ||
|
|
||
| * Dependency Changes | ||
| * API Stability | ||
| * Bundled APIs | ||
| * Web application reloading and static fields in shared libraries | ||
| * Security manager URLs | ||
| * Symlinking static resources | ||
| * Viewing the Tomcat Change Log | ||
| * Cryptographic software notice | ||
| * When all else fails | ||
|
|
||
|
|
||
| =================== | ||
| Dependency Changes: | ||
| =================== | ||
| Tomcat 8.5 is designed to run on Java SE 7 and later. | ||
|
|
||
|
|
||
| ============== | ||
| API Stability: | ||
| ============== | ||
|
|
||
| The public interfaces for the following classes are fixed and will not be | ||
| changed at all during the remaining lifetime of the 8.x series: | ||
| - All classes in the javax namespace | ||
|
|
||
| The public interfaces for the following classes may be added to in order to | ||
| resolve bugs and/or add new features. No existing interface method will be | ||
| removed or changed although it may be deprecated. | ||
| - org.apache.catalina.* (excluding sub-packages) | ||
|
|
||
| Note: As Tomcat 8 matures, the above list will be added to. The list is not | ||
| considered complete at this time. | ||
|
|
||
| Note: A large number of deprecated methods, fields and configuration options | ||
| were removed in the transition from 8.0.x to 8.5.x. If any of those | ||
| removals triggers significant problems for the user community that the | ||
| deletion may be reverted in a later point release. | ||
|
|
||
| The remaining classes are considered part of the Tomcat internals and may change | ||
| without notice between point releases. | ||
|
|
||
|
|
||
| ============= | ||
| Bundled APIs: | ||
| ============= | ||
| A standard installation of Tomcat 8.5 makes all of the following APIs available | ||
| for use by web applications (by placing them in "lib"): | ||
| * annotations-api.jar (Annotations package) | ||
| * catalina.jar (Tomcat Catalina implementation) | ||
| * catalina-ant.jar (Tomcat Catalina Ant tasks) | ||
| * catalina-ha.jar (High availability package) | ||
| * catalina-storeconfig.jar (Generation of XML configuration from current state) | ||
| * catalina-tribes.jar (Group communication) | ||
| * ecj-4.5.1.jar (Eclipse JDT Java compiler) | ||
| * el-api.jar (EL 3.0 API) | ||
| * jasper.jar (Jasper 2 Compiler and Runtime) | ||
| * jasper-el.jar (Jasper 2 EL implementation) | ||
| * jsp-api.jar (JSP 2.3 API) | ||
| * servlet-api.jar (Servlet 3.1 API) | ||
| * tomcat-api.jar (Interfaces shared by Catalina and Jasper) | ||
| * tomcat-coyote.jar (Tomcat connectors and utility classes) | ||
| * tomcat-dbcp.jar (package renamed database connection pool based on Commons DBCP) | ||
| * tomcat-jdbc.jar (Tomcat's database connection pooling solution) | ||
| * tomcat-jni.jar (Interface to the native component of the APR/native connector) | ||
| * tomcat-util.jar (Various utilities) | ||
| * tomcat-websocket.jar (WebSocket 1.1 implementation) | ||
| * websocket-api.jar (WebSocket 1.1 API) | ||
|
|
||
| You can make additional APIs available to all of your web applications by | ||
| putting unpacked classes into a "classes" directory (not created by default), | ||
| or by placing them in JAR files in the "lib" directory. | ||
|
|
||
| To override the XML parser implementation or interfaces, use the appropriate | ||
| feature for your JVM. For Java <= 8 use the endorsed standards override | ||
| feature. For Java 9+ use the upgradeable modules feature. | ||
|
|
||
|
|
||
| ================================================================ | ||
| Web application reloading and static fields in shared libraries: | ||
| ================================================================ | ||
| Some shared libraries (many are part of the JDK) keep references to objects | ||
| instantiated by the web application. To avoid class loading related problems | ||
| (ClassCastExceptions, messages indicating that the classloader | ||
| is stopped, etc.), the shared libraries state should be reinitialized. | ||
|
|
||
| Something which might help is to avoid putting classes which would be | ||
| referenced by a shared static field in the web application classloader, | ||
| and putting them in the shared classloader instead (JARs should be put in the | ||
| "lib" folder, and classes should be put in the "classes" folder). | ||
|
|
||
|
|
||
| ====================== | ||
| Security manager URLs: | ||
| ====================== | ||
| In order to grant security permissions to JARs located inside the | ||
| web application repository, use URLs of of the following format | ||
| in your policy file: | ||
|
|
||
| file:${catalina.base}/webapps/examples/WEB-INF/lib/driver.jar | ||
|
|
||
|
|
||
| ============================ | ||
| Symlinking static resources: | ||
| ============================ | ||
| By default, Unix symlinks will not work when used in a web application to link | ||
| resources located outside the web application root directory. | ||
|
|
||
| This behavior is optional, and the "allowLinking" flag may be used to disable | ||
| the check. | ||
|
|
||
|
|
||
| ============================== | ||
| Viewing the Tomcat Change Log: | ||
| ============================== | ||
| The full change log is available from http://tomcat.apache.org and is also | ||
| included in the documentation web application. | ||
|
|
||
|
|
||
| ============================= | ||
| Cryptographic software notice | ||
| ============================= | ||
| This distribution includes cryptographic software. The country in | ||
| which you currently reside may have restrictions on the import, | ||
| possession, use, and/or re-export to another country, of | ||
| encryption software. BEFORE using any encryption software, please | ||
| check your country's laws, regulations and policies concerning the | ||
| import, possession, or use, and re-export of encryption software, to | ||
| see if this is permitted. See <http://www.wassenaar.org/> for more | ||
| information. | ||
|
|
||
| The U.S. Government Department of Commerce, Bureau of Industry and | ||
| Security (BIS), has classified this software as Export Commodity | ||
| Control Number (ECCN) 5D002.C.1, which includes information security | ||
| software using or performing cryptographic functions with asymmetric | ||
| algorithms. The form and manner of this Apache Software Foundation | ||
| distribution makes it eligible for export under the License Exception | ||
| ENC Technology Software Unrestricted (TSU) exception (see the BIS | ||
| Export Administration Regulations, Section 740.13) for both object | ||
| code and source code. | ||
|
|
||
| The following provides more details on the included cryptographic | ||
| software: | ||
| - Tomcat includes code designed to work with JSSE | ||
| - Tomcat includes code designed to work with OpenSSL | ||
|
|
||
|
|
||
| ==================== | ||
| When all else fails: | ||
| ==================== | ||
| See the FAQ | ||
| http://tomcat.apache.org/faq/ |
| @@ -0,0 +1,30 @@ | ||
| <?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://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" | ||
| metadata-complete="true"> | ||
|
|
||
| <display-name>Welcome to Tomcat</display-name> | ||
| <description> | ||
| Welcome to Tomcat | ||
| </description> | ||
|
|
||
| </web-app> |
| @@ -0,0 +1,93 @@ | ||
| <?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. | ||
| --> | ||
| <project name="ROOT" default="build-main" basedir="."> | ||
|
|
||
|
|
||
| <!-- ===================== Initialize Property Values =================== --> | ||
|
|
||
| <!-- See "build.properties.sample" in the top level directory for all --> | ||
| <!-- property values you must customize for successful building!!! --> | ||
| <property file="build.properties"/> | ||
| <property file="../build.properties"/> | ||
| <property file="../../build.properties"/> | ||
| <property file="${user.home}/build.properties"/> | ||
|
|
||
| <property name="build.compiler" value="modern"/> | ||
| <property name="webapps.build" value="../build"/> | ||
| <property name="webapps.dist" value="../dist"/> | ||
| <property name="webapp.name" value="ROOT"/> | ||
|
|
||
|
|
||
| <!-- =================== BUILD: Create Directories ====================== --> | ||
| <target name="build-prepare"> | ||
| <mkdir dir="${webapps.build}"/> | ||
| <mkdir dir="${webapps.build}/${webapp.name}"/> | ||
| </target> | ||
|
|
||
|
|
||
| <!-- ================ BUILD: Copy Static Files ========================== --> | ||
| <target name="build-static" depends="build-prepare"> | ||
| <copy todir="${webapps.build}/${webapp.name}"> | ||
| <fileset dir="."> | ||
| <exclude name="build.*"/> | ||
| </fileset> | ||
| </copy> | ||
| </target> | ||
|
|
||
|
|
||
| <!-- ================= BUILD: Compile Server Components ================= --> | ||
| <target name="build-main" depends="build-static"/> | ||
|
|
||
|
|
||
| <!-- ==================== BUILD: Rebuild Everything ===================== --> | ||
| <target name="all" depends="build-clean,build-main" | ||
| description="Clean and build ROOT webapp"/> | ||
|
|
||
|
|
||
| <!-- ======================= BUILD: Clean Directory ===================== --> | ||
| <target name="build-clean"> | ||
| <delete dir="${webapps.build}/${webapp.name}"/> | ||
| </target> | ||
|
|
||
|
|
||
| <!-- ======================= DIST: Create Directories =================== --> | ||
| <target name="dist-prepare"> | ||
| <mkdir dir="${webapps.dist}"/> | ||
| </target> | ||
|
|
||
|
|
||
| <!-- ======================= DIST: Create Distribution Files ============ --> | ||
| <target name="dist" depends="build-main,dist-prepare" | ||
| description="Create ROOT webapp binary distribution"> | ||
| <jar jarfile="${webapps.dist}/${webapp.name}.war" | ||
| basedir="${webapps.build}/${webapp.name}" includes="**"/> | ||
| </target> | ||
|
|
||
|
|
||
| <!-- ======================= DIST: Clean Directory ====================== --> | ||
| <target name="dist-clean"> | ||
| <delete dir="${webapps.dist}/${webapp.name}"/> | ||
| </target> | ||
|
|
||
|
|
||
| <!-- ====================== Convenient Synonyms ========================= --> | ||
| <target name="clean" depends="build-clean,dist-clean" | ||
| description="Clean build and dist directories"/> | ||
|
|
||
|
|
||
| </project> |
| @@ -0,0 +1,223 @@ | ||
| <%-- | ||
| 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. | ||
| --%> | ||
| <%@ page session="false" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %> | ||
| <% | ||
| java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy"); | ||
| request.setAttribute("year", sdf.format(new java.util.Date())); | ||
| request.setAttribute("tomcatUrl", "http://tomcat.apache.org/"); | ||
| request.setAttribute("tomcatDocUrl", "/docs/"); | ||
| request.setAttribute("tomcatExamplesUrl", "/examples/"); | ||
| %> | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <meta charset="UTF-8" /> | ||
| <title><%=request.getServletContext().getServerInfo() %></title> | ||
| <link href="favicon.ico" rel="icon" type="image/x-icon" /> | ||
| <link href="favicon.ico" rel="shortcut icon" type="image/x-icon" /> | ||
| <link href="tomcat.css" rel="stylesheet" type="text/css" /> | ||
| </head> | ||
|
|
||
| <body> | ||
| <div id="wrapper"> | ||
| <div id="navigation" class="curved container"> | ||
| <span id="nav-home"><a href="${tomcatUrl}">Home</a></span> | ||
| <span id="nav-hosts"><a href="${tomcatDocUrl}">Documentation</a></span> | ||
| <span id="nav-config"><a href="${tomcatDocUrl}config/">Configuration</a></span> | ||
| <span id="nav-examples"><a href="${tomcatExamplesUrl}">Examples</a></span> | ||
| <span id="nav-wiki"><a href="http://wiki.apache.org/tomcat/FrontPage">Wiki</a></span> | ||
| <span id="nav-lists"><a href="${tomcatUrl}lists.html">Mailing Lists</a></span> | ||
| <span id="nav-help"><a href="${tomcatUrl}findhelp.html">Find Help</a></span> | ||
| <br class="separator" /> | ||
| </div> | ||
| <div id="asf-box"> | ||
| <h1>${pageContext.servletContext.serverInfo}</h1> | ||
| </div> | ||
| <div id="upper" class="curved container"> | ||
| <div id="congrats" class="curved container"> | ||
| <h2>If you're seeing this, you've successfully installed Tomcat. Congratulations!</h2> | ||
| </div> | ||
| <div id="notice"> | ||
| <img src="tomcat.png" alt="[tomcat logo]" /> | ||
| <div id="tasks"> | ||
| <h3>Recommended Reading:</h3> | ||
| <h4><a href="${tomcatDocUrl}security-howto.html">Security Considerations HOW-TO</a></h4> | ||
| <h4><a href="${tomcatDocUrl}manager-howto.html">Manager Application HOW-TO</a></h4> | ||
| <h4><a href="${tomcatDocUrl}cluster-howto.html">Clustering/Session Replication HOW-TO</a></h4> | ||
| </div> | ||
| </div> | ||
| <div id="actions"> | ||
| <div class="button"> | ||
| <a class="container shadow" href="/manager/status"><span>Server Status</span></a> | ||
| </div> | ||
| <div class="button"> | ||
| <a class="container shadow" href="/manager/html"><span>Manager App</span></a> | ||
| </div> | ||
| <div class="button"> | ||
| <a class="container shadow" href="/host-manager/html"><span>Host Manager</span></a> | ||
| </div> | ||
| </div> | ||
| <!-- | ||
| <br class="separator" /> | ||
| --> | ||
| <br class="separator" /> | ||
| </div> | ||
| <div id="middle" class="curved container"> | ||
| <h3>Developer Quick Start</h3> | ||
| <div class="col25"> | ||
| <div class="container"> | ||
| <p><a href="${tomcatDocUrl}setup.html">Tomcat Setup</a></p> | ||
| <p><a href="${tomcatDocUrl}appdev/">First Web Application</a></p> | ||
| </div> | ||
| </div> | ||
| <div class="col25"> | ||
| <div class="container"> | ||
| <p><a href="${tomcatDocUrl}realm-howto.html">Realms & AAA</a></p> | ||
| <p><a href="${tomcatDocUrl}jndi-datasource-examples-howto.html">JDBC DataSources</a></p> | ||
| </div> | ||
| </div> | ||
| <div class="col25"> | ||
| <div class="container"> | ||
| <p><a href="${tomcatExamplesUrl}">Examples</a></p> | ||
| </div> | ||
| </div> | ||
| <div class="col25"> | ||
| <div class="container"> | ||
| <p><a href="http://wiki.apache.org/tomcat/Specifications">Servlet Specifications</a></p> | ||
| <p><a href="http://wiki.apache.org/tomcat/TomcatVersions">Tomcat Versions</a></p> | ||
| </div> | ||
| </div> | ||
| <br class="separator" /> | ||
| </div> | ||
| <div id="lower"> | ||
| <div id="low-manage" class=""> | ||
| <div class="curved container"> | ||
| <h3>Managing Tomcat</h3> | ||
| <p>For security, access to the <a href="/manager/html">manager webapp</a> is restricted. | ||
| Users are defined in:</p> | ||
| <pre>$CATALINA_HOME/conf/tomcat-users.xml</pre> | ||
| <p>In Tomcat 8.5 access to the manager application is split between | ||
| different users. <a href="${tomcatDocUrl}manager-howto.html">Read more...</a></p> | ||
| <br /> | ||
| <h4><a href="${tomcatDocUrl}RELEASE-NOTES.txt">Release Notes</a></h4> | ||
| <h4><a href="${tomcatDocUrl}changelog.html">Changelog</a></h4> | ||
| <h4><a href="${tomcatUrl}migration.html">Migration Guide</a></h4> | ||
| <h4><a href="${tomcatUrl}security.html">Security Notices</a></h4> | ||
| </div> | ||
| </div> | ||
| <div id="low-docs" class=""> | ||
| <div class="curved container"> | ||
| <h3>Documentation</h3> | ||
| <h4><a href="${tomcatDocUrl}">Tomcat 8.5 Documentation</a></h4> | ||
| <h4><a href="${tomcatDocUrl}config/">Tomcat 8.5 Configuration</a></h4> | ||
| <h4><a href="http://wiki.apache.org/tomcat/FrontPage">Tomcat Wiki</a></h4> | ||
| <p>Find additional important configuration information in:</p> | ||
| <pre>$CATALINA_HOME/RUNNING.txt</pre> | ||
| <p>Developers may be interested in:</p> | ||
| <ul> | ||
| <li><a href="http://tomcat.apache.org/bugreport.html">Tomcat 8.5 Bug Database</a></li> | ||
| <li><a href="${tomcatDocUrl}api/index.html">Tomcat 8.5 JavaDocs</a></li> | ||
| <li><a href="http://svn.apache.org/repos/asf/tomcat/tc8.5.x/">Tomcat 8.5 SVN Repository</a></li> | ||
| </ul> | ||
| </div> | ||
| </div> | ||
| <div id="low-help" class=""> | ||
| <div class="curved container"> | ||
| <h3>Getting Help</h3> | ||
| <h4><a href="${tomcatUrl}faq/">FAQ</a> and <a href="${tomcatUrl}lists.html">Mailing Lists</a></h4> | ||
| <p>The following mailing lists are available:</p> | ||
| <ul> | ||
| <li id="list-announce"><strong><a href="${tomcatUrl}lists.html#tomcat-announce">tomcat-announce</a><br /> | ||
| Important announcements, releases, security vulnerability notifications. (Low volume).</strong> | ||
| </li> | ||
| <li><a href="${tomcatUrl}lists.html#tomcat-users">tomcat-users</a><br /> | ||
| User support and discussion | ||
| </li> | ||
| <li><a href="${tomcatUrl}lists.html#taglibs-user">taglibs-user</a><br /> | ||
| User support and discussion for <a href="${tomcatUrl}taglibs/">Apache Taglibs</a> | ||
| </li> | ||
| <li><a href="${tomcatUrl}lists.html#tomcat-dev">tomcat-dev</a><br /> | ||
| Development mailing list, including commit messages | ||
| </li> | ||
| </ul> | ||
| </div> | ||
| </div> | ||
| <br class="separator" /> | ||
| </div> | ||
| <div id="footer" class="curved container"> | ||
| <div class="col20"> | ||
| <div class="container"> | ||
| <h4>Other Downloads</h4> | ||
| <ul> | ||
| <li><a href="${tomcatUrl}download-connectors.cgi">Tomcat Connectors</a></li> | ||
| <li><a href="${tomcatUrl}download-native.cgi">Tomcat Native</a></li> | ||
| <li><a href="${tomcatUrl}taglibs/">Taglibs</a></li> | ||
| <li><a href="${tomcatDocUrl}deployer-howto.html">Deployer</a></li> | ||
| </ul> | ||
| </div> | ||
| </div> | ||
| <div class="col20"> | ||
| <div class="container"> | ||
| <h4>Other Documentation</h4> | ||
| <ul> | ||
| <li><a href="${tomcatUrl}connectors-doc/">Tomcat Connectors</a></li> | ||
| <li><a href="${tomcatUrl}connectors-doc/">mod_jk Documentation</a></li> | ||
| <li><a href="${tomcatUrl}native-doc/">Tomcat Native</a></li> | ||
| <li><a href="${tomcatDocUrl}deployer-howto.html">Deployer</a></li> | ||
| </ul> | ||
| </div> | ||
| </div> | ||
| <div class="col20"> | ||
| <div class="container"> | ||
| <h4>Get Involved</h4> | ||
| <ul> | ||
| <li><a href="${tomcatUrl}getinvolved.html">Overview</a></li> | ||
| <li><a href="${tomcatUrl}svn.html">SVN Repositories</a></li> | ||
| <li><a href="${tomcatUrl}lists.html">Mailing Lists</a></li> | ||
| <li><a href="http://wiki.apache.org/tomcat/FrontPage">Wiki</a></li> | ||
| </ul> | ||
| </div> | ||
| </div> | ||
| <div class="col20"> | ||
| <div class="container"> | ||
| <h4>Miscellaneous</h4> | ||
| <ul> | ||
| <li><a href="${tomcatUrl}contact.html">Contact</a></li> | ||
| <li><a href="${tomcatUrl}legal.html">Legal</a></li> | ||
| <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li> | ||
| <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li> | ||
| </ul> | ||
| </div> | ||
| </div> | ||
| <div class="col20"> | ||
| <div class="container"> | ||
| <h4>Apache Software Foundation</h4> | ||
| <ul> | ||
| <li><a href="${tomcatUrl}whoweare.html">Who We Are</a></li> | ||
| <li><a href="${tomcatUrl}heritage.html">Heritage</a></li> | ||
| <li><a href="http://www.apache.org">Apache Home</a></li> | ||
| <li><a href="${tomcatUrl}resources.html">Resources</a></li> | ||
| </ul> | ||
| </div> | ||
| </div> | ||
| <br class="separator" /> | ||
| </div> | ||
| <p class="copyright">Copyright ©1999-${year} Apache Software Foundation. All Rights Reserved</p> | ||
| </div> | ||
| </body> | ||
|
|
||
| </html> |
| @@ -0,0 +1,351 @@ | ||
| /* | ||
| 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. | ||
| */ | ||
| body { | ||
| margin: 10px 20px; | ||
| text-align: center; | ||
| font-family: Arial, sans-serif; | ||
| } | ||
|
|
||
| h1, h2, h3, h4, h5, h6, p, ul, ol { | ||
| margin: 0 0 0.5em; | ||
| } | ||
| h1 { | ||
| font-size: 18pt; | ||
| margin: 0.5em 0 0; | ||
| } | ||
| h2 { | ||
| font-size: 16pt; | ||
| } | ||
| h3 { | ||
| font-size: 13pt; | ||
| } | ||
| h4 { | ||
| font-size: 12pt; | ||
| } | ||
| h5 { | ||
| font-size: 11pt; | ||
| } | ||
| p { | ||
| font-size: 11pt | ||
| } | ||
|
|
||
| ul { | ||
| margin: 0; | ||
| padding: 0 0 0 0.25em; | ||
| text-indent: 0; | ||
| list-style: none; | ||
| } | ||
| li { | ||
| margin: 0; | ||
| padding: 0 0 0.25em; | ||
| text-indent: 0; | ||
| font-size: 80%; | ||
| } | ||
|
|
||
| pre { | ||
| text-indent: 0.25em; | ||
| width: 90%; | ||
| font-size: 90%; | ||
| } | ||
|
|
||
| br.separator { | ||
| margin: 0; | ||
| padding: 0; | ||
| clear: both; | ||
| } | ||
|
|
||
| a img { | ||
| border: 0 none; | ||
| } | ||
|
|
||
| .container { | ||
| padding: 10px; | ||
| margin: 0 0 10px; | ||
| } | ||
|
|
||
| .col20 { | ||
| float: left; | ||
| width: 20%; | ||
| } | ||
|
|
||
| .col25 { | ||
| float: left; | ||
| width: 25%; | ||
| } | ||
|
|
||
| #wrapper { | ||
| display: block; | ||
| margin: 0 auto; | ||
| text-align: left; | ||
| min-width: 720px; | ||
| max-width: 1000px; | ||
| } | ||
| .curved { | ||
| border-radius: 10px; | ||
| -moz-border-radius: 10px; | ||
| -webkit-border-radius: 10px; | ||
| -khtml-border-radius: 10px; | ||
| } | ||
|
|
||
| #navigation { | ||
| background: #eee url(bg-nav.png) repeat-x top left; | ||
| margin: 0 0 10px; | ||
| padding: 0; | ||
| } | ||
| #navigation span { | ||
| float: left; | ||
| } | ||
| #navigation span a { | ||
| display: block; | ||
| padding: 10px; | ||
| font-weight: bold; | ||
| text-shadow: 1px 1px 1px #fff; | ||
| } | ||
| #navigation span a:link, | ||
| #navigation span a:visited, | ||
| #navigation span a:hover, | ||
| #navigation span a:active { | ||
| color: #666; | ||
| text-decoration: none; | ||
| } | ||
| #navigation span#nav-help { | ||
| float: right; | ||
| margin-right: 0; | ||
| } | ||
|
|
||
| #asf-box { | ||
| height: 40px; | ||
| background: #fff url(asf-logo.png) no-repeat top right;} | ||
| #asf-box h1 { | ||
| padding: 0; | ||
| margin: 0; | ||
| } | ||
|
|
||
| #upper { | ||
| background: #fff url(bg-upper.png) repeat-x top left; | ||
| } | ||
|
|
||
| #congrats { | ||
| text-align: center; | ||
| padding: 10px; | ||
| margin: 0 40px 20px; | ||
| background-color: #9c9; | ||
| } | ||
| #congrats h2 { | ||
| font-size: 14pt; | ||
| padding: 0; | ||
| margin: 0; | ||
| color: #fff; | ||
| } | ||
|
|
||
| #notice { | ||
| float: left; | ||
| width: 560px; | ||
| color: #696; | ||
| } | ||
| #notice a:link, | ||
| #notice a:visited, | ||
| #notice a:hover, | ||
| #notice a:active { | ||
| color: #090; | ||
| text-decoration: none; | ||
| } | ||
| #notice img, | ||
| #notice #tasks { | ||
| float: left; | ||
| } | ||
| #tasks a:link, | ||
| #tasks a:visited, | ||
| #tasks a:hover, | ||
| #tasks a:active { | ||
| text-decoration: underline; | ||
| } | ||
| #notice img { | ||
| margin-right: 20px; | ||
| } | ||
|
|
||
| #actions { | ||
| float: right; | ||
| width: 140px; | ||
| } | ||
|
|
||
| #actions .button { | ||
| display: block; | ||
| padding: 0; | ||
| height: 36px; | ||
| background: url(bg-button.png) no-repeat top left; | ||
| } | ||
|
|
||
| #actions .button a { | ||
| display: block; | ||
| padding: 0; | ||
| } | ||
|
|
||
| #actions .button a:link, | ||
| #actions .button a:visited, | ||
| #actions .button a:hover, | ||
| #actions .button a:active { | ||
| color: #696; | ||
| text-decoration: none; | ||
| } | ||
|
|
||
| #actions .button a span { | ||
| display: block; | ||
| padding: 6px 10px; | ||
| color: #666; | ||
| text-shadow: 1px 1px 1px #fff; | ||
| font-size: 10pt; | ||
| font-weight: bold; | ||
| } | ||
|
|
||
| #middle { | ||
| background: #eef url(bg-middle.png) repeat-x top left; | ||
| margin: 20px 0; | ||
| padding: 1px 10px; | ||
| } | ||
| #middle h3 { | ||
| margin: 0 0 10px; | ||
| color: #033; | ||
| } | ||
| #middle p { | ||
| font-size: 10pt; | ||
| } | ||
| #middle a:link, | ||
| #middle a:visited, | ||
| #middle a:hover, | ||
| #middle a:active { | ||
| color: #366; | ||
| font-weight: bold; | ||
| } | ||
| #middle .col25 .container { | ||
| padding: 0 0 1px; | ||
| } | ||
|
|
||
| #developers { | ||
| float: left; | ||
| width: 40%; | ||
| } | ||
| #security { | ||
| float: right; | ||
| width: 50%; | ||
| } | ||
|
|
||
| #lower { | ||
| padding: 0; | ||
| } | ||
|
|
||
| #lower a:link, | ||
| #lower a:visited, | ||
| #lower a:hover, | ||
| #lower a:active { | ||
| color: #600; | ||
| } | ||
|
|
||
| #lower strong a:link, | ||
| #lower strong a:visited, | ||
| #lower strong a:hover, | ||
| #lower strong a:active { | ||
| color: #c00; | ||
| } | ||
|
|
||
| #lower h3 { | ||
| color: #963; | ||
| font-size: 14pt; | ||
| } | ||
| #lower h4 { | ||
| font-size: 12pt; | ||
| } | ||
| #lower ul { | ||
| padding: 0; | ||
| margin: 0.5em 0; | ||
| } | ||
| #lower p, | ||
| #lower li { | ||
| font-size: 9pt; | ||
| color: #753; | ||
| margin: 0 0 0.1em; | ||
| } | ||
| #lower li { | ||
| padding: 3px 5px; | ||
| } | ||
| #lower li strong { | ||
| color: #a53; | ||
| } | ||
| #lower li#list-announce { | ||
| border: 1px solid #f90; | ||
| background-color: #ffe8c8; | ||
| } | ||
| #lower p { | ||
| font-size: 10.5pt; | ||
| } | ||
|
|
||
| #low-manage, | ||
| #low-docs, | ||
| #low-help { | ||
| float: left; | ||
| width: 32%; | ||
| } | ||
| #low-docs { | ||
| margin: 0 0 0 2.2%; | ||
| } | ||
| #low-help { | ||
| float: right; | ||
| } | ||
|
|
||
| #low-manage div, | ||
| #low-docs div, | ||
| #low-help div { | ||
| min-height: 280px; | ||
| border: 3px solid #ffdc75; | ||
| background-color: #fff1c8; | ||
| padding: 10px; | ||
| } | ||
|
|
||
| #footer { | ||
| padding: 0; | ||
| margin: 20px 0; | ||
| color: #999; | ||
| background-color: #eee; | ||
| } | ||
| #footer h4 { | ||
| margin: 0 0 10px; | ||
| font-size: 10pt; | ||
| } | ||
| #footer p { | ||
| margin: 0 0 10px; | ||
| font-size: 10pt; | ||
| } | ||
| #footer ul { | ||
| margin: 6px 0 1px; | ||
| padding: 0; | ||
| } | ||
| #footer li { | ||
| margin: 0; | ||
| font-size: 9pt; | ||
| } | ||
|
|
||
| #footer a:link, | ||
| #footer a:visited, | ||
| #footer a:hover, | ||
| #footer a:active { | ||
| color: #666; | ||
| } | ||
|
|
||
| .copyright { | ||
| font-size: 10pt; | ||
| color: #666; | ||
| } |
| @@ -0,0 +1,177 @@ | ||
| ================================================================================ | ||
| 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. | ||
| ================================================================================ | ||
|
|
||
|
|
||
| Apache Tomcat Version 8.5.8 | ||
| Release Notes | ||
|
|
||
|
|
||
| ========= | ||
| CONTENTS: | ||
| ========= | ||
|
|
||
| * Dependency Changes | ||
| * API Stability | ||
| * Bundled APIs | ||
| * Web application reloading and static fields in shared libraries | ||
| * Security manager URLs | ||
| * Symlinking static resources | ||
| * Viewing the Tomcat Change Log | ||
| * Cryptographic software notice | ||
| * When all else fails | ||
|
|
||
|
|
||
| =================== | ||
| Dependency Changes: | ||
| =================== | ||
| Tomcat 8.5 is designed to run on Java SE 7 and later. | ||
|
|
||
|
|
||
| ============== | ||
| API Stability: | ||
| ============== | ||
|
|
||
| The public interfaces for the following classes are fixed and will not be | ||
| changed at all during the remaining lifetime of the 8.x series: | ||
| - All classes in the javax namespace | ||
|
|
||
| The public interfaces for the following classes may be added to in order to | ||
| resolve bugs and/or add new features. No existing interface method will be | ||
| removed or changed although it may be deprecated. | ||
| - org.apache.catalina.* (excluding sub-packages) | ||
|
|
||
| Note: As Tomcat 8 matures, the above list will be added to. The list is not | ||
| considered complete at this time. | ||
|
|
||
| Note: A large number of deprecated methods, fields and configuration options | ||
| were removed in the transition from 8.0.x to 8.5.x. If any of those | ||
| removals triggers significant problems for the user community that the | ||
| deletion may be reverted in a later point release. | ||
|
|
||
| The remaining classes are considered part of the Tomcat internals and may change | ||
| without notice between point releases. | ||
|
|
||
|
|
||
| ============= | ||
| Bundled APIs: | ||
| ============= | ||
| A standard installation of Tomcat 8.5 makes all of the following APIs available | ||
| for use by web applications (by placing them in "lib"): | ||
| * annotations-api.jar (Annotations package) | ||
| * catalina.jar (Tomcat Catalina implementation) | ||
| * catalina-ant.jar (Tomcat Catalina Ant tasks) | ||
| * catalina-ha.jar (High availability package) | ||
| * catalina-storeconfig.jar (Generation of XML configuration from current state) | ||
| * catalina-tribes.jar (Group communication) | ||
| * ecj-4.5.1.jar (Eclipse JDT Java compiler) | ||
| * el-api.jar (EL 3.0 API) | ||
| * jasper.jar (Jasper 2 Compiler and Runtime) | ||
| * jasper-el.jar (Jasper 2 EL implementation) | ||
| * jsp-api.jar (JSP 2.3 API) | ||
| * servlet-api.jar (Servlet 3.1 API) | ||
| * tomcat-api.jar (Interfaces shared by Catalina and Jasper) | ||
| * tomcat-coyote.jar (Tomcat connectors and utility classes) | ||
| * tomcat-dbcp.jar (package renamed database connection pool based on Commons DBCP) | ||
| * tomcat-jdbc.jar (Tomcat's database connection pooling solution) | ||
| * tomcat-jni.jar (Interface to the native component of the APR/native connector) | ||
| * tomcat-util.jar (Various utilities) | ||
| * tomcat-websocket.jar (WebSocket 1.1 implementation) | ||
| * websocket-api.jar (WebSocket 1.1 API) | ||
|
|
||
| You can make additional APIs available to all of your web applications by | ||
| putting unpacked classes into a "classes" directory (not created by default), | ||
| or by placing them in JAR files in the "lib" directory. | ||
|
|
||
| To override the XML parser implementation or interfaces, use the appropriate | ||
| feature for your JVM. For Java <= 8 use the endorsed standards override | ||
| feature. For Java 9+ use the upgradeable modules feature. | ||
|
|
||
|
|
||
| ================================================================ | ||
| Web application reloading and static fields in shared libraries: | ||
| ================================================================ | ||
| Some shared libraries (many are part of the JDK) keep references to objects | ||
| instantiated by the web application. To avoid class loading related problems | ||
| (ClassCastExceptions, messages indicating that the classloader | ||
| is stopped, etc.), the shared libraries state should be reinitialized. | ||
|
|
||
| Something which might help is to avoid putting classes which would be | ||
| referenced by a shared static field in the web application classloader, | ||
| and putting them in the shared classloader instead (JARs should be put in the | ||
| "lib" folder, and classes should be put in the "classes" folder). | ||
|
|
||
|
|
||
| ====================== | ||
| Security manager URLs: | ||
| ====================== | ||
| In order to grant security permissions to JARs located inside the | ||
| web application repository, use URLs of of the following format | ||
| in your policy file: | ||
|
|
||
| file:${catalina.base}/webapps/examples/WEB-INF/lib/driver.jar | ||
|
|
||
|
|
||
| ============================ | ||
| Symlinking static resources: | ||
| ============================ | ||
| By default, Unix symlinks will not work when used in a web application to link | ||
| resources located outside the web application root directory. | ||
|
|
||
| This behavior is optional, and the "allowLinking" flag may be used to disable | ||
| the check. | ||
|
|
||
|
|
||
| ============================== | ||
| Viewing the Tomcat Change Log: | ||
| ============================== | ||
| The full change log is available from http://tomcat.apache.org and is also | ||
| included in the documentation web application. | ||
|
|
||
|
|
||
| ============================= | ||
| Cryptographic software notice | ||
| ============================= | ||
| This distribution includes cryptographic software. The country in | ||
| which you currently reside may have restrictions on the import, | ||
| possession, use, and/or re-export to another country, of | ||
| encryption software. BEFORE using any encryption software, please | ||
| check your country's laws, regulations and policies concerning the | ||
| import, possession, or use, and re-export of encryption software, to | ||
| see if this is permitted. See <http://www.wassenaar.org/> for more | ||
| information. | ||
|
|
||
| The U.S. Government Department of Commerce, Bureau of Industry and | ||
| Security (BIS), has classified this software as Export Commodity | ||
| Control Number (ECCN) 5D002.C.1, which includes information security | ||
| software using or performing cryptographic functions with asymmetric | ||
| algorithms. The form and manner of this Apache Software Foundation | ||
| distribution makes it eligible for export under the License Exception | ||
| ENC Technology Software Unrestricted (TSU) exception (see the BIS | ||
| Export Administration Regulations, Section 740.13) for both object | ||
| code and source code. | ||
|
|
||
| The following provides more details on the included cryptographic | ||
| software: | ||
| - Tomcat includes code designed to work with JSSE | ||
| - Tomcat includes code designed to work with OpenSSL | ||
|
|
||
|
|
||
| ==================== | ||
| When all else fails: | ||
| ==================== | ||
| See the FAQ | ||
| http://tomcat.apache.org/faq/ |
| @@ -0,0 +1,29 @@ | ||
| <?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://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" | ||
| metadata-complete="true"> | ||
|
|
||
| <display-name>Tomcat Documentation</display-name> | ||
| <description> | ||
| Tomcat Documentation. | ||
| </description> | ||
| </web-app> |
| @@ -0,0 +1,97 @@ | ||
| <!DOCTYPE html SYSTEM "about:legacy-compat"> | ||
| <html lang="en"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><link href="./images/docs-stylesheet.css" rel="stylesheet" type="text/css"><title>Apache Tomcat 8 (8.5.8) - Advanced IO and Tomcat</title><meta name="author" content="Remy Maucherat"><script type="application/javascript" data-comments-identifier="tomcat-8.5-doc/aio"> | ||
| "use strict"; // Enable strict mode | ||
|
|
||
| (function() { | ||
| var thisScript = document.currentScript; | ||
| if (!thisScript) { // Workaround for IE <= 11 | ||
| var scripts = document.getElementsByTagName("script"); | ||
| thisScript = scripts[scripts.length - 1]; | ||
| } | ||
| document.addEventListener("DOMContentLoaded", (function() { | ||
| var commentsDiv = document.getElementById("comments_thread"); | ||
| var commentsShortname = "tomcat"; | ||
| var commentsIdentifier = "http://tomcat.apache.org/" + | ||
| thisScript.getAttribute("data-comments-identifier") + ".html"; | ||
|
|
||
| (function(w, d) { | ||
| if (w.location.hostname.toLowerCase() == "tomcat.apache.org") { | ||
| var s = d.createElement("script"); | ||
| s.type = "application/javascript"; | ||
| s.async = true; | ||
| s.src = "https://comments.apache.org/show_comments.lua?site=" + | ||
| encodeURIComponent(commentsShortname) + | ||
| "&page=" + encodeURIComponent(commentsIdentifier); | ||
| d.head.appendChild(s); | ||
| } else { | ||
| commentsDiv.appendChild(d.createTextNode("Comments are disabled for this page at the moment.")); | ||
| } | ||
| })(window, document); | ||
| }), false); | ||
| })(); | ||
| </script></head><body><div id="wrapper"><header><div id="header"><div><div><div class="logo noPrint"><a href="http://tomcat.apache.org/"><img alt="Tomcat Home" src="./images/tomcat.png"></a></div><div style="height: 1px;"></div><div class="asfLogo noPrint"><a href="http://www.apache.org/" target="_blank"><img src="./images/asf-feather.png" alt="The Apache Software Foundation" style="width: 266px; height: 83px;"></a></div><h1>Apache Tomcat 8</h1><div class="versionInfo"> | ||
| Version 8.5.8, | ||
| <time datetime="2016-11-03">Nov 3 2016</time></div><div style="height: 1px;"></div><div style="clear: left;"></div></div></div></div></header><div id="middle"><div><div id="mainLeft" class="noprint"><div><nav><div><h2>Links</h2><ul><li><a href="index.html">Docs Home</a></li><li><a href="http://wiki.apache.org/tomcat/FAQ">FAQ</a></li><li><a href="#comments_section">User Comments</a></li></ul></div><div><h2>User Guide</h2><ul><li><a href="introduction.html">1) Introduction</a></li><li><a href="setup.html">2) Setup</a></li><li><a href="appdev/index.html">3) First webapp</a></li><li><a href="deployer-howto.html">4) Deployer</a></li><li><a href="manager-howto.html">5) Manager</a></li><li><a href="realm-howto.html">6) Realms and AAA</a></li><li><a href="security-manager-howto.html">7) Security Manager</a></li><li><a href="jndi-resources-howto.html">8) JNDI Resources</a></li><li><a href="jndi-datasource-examples-howto.html">9) JDBC DataSources</a></li><li><a href="class-loader-howto.html">10) Classloading</a></li><li><a href="jasper-howto.html">11) JSPs</a></li><li><a href="ssl-howto.html">12) SSL/TLS</a></li><li><a href="ssi-howto.html">13) SSI</a></li><li><a href="cgi-howto.html">14) CGI</a></li><li><a href="proxy-howto.html">15) Proxy Support</a></li><li><a href="mbeans-descriptors-howto.html">16) MBeans Descriptors</a></li><li><a href="default-servlet.html">17) Default Servlet</a></li><li><a href="cluster-howto.html">18) Clustering</a></li><li><a href="balancer-howto.html">19) Load Balancer</a></li><li><a href="connectors.html">20) Connectors</a></li><li><a href="monitoring.html">21) Monitoring and Management</a></li><li><a href="logging.html">22) Logging</a></li><li><a href="apr.html">23) APR/Native</a></li><li><a href="virtual-hosting-howto.html">24) Virtual Hosting</a></li><li><a href="aio.html">25) Advanced IO</a></li><li><a href="extras.html">26) Additional Components</a></li><li><a href="maven-jars.html">27) Mavenized</a></li><li><a href="security-howto.html">28) Security Considerations</a></li><li><a href="windows-service-howto.html">29) Windows Service</a></li><li><a href="windows-auth-howto.html">30) Windows Authentication</a></li><li><a href="jdbc-pool.html">31) Tomcat's JDBC Pool</a></li><li><a href="web-socket-howto.html">32) WebSocket</a></li><li><a href="rewrite.html">33) Rewrite</a></li></ul></div><div><h2>Reference</h2><ul><li><a href="RELEASE-NOTES.txt">Release Notes</a></li><li><a href="config/index.html">Configuration</a></li><li><a href="api/index.html">Tomcat Javadocs</a></li><li><a href="servletapi/index.html">Servlet Javadocs</a></li><li><a href="jspapi/index.html">JSP 2.3 Javadocs</a></li><li><a href="elapi/index.html">EL 3.0 Javadocs</a></li><li><a href="websocketapi/index.html">WebSocket 1.1 Javadocs</a></li><li><a href="http://tomcat.apache.org/connectors-doc/">JK 1.2 Documentation</a></li></ul></div><div><h2>Apache Tomcat Development</h2><ul><li><a href="building.html">Building</a></li><li><a href="changelog.html">Changelog</a></li><li><a href="http://wiki.apache.org/tomcat/TomcatVersions">Status</a></li><li><a href="developers.html">Developers</a></li><li><a href="architecture/index.html">Architecture</a></li><li><a href="funcspecs/index.html">Functional Specs.</a></li><li><a href="tribes/introduction.html">Tribes</a></li></ul></div></nav></div></div><div id="mainRight"><div id="content"><h2>Advanced IO and Tomcat</h2><h3 id="Table_of_Contents">Table of Contents</h3><div class="text"> | ||
| <ul><li><a href="#Introduction">Introduction</a></li><li><a href="#Asynchronous_writes">Asynchronous writes</a></li></ul> | ||
| </div><h3 id="Introduction">Introduction</h3><div class="text"> | ||
|
|
||
| <p> | ||
| <b>IMPORTANT NOTE: Usage of these features requires using the | ||
| HTTP connectors. The AJP connectors do not support them.</b> | ||
| </p> | ||
|
|
||
| </div><h3 id="Asynchronous_writes">Asynchronous writes</h3><div class="text"> | ||
|
|
||
| <p> | ||
| When using HTTP connectors (based on APR or NIO/NIO2), | ||
| Tomcat supports using sendfile to send large static files. | ||
| These writes, as soon as the system load increases, will be performed | ||
| asynchronously in the most efficient way. Instead of sending a large response using | ||
| blocking writes, it is possible to write content to a static file, and write it | ||
| using a sendfile code. A caching valve could take advantage of this to cache the | ||
| response data in a file rather than store it in memory. Sendfile support is | ||
| available if the request attribute <code>org.apache.tomcat.sendfile.support</code> | ||
| is set to <code>Boolean.TRUE</code>. | ||
| </p> | ||
|
|
||
| <p> | ||
| Any servlet can instruct Tomcat to perform a sendfile call by setting the appropriate | ||
| request attributes. It is also necessary to correctly set the content length | ||
| for the response. When using sendfile, it is best to ensure that neither the | ||
| request or response have been wrapped, since as the response body will be sent later | ||
| by the connector itself, it cannot be filtered. Other than setting the 3 needed | ||
| request attributes, the servlet should not send any response data, but it may use | ||
| any method which will result in modifying the response header (like setting cookies). | ||
| </p> | ||
|
|
||
| <ul> | ||
| <li><code>org.apache.tomcat.sendfile.filename</code>: Canonical filename of the file which will be sent as | ||
| a String</li> | ||
| <li><code>org.apache.tomcat.sendfile.start</code>: Start offset as a Long</li> | ||
| <li><code>org.apache.tomcat.sendfile.end</code>: End offset as a Long</li> | ||
| </ul> | ||
| <p> | ||
| In addition to setting these parameters it is necessary to set the content-length header. | ||
| Tomcat will not do that for you, since you may have already written data to the output stream. | ||
| </p> | ||
|
|
||
| <p> | ||
| Note that the use of sendfile will disable any compression that Tomcat may | ||
| otherwise have performed on the response. | ||
| </p> | ||
|
|
||
| </div><div class="noprint"><h3 id="comments_section"> | ||
| Comments | ||
| </h3><div class="text"><p class="notice"><strong>Notice: </strong>This comments section collects your suggestions | ||
| on improving documentation for Apache Tomcat.<br><br> | ||
| If you have trouble and need help, read | ||
| <a href="http://tomcat.apache.org/findhelp.html">Find Help</a> page | ||
| and ask your question on the tomcat-users | ||
| <a href="http://tomcat.apache.org/lists.html">mailing list</a>. | ||
| Do not ask such questions here. This is not a Q&A section.<br><br> | ||
| The Apache Comments System is explained <a href="./comments.html">here</a>. | ||
| Comments may be removed by our moderators if they are either | ||
| implemented or considered invalid/off-topic. | ||
| </p><div id="comments_thread"></div></div></div></div></div></div></div><footer><div id="footer"> | ||
| Copyright © 1999-2016, The Apache Software Foundation | ||
| </div></footer></div></body></html> |
| @@ -0,0 +1,34 @@ | ||
| <!-- | ||
| 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. | ||
| --> | ||
| <!DOCTYPE html> | ||
| <html> | ||
| <head> | ||
| <meta charset="UTF-8" /> | ||
| <title>API docs</title> | ||
| </head> | ||
|
|
||
| <body> | ||
|
|
||
| Tomcat's internal javadoc is not installed by default. Download and install | ||
| the "fulldocs" package to get it. | ||
|
|
||
| You can also access the javadoc online in the Tomcat | ||
| <a href="http://tomcat.apache.org/tomcat-8.5-doc/"> | ||
| documentation bundle</a>. | ||
|
|
||
| </body> | ||
| </html> |