be servlet container agnostic