code: private Transport interceptPropertySetters(Transport transport) {
          final Enhancer e = new Enhancer();
          e.setInterfaces(new Class<?>[] {Transport.class, ServiceTransportBeanSetters.class});
          final TransportDelegationFilter filter = new TransportDelegationFilter(transport, ServiceTransportBeanSetters.class);
          e.setCallbackFilter(filter);
          e.setCallbacks(filter.getCallbacks());
          return (Transport) e.create();
      }
docs: ActiveMQ expects to reflectively call setX for every property x specified in the connection string.
  Since we are actually constructing a failover transport, these properties are obviously not expected
  and ActiveMQ complains that we are specifying invalid parameters.  So create a CGLIB proxy that
  intercepts and ignores appropriate setter calls.