Just adding some stuff (and tests) to Axis fault; starting with some looking at what is there to start with. this method draws my attention:
/** * set the fault detail element to the arrary of details * @param details list of detail elements, can be null */ public void setFaultDetail(Element[] details) { if ( details == null ) { return ; } faultDetails = new Vector( details.length ); for ( int loop = 0 ; loop < details.length ; loop++ ) { faultDetails.add( details[loop] ); } } If somone calls setFaultDetail(null), then any existing fault details are retained. I'd really expect the current faultDetails vector to be set to null, no?