| <!-- |
| 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 lang="en"> |
| <head> |
| <meta charset="UTF-8" /> |
| <meta name="Author" content="Anil K. Vijendran" /> |
| <title>Servlet Examples</title> |
| <style type="text/css"> |
| img { border: 0; } |
| th { text-align: left; } |
| tr { vertical-align: top; } |
| </style> |
| </head> |
| <body> |
| <h1>Servlet |
| Examples with Code</h1> |
| <p>This is a collection of examples which demonstrate some of the more |
| frequently used parts of the Servlet API. Familiarity with the Java(tm) |
| Programming Language is assumed. |
| <p>These examples will only work when viewed via an http URL. They will |
| not work if you are viewing these pages via a "file://..." URL. Please |
| refer to the <i>README</i> file provide with this Tomcat release regarding |
| how to configure and start the provided web server. |
| <p>Wherever you see a form, enter some data and see how the servlet reacts. |
| When playing with the Cookie and Session Examples, jump back to the Headers |
| Example to see exactly what your browser is sending the server. |
| <p>To navigate your way through the examples, the following icons will |
| help:</p> |
| <ul style="list-style-type: none; padding-left: 0;"> |
| <li><img src="images/execute.gif" alt=""> Execute the example</li> |
| <li><img src="images/code.gif" alt=""> Look at the source code for the example</li> |
| <!-- <li><img src="images/read.gif" alt=""> Read more about this feature</li> --> |
| <li><img src="images/return.gif" alt=""> Return to this screen</li> |
| </ul> |
| |
| <p>Tip: To see the cookie interactions with your browser, try turning on |
| the "notify when setting a cookie" option in your browser preferences. |
| This will let you see when a session is created and give some feedback |
| when looking at the cookie demo.</p> |
| <table style="width: 85%;" > |
| <tr> |
| <td>Hello World</td> |
| |
| <td style="width: 30%;"><a href="servlet/HelloWorldExample"><img SRC="images/execute.gif" alt=""></a><a href="servlet/HelloWorldExample">Execute</a></td> |
| |
| <td style="width: 30%;"><a href="helloworld.html"><img SRC="images/code.gif" alt=""></a><a href="helloworld.html">Source</a></td> |
| </tr> |
| |
| <tr> |
| <td>Request Info</td> |
| |
| <td style="width: 30%;"><a href="servlet/RequestInfoExample"><img SRC="images/execute.gif" alt=""></a><a href="servlet/RequestInfoExample">Execute</a></td> |
| |
| <td style="width: 30%;"><a href="reqinfo.html"><img SRC="images/code.gif" alt=""></a><a href="reqinfo.html">Source</a></td> |
| </tr> |
| |
| <tr> |
| <td>Request Headers</td> |
| |
| <td style="width: 30%;"><a href="servlet/RequestHeaderExample"><img SRC="images/execute.gif" alt=""></a><a href="servlet/RequestHeaderExample">Execute</a></td> |
| |
| <td style="width: 30%;"><a href="reqheaders.html"><img SRC="images/code.gif" alt=""></a><a href="reqheaders.html">Source</a></td> |
| </tr> |
| |
| <tr> |
| <td>Request Parameters</td> |
| |
| <td style="width: 30%;"><a href="servlet/RequestParamExample"><img SRC="images/execute.gif" alt=""></a><a href="servlet/RequestParamExample">Execute</a></td> |
| |
| <td style="width: 30%;"><a href="reqparams.html"><img SRC="images/code.gif" alt=""></a><a href="reqparams.html">Source</a></td> |
| </tr> |
| |
| <tr> |
| <td>Cookies</td> |
| |
| <td style="width: 30%;"><a href="servlet/CookieExample"><img SRC="images/execute.gif" alt=""></a><a href="servlet/CookieExample">Execute</a></td> |
| |
| <td style="width: 30%;"><a href="cookies.html"><img SRC="images/code.gif" alt=""></a><a href="cookies.html">Source</a></td> |
| </tr> |
| |
| <tr> |
| <td>Sessions</td> |
| |
| <td style="width: 30%;"><a href="servlet/SessionExample"><img SRC="images/execute.gif" alt=""></a><a href="servlet/SessionExample">Execute</a></td> |
| |
| <td style="width: 30%;"><a href="sessions.html"><img SRC="images/code.gif" alt=""></a><a href="sessions.html">Source</a></td> |
| </tr> |
| </table> |
| |
| <p>Note: The source code for these examples does not contain all of the |
| source code that is actually in the example, only the important sections |
| of code. Code not important to understand the example has been removed |
| for clarity.</p> |
| |
| <h2>Other Examples</h2> |
| <table style="width: 85%;" > |
| |
| <tr> |
| <th colspan="3">Servlet 3.0 Asynchronous processing examples:</th> |
| </tr> |
| <tr> |
| <td>async0</td> |
| <td style="width: 30%;"> |
| <a href="../async/async0"><img SRC="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| <tr> |
| <td>async1</td> |
| <td style="width: 30%;"> |
| <a href="../async/async1"><img SRC="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| <tr> |
| <td>async2</td> |
| <td style="width: 30%;"> |
| <a href="../async/async2"><img SRC="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| <tr> |
| <td>async3</td> |
| <td style="width: 30%;"> |
| <a href="../async/async3"><img SRC="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| <tr> |
| <td>stockticker</td> |
| <td style="width: 30%;"> |
| <a href="../async/stockticker"><img SRC="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| |
| <tr> |
| <th colspan="3">Comet processing example:<br /> |
| <span style="font-weight: normal;">See the <strong>"Advanced IO"</strong> chapter in the User Guide for |
| details. This example only works with the HTTP NIO or HTTP APR/native |
| connectors as these are the only connectors that support Comet.</span></th> |
| </tr> |
| <tr> |
| <td>Comet Chat</td> |
| <td style="width: 30%;"> |
| <a href="chat/"><img SRC="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| |
| <tr> |
| <th colspan="3">Servlet 3.1 Non-blocking IO examples</th> |
| </tr> |
| <tr> |
| <td>Byte counter</td> |
| <td style="width: 30%;"> |
| <a href="nonblocking/bytecounter.html"><img src="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| <tr> |
| <td>Number Writer</td> |
| <td style="width: 30%;"> |
| <a href="nonblocking/numberwriter"><img src="images/execute.gif" alt=""> Execute</a> |
| </td> |
| <td style="width: 30%;"></td> |
| </tr> |
| |
| </table> |
| |
| </body> |
| </html> |