* @param list List of methods that should not be mocked
*/
protected <T> T createMockAndKeepMethods(Class<T> clazz, final boolean keepSetters,
final Method... list) {
final List<Method> l = new ArrayList<Method>();
GwtReflectionUtils.doWithMethods(clazz, new MethodCallback() {
public void doWith(Method method) throws IllegalArgumentException, IllegalAccessException {
if (!ArrayUtils.contains(list, method)) {
if (!keepSetters || !method.getName().startsWith("set")
|| method.getReturnType() != void.class) {