70 lines
2.5 KiB
HTML
70 lines
2.5 KiB
HTML
|
<!DOCTYPE html><html><head><meta charset="UTF-8" /><title>Source Code</title></head><body><pre><%--
|
||
|
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"%>
|
||
|
|
||
|
<pre>
|
||
|
Use cases:
|
||
|
|
||
|
1. Simple dispatch
|
||
|
- servlet does startAsync()
|
||
|
- background thread calls ctx.dispatch()
|
||
|
<a href="<%=response.encodeURL("/examples/async/async0")%>"> Async 0 </a>
|
||
|
|
||
|
2. Simple dispatch
|
||
|
- servlet does startAsync()
|
||
|
- background thread calls dispatch(/path/to/jsp)
|
||
|
<a href="<%=response.encodeURL("/examples/async/async1")%>"> Async 1 </a>
|
||
|
|
||
|
3. Simple dispatch
|
||
|
- servlet does startAsync()
|
||
|
- background thread calls writes and calls complete()
|
||
|
<a href="<%=response.encodeURL("/examples/async/async2")%>"> Async 2 </a>
|
||
|
|
||
|
4. Simple dispatch
|
||
|
- servlet does a startAsync()
|
||
|
- servlet calls dispatch(/path/to/jsp)
|
||
|
- servlet calls complete()
|
||
|
<a href="<%=response.encodeURL("/examples/async/async3")%>"> Async 3 </a>
|
||
|
|
||
|
3. Timeout s1
|
||
|
- servlet does a startAsync()
|
||
|
- servlet does a setAsyncTimeout
|
||
|
- returns - waits for timeout to happen should return error page
|
||
|
|
||
|
4. Timeout s2
|
||
|
- servlet does a startAsync()
|
||
|
- servlet does a setAsyncTimeout
|
||
|
- servlet does a addAsyncListener
|
||
|
- returns - waits for timeout to happen and listener invoked
|
||
|
|
||
|
5. Dispatch to asyncSupported=false servlet
|
||
|
- servlet1 does a startAsync()
|
||
|
- servlet1 dispatches to dispatch(/servlet2)
|
||
|
- the container calls complete() after servlet2 is complete
|
||
|
- TODO
|
||
|
|
||
|
6. Chained dispatch
|
||
|
- servlet1 does a startAsync
|
||
|
- servlet1 does a dispatch to servlet2 (asyncsupported=true)
|
||
|
- servlet2 does a dispatch to servlet3 (asyncsupported=true)
|
||
|
- servlet3 does a dispatch to servlet4 (asyncsupported=false)
|
||
|
|
||
|
|
||
|
7. Stock ticker
|
||
|
<a href="<%=response.encodeURL("/examples/async/stockticker")%>"> StockTicker </a>
|
||
|
</pre>
|
||
|
</pre></body></html>
|