I think we've convinced ourselves that the task of supporting Servlet 2.5 containers fully with a proper protocol implementation is more difficult than it really is. By that, I mean we're being too conservative by not trying to merge into a web.xml file in an application WAR deployment. What we need to add is a single servlet definition and it's really not going to be a problem.
I recognize that the descriptors project is going to aim to make this simpler, more elegant and more deterministic. But we are getting a lot of requests to use Arquillian on containers that use Servlet 2.5, people who are getting tripped up and discouraged. We don't want a small fix to get stuck behind a large enhancement. I'm a firm believe in incremental enhancement, especially when it's going to help people right away.
The good news is that I got it working. I spend the end of last week and the weekend getting Weld Servlet to run on EAP 5.1, which includes an Arquillian test. I can vouch for the fact that the approach I took works and solves the problem.
JIRA: ARQ-316
Implementation: ARQ-316 prototype branch
There are two difficult steps, and the rest is just archive creation:
With our toe in the water, improvements will come.
Some work related to this, https://jira.jboss.org/browse/ARQ-217 using the ShrinkWrap Descriptors API has been started here: http://github.com/aslakknutsen/arquillian/tree/ARQ-217