public static String getAction(Extensible ext) {
Object o = ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME);
if (o == null) {
o = ext.getExtensionAttributes().get(new QName(Names.WSA_NAMESPACE_WSDL_METADATA,
Names.WSAW_ACTION_NAME));
}
if (o == null) {
o = ext.getExtensionAttributes().get(new QName(Names.WSA_NAMESPACE_WSDL_NAME_OLD,
Names.WSAW_ACTION_NAME));
}
if (o instanceof QName) {
return ((QName)o).getLocalPart();
}
return o.toString(); // <=== fails here
}
This is known/expected issue. CXF 2.2.8 (currently in use)
doesn't implement JAX-WS 2.2 yet. This should be fixed soon in upcomming CXF releases.