seguindo a espec SOAP vc deve lançar sua exception mesmo no seu web metodo, como diz um amigo meu, XML são para maquinas não para humanos 
ex:
@WebMethod
@WebResult(name = "seuRetorno", targetNamespace = "http://namespace.com.br/")
public RetPoResult receives(@WebParam(name = "xml") XML xml,
@WebParam(name = "access", header = true) String dadosHeader) throws SuaValidacaoException, SOAPException{
se qualquer coisa der errado.
throw new SuaValidacaoException("Cliente não autorizado");
sua Implementação
public class SuaValidacaoException extends Exception {
public SuaValidacaoException() {}
public SuaValidacaoException(String message) {
super(message);
}
public SuaValidacaoException(Throwable cause) {
super(cause);
}
public SuaValidacaoException(String message,
Throwable cause) {
super(message, cause);
}