private Method findListenerMethodByName(String listenerMethodName)
            throws IntrospectionException {
        Method result = null;
        Method[] methods = listenerType.getMethods();
        for (Method method : methods) {
            if (listenerMethodName.equals(method.getName())) {
                Class<?>[] paramTypes = method.getParameterTypes();
                if (paramTypes.length == 1
                        && paramTypes[0].getName().endsWith("Event")) { //$NON-NLS-1$
                    result = method;
                    break;
                }

            }
        }
        if (null == result) {
            throw new IntrospectionException(Messages.getString("custom.beans.31", //$NON-NLS-1$
                    listenerMethodName, listenerType.getName()));
        }
        return result;
    }