No one at CXF tests it inside Glassfish that I know of. All CXF needs is a standard servlet container, so it is not easy to imagine a reason for an incompatibility.
I can't compare stability for you. Many organizations use CXF in production, some of them very large and picky. Migration depends on your fondness for standards. CXF is fully conformant with JAX-WS and JAX-B. Axis2 isn't. Metro presumably is. If you've built something fully conformant, it will work in CXF. If you make use of CXF extensions, it won't work in the others. Etc. You are mistaken about the role of the ASF. The ASF doesn't 'adopt' anything. Axis and CXF are both ASF projects. That's not an endorsement of their technologies. It puts them in a particular open source intellectual property realm which has many advantages, perhaps particularly over Metro. However, if the Metro team showed up at the ASF incubator with appropriate rights to their code, there is no in-principle reason why all three couldn't end up as ASF projects.
