package io.undertow.servlet.test.async;
import io.undertow.util.StatusCodes;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
* @author Stuart Douglas
*/
public class AsyncErrorServlet extends HttpServlet {
@Override
protected void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws ServletException, IOException {
req.startAsync();
Thread t = new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(100);
resp.sendError(StatusCodes.INTERNAL_SERVER_ERROR);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
});
t.start();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}