Buggy code:
class ModClusterService implements ModCluster , Service < ModCluster > { private static final Logger log = Logger . getLogger ( "org.jboss.as.modcluster" ) ; static final ServiceName NAME = JBOSS . append ( "mod-cluster" ) ; private ModelNode modelconf ; private CatalinaEventHandlerAdapter adapter ; private LoadBalanceFactorProvider load ; private final InjectedValue < WebServer > webServer = new InjectedValue < WebServer > ( ) ; private org . jboss . modcluster . ModClusterService service ; private ModClusterConfig config ; public ModClusterService ( ModelNode modelconf ) { } public synchronized void start ( StartContext context ) throws StartException { ModClusterService . log . debugf ( "Starting<seq2seq4repair_space>Mod_cluster<seq2seq4repair_space>Extension" ) ; config = new ModClusterConfig ( ) ; final ModelNode proxyconf = modelconf . get ( PROXY_CONF ) ; final ModelNode httpdconf = proxyconf . get ( HTTPD_CONF ) ; final ModelNode nodeconf = proxyconf . get ( NODES_CONF ) ; boolean defaultavert = false ; try { for ( Enumeration < NetworkInterface > ni = NetworkInterface . getNetworkInterfaces ( ) ; ni . hasMoreElements ( ) ; ) { NetworkInterface intf = ni . nextElement ( ) ; if ( ( intf . isUp ( ) ) && ( intf . supportsMulticast ( ) ) ) defaultavert = true ; } } catch ( SocketException e ) { } if ( ! ( httpdconf . hasDefined ( PROXY_LIST ) ) ) { config . setAdvertise ( defaultavert ) ; } config . setAdvertisePort ( 23364 ) ; config . setAdvertiseGroupAddress ( "224.0.1.105" ) ; config . setAutoEnableContexts ( true ) ; config . setStopContextTimeout ( 10 ) ; config . setSocketTimeout ( 20000 ) ; if ( httpdconf . hasDefined ( ADVERTISE_SOCKET ) ) { config . setAdvertisePort ( 23364 ) ; config . setAdvertiseGroupAddress ( "224.0.1.105" ) ; if ( ! defaultavert ) <START_BUG> ModClusterService . log . error ( "Mod_cluster<seq2seq4repair_space>requires<seq2seq4repair_space>Advertise<seq2seq4repair_space>but<seq2seq4repair_space>Multicast<seq2seq4repair_space>interface" ) ; <END_BUG> config . setAdvertise ( true ) ; } if ( httpdconf . hasDefined ( SSL ) ) { } if ( httpdconf . hasDefined ( ADVERTISE ) ) config . setAdvertise ( httpdconf . get ( ADVERTISE ) . asBoolean ( ) ) ; if ( httpdconf . hasDefined ( PROXY_LIST ) ) { config . setProxyList ( httpdconf . get ( PROXY_LIST ) . asString ( ) ) ; } if ( httpdconf . hasDefined ( PROXY_URL ) ) config . setProxyList ( httpdconf . get ( PROXY_URL ) . asString ( ) ) ; if ( httpdconf . has ( ADVERTISE_SECURITY_KEY ) ) config . setProxyList ( httpdconf . get ( ADVERTISE_SECURITY_KEY ) . asString ( ) ) ; if ( nodeconf . hasDefined ( EXCLUDED_CONTEXTS ) ) config . setExcludedContexts ( nodeconf . get ( EXCLUDED_CONTEXTS ) . asString ( ) ) ; if ( nodeconf . hasDefined ( AUTO_ENABLE_CONTEXTS ) ) config . setAutoEnableContexts ( nodeconf . get ( AUTO_ENABLE_CONTEXTS ) . asBoolean ( ) ) ; if ( nodeconf . hasDefined ( STOP_CONTEXT_TIMEOUT ) ) { config . setStopContextTimeout ( nodeconf . get ( SOCKET_TIMEOUT ) . asInt ( ) ) ; config . setStopContextTimeoutUnit ( TimeUnit . SECONDS ) ; } if ( nodeconf . hasDefined ( SOCKET_TIMEOUT ) ) config . setSocketTimeout ( nodeconf . get ( SOCKET_TIMEOUT ) . asInt ( ) ) ; final ModelNode loadmetric = modelconf . get ( LOAD_METRIC ) ; if ( loadmetric . hasDefined ( SIMPLE_LOAD_PROVIDER ) ) { final ModelNode node = loadmetric . get ( SIMPLE_LOAD_PROVIDER ) ; SimpleLoadBalanceFactorProvider myload = new SimpleLoadBalanceFactorProvider ( ) ; myload . setLoadBalanceFactor ( node . get ( FACTOR ) . asInt ( 1 ) ) ; load = myload ; } Set < LoadMetric < LoadContext > > metrics = new HashSet < LoadMetric < LoadContext > > ( ) ; if ( loadmetric . hasDefined ( DYNAMIC_LOAD_PROVIDER ) ) { final ModelNode node = loadmetric . get ( DYNAMIC_LOAD_PROVIDER ) ; int decayFactor = node . get ( DECAY ) . asInt ( 512 ) ; int history = node . get ( HISTORY ) . asInt ( 512 ) ; if ( node . hasDefined ( LOAD_METRIC ) ) { final ModelNode nodemetric = node . get ( LOAD_METRIC ) ; final List < ModelNode > array = nodemetric . asList ( ) ; addLoadMetrics ( metrics , array ) ; } if ( node . hasDefined ( CUSTOM_LOAD_METRIC ) ) { final ModelNode nodemetric = node . get ( CUSTOM_LOAD_METRIC ) ; final List < ModelNode > array = nodemetric . asList ( ) ; addCustomLoadMetrics ( metrics , array ) ; } if ( ! ( metrics . isEmpty ( ) ) ) { DynamicLoadBalanceFactorProvider loader = new DynamicLoadBalanceFactorProvider ( metrics ) ; loader . setDecayFactor ( decayFactor ) ; loader . setHistory ( history ) ; load = loader ; } } if ( ( load ) == null ) { ModClusterService . log . info ( "Mod_cluster<seq2seq4repair_space>uses<seq2seq4repair_space>default<seq2seq4repair_space>load<seq2seq4repair_space>balancer<seq2seq4repair_space>provider" ) ; SimpleLoadBalanceFactorProvider myload = new SimpleLoadBalanceFactorProvider ( ) ; myload . setLoadBalanceFactor ( 1 ) ; load = myload ; } service = new org . jboss . modcluster . ModClusterService ( config , load ) ; adapter = new CatalinaEventHandlerAdapter ( service , webServer . getValue ( ) . getServer ( ) , webServer . getValue ( ) . getService ( ) ) ; try { adapter . start ( ) ; } catch ( JMException e ) { e . printStackTrace ( ) ; } } public synchronized void stop ( StopContext context ) { } @ Override public synchronized ModCluster getValue ( ) throws IllegalArgumentException , IllegalStateException { } MBeanServer getMBeanServer ( ) { } private void addLoadMetrics ( Set < LoadMetric < LoadContext > > metrics , List < ModelNode > array ) { } private void addCustomLoadMetrics ( Set < LoadMetric < LoadContext > > metrics , List < ModelNode > array ) { } public Injector < WebServer > getWebServer ( ) { } Registry getRegistry ( ) { }

Fix:
ModClusterService . log . error ( "Mod_cluster<seq2seq4repair_space>requires<seq2seq4repair_space>Advertise<seq2seq4repair_space>but<seq2seq4repair_space>Multicast<seq2seq4repair_space>interface<seq2seq4repair_space>is<seq2seq4repair_space>not<seq2seq4repair_space>available" ) ;