Вы можете создать другой класс, скажем ThreadSample, реализующий интерфейс Runnable, и иметь HttpServletRequest в качестве члена класса. Когда вы создаете объект класса ThreadSample, передайте свой httpServletRequest в качестве аргумента конструктора, а затем в методе run используйте член экземпляра httpServletRequest при вызове method2.
Код будет выглядеть примерно так:
public class ThreadSample implements Runnable
{
private final HttpServletRequest httpServletRequest;
public ThreadSample(final HttpServletRequest httpServletRequest)
{
this.httpServletRequest = httpServletRequest;
}
public void run()
{
method2(this.httpServletRequest);
}
}
В вашем методе doPost класса Servlet вы можете использовать ThreadSample, например:
Thread thread = new Thread(new ThreadSample(httpServletRequest));
thread.start();
Надеюсь, это решит вашу проблему.