What do people think about having a new Synapse MessageContext interface instead of using the AXIS2 MessageContext class? It makes Synapse quite invasive - a mediation has dependencies on both Synapse and AXIS2.

An aim of Synapse mediations is to be based on the SOAP Infoset, but using the AXIS2 classes brings in far more than that, eg the AXIS2 MC has methods relating to AXIS2 config - modules, SystemConfiguration etc.  And as its a class not an interface you can't easily mock it up for unit testing mediation beans in isolation, you endup needing mocks for all sorts of unrelated AXIS2 classes. Which surely that goes against Synapse being a non-invasive container for mediation POJOs?

Similar thing with the AXISFault. I agree with what Eric said earlier about not using AXISFault. If mediation exceptions are going to be fundamentally SOAPy faults then AXISFault represents more than that.

       ...ant

PS. Hi guys