Buggy code:
root . registerOperationHandler ( DeploymentUploadStreamAttachmentHandler . OPERATION_NAME , dush , dush , false , PUBLIC , deploymentUpload ) ; DeploymentFullReplaceHandler dfrh = ( isMaster ) ? new DeploymentFullReplaceHandler ( contentRepo ) : new DeploymentFullReplaceHandler ( fileRepository ) ; root . registerOperationHandler ( DeploymentFullReplaceHandler . OPERATION_NAME , dfrh , dfrh ) ; SnapshotDeleteHandler snapshotDelete = new SnapshotDeleteHandler ( configurationPersister ) ; root . registerOperationHandler ( SnapshotDeleteHandler . OPERATION_NAME , snapshotDelete , snapshotDelete , false ) ; SnapshotListHandler snapshotList = new SnapshotListHandler ( configurationPersister ) ; root . registerOperationHandler ( SnapshotListHandler . OPERATION_NAME , snapshotList , snapshotList , false ) ; SnapshotTakeHandler snapshotTake = new SnapshotTakeHandler ( configurationPersister ) ; root . registerOperationHandler ( SnapshotTakeHandler . OPERATION_NAME , snapshotTake , snapshotTake , false ) ; root . registerReadOnlyAttribute ( PROCESS_TYPE , ( isMaster ? ProcessTypeHandler . MASTER : ProcessTypeHandler . SLAVE ) , RUNTIME ) ; root . registerReadOnlyAttribute ( LAUNCH_TYPE , new org . jboss . as . server . operations . LaunchTypeHandler ( LaunchType . DOMAIN ) , RUNTIME ) ; root . registerOperationHandler ( VALIDATE_ADDRESS_OPERATION_NAME , VALIDATE_ADDRESS , VALIDATE_ADDRESS_PROVIDER , true ) ; root . registerOperationHandler ( ResolveExpressionOnDomainHandler . OPERATION_NAME , ResolveExpressionOnDomainHandler . INSTANCE , ResolveExpressionOnDomainHandler . INSTANCE , EnumSet . of ( READ_ONLY , DOMAIN_PUSH_TO_SERVERS ) ) ; DomainServerLifecycleHandlers . registerDomainHandlers ( root ) ; ManagementResourceRegistration systemProperties = root . registerSubModel ( PathElement . pathElement ( SYSTEM_PROPERTY ) , SYSTEM_PROPERTY_PROVIDER ) ; systemProperties . registerOperationHandler ( SystemPropertyAddHandler . OPERATION_NAME , INSTANCE_WITH_BOOTTIME , INSTANCE_WITH_BOOTTIME , false ) ; systemProperties . registerOperationHandler ( SystemPropertyRemoveHandler . OPERATION_NAME , SystemPropertyRemoveHandler . INSTANCE , SystemPropertyRemoveHandler . INSTANCE , false ) ; systemProperties . registerReadWriteAttribute ( VALUE , null , SystemPropertyValueWriteAttributeHandler . INSTANCE , CONFIGURATION ) ; systemProperties . registerReadWriteAttribute ( BOOT_TIME , null , new org . jboss . as . controller . operations . global . WriteAttributeHandlers . ModelTypeValidatingHandler ( ModelType . BOOLEAN ) , CONFIGURATION ) ; final ManagementResourceRegistration interfaces = root . registerSubModel ( PathElement . pathElement ( INTERFACE ) , NAMED_INTERFACE_PROVIDER ) ; interfaces . registerOperationHandler ( ADD , NAMED_INSTANCE , NAMED_INSTANCE , false ) ; interfaces . registerOperationHandler ( REMOVE , InterfaceRemoveHandler . INSTANCE , InterfaceRemoveHandler . INSTANCE , false ) ; InterfaceCriteriaWriteHandler . register ( interfaces ) ; final ManagementResourceRegistration profile = root . registerSubModel ( PathElement . pathElement ( PROFILE ) , DomainDescriptionProviders . PROFILE ) ; profile . registerOperationHandler ( ADD , ProfileAddHandler . INSTANCE , ProfileAddHandler . INSTANCE , false ) ; profile . registerOperationHandler ( REMOVE , ProfileRemoveHandler . INSTANCE , ProfileRemoveHandler . INSTANCE , false ) ; profile . registerOperationHandler ( DESCRIBE , ProfileDescribeHandler . INSTANCE , ProfileDescribeHandler . INSTANCE , false , PRIVATE , readOnly ) ; final ManagementResourceRegistration paths = root . registerSubModel ( PathElement . pathElement ( PATH ) , PATH_DESCRIPTION ) ; paths . registerOperationHandler ( ADD , PathAddHandler . NAMED_INSTANCE , PathAddHandler . NAMED_INSTANCE , false ) ; paths . registerOperationHandler ( REMOVE , PathRemoveHandler . INSTANCE , PathRemoveHandler . INSTANCE , false ) ; final ManagementResourceRegistration socketBindingGroup = root . registerSubModel ( new org . jboss . as . controller . resource . SocketBindingGroupResourceDefinition ( SocketBindingGroupAddHandler . INSTANCE , SocketBindingGroupRemoveHandler . INSTANCE , true ) ) ; socketBindingGroup . registerSubModel ( SocketBindingResourceDefinition . INSTANCE ) ; socketBindingGroup . registerSubModel ( RemoteDestinationOutboundSocketBindingResourceDefinition . INSTANCE ) ; socketBindingGroup . registerSubModel ( LocalDestinationOutboundSocketBindingResourceDefinition . INSTANCE ) ; final ManagementResourceRegistration serverGroups = root . registerSubModel ( PathElement . pathElement ( SERVER_GROUP ) , DomainDescriptionProviders . SERVER_GROUP ) ; serverGroups . registerOperationHandler ( ADD , ServerGroupAddHandler . INSTANCE , ServerGroupAddHandler . INSTANCE , false ) ; serverGroups . registerOperationHandler ( REMOVE , ServerGroupRemoveHandler . INSTANCE , ServerGroupRemoveHandler . INSTANCE , false ) ; serverGroups . registerReadWriteAttribute ( SOCKET_BINDING_GROUP , null , WriteAttributeHandlers . WriteAttributeOperationHandler . INSTANCE , CONFIGURATION ) ; serverGroups . registerReadWriteAttribute ( SOCKET_BINDING_PORT_OFFSET , null , new IntRangeValidatingHandler ( 0 , true ) , CONFIGURATION ) ; <START_BUG> serverGroups . registerReadWriteAttribute ( PROFILE , null , new org . jboss . as . domain . controller . operations . ServerGroupProfileWriteAttributeHandler ( root , hostControllerInfo ) , CONFIGURATION ) ; <END_BUG> DomainServerLifecycleHandlers . registerServerGroupHandlers ( serverGroups ) ; final ManagementResourceRegistration groupVMs = serverGroups . registerSubModel ( PathElement . pathElement ( JVM ) , JVM_PROVIDER ) ; JVMHandlers . register ( groupVMs ) ; ServerGroupDeploymentReplaceHandler sgdrh = new ServerGroupDeploymentReplaceHandler ( fileRepository ) ; serverGroups . registerOperationHandler ( ServerGroupDeploymentReplaceHandler . OPERATION_NAME , sgdrh , sgdrh ) ; final ManagementResourceRegistration serverGroupDeployments = serverGroups . registerSubModel ( PathElement . pathElement ( DEPLOYMENT ) , SERVER_GROUP_DEPLOYMENT ) ; ServerGroupDeploymentAddHandler sgdah = new ServerGroupDeploymentAddHandler ( fileRepository ) ; serverGroupDeployments . registerOperationHandler ( ServerGroupDeploymentAddHandler . OPERATION_NAME , sgdah , sgdah ) ; serverGroupDeployments . registerOperationHandler ( ServerGroupDeploymentDeployHandler . OPERATION_NAME , ServerGroupDeploymentDeployHandler . INSTANCE , ServerGroupDeploymentDeployHandler . INSTANCE ) ; serverGroupDeployments . registerOperationHandler ( ServerGroupDeploymentRedeployHandler . OPERATION_NAME , ServerGroupDeploymentRedeployHandler . INSTANCE , ServerGroupDeploymentRedeployHandler . INSTANCE ) ; serverGroupDeployments . registerOperationHandler ( ServerGroupDeploymentUndeployHandler . OPERATION_NAME , ServerGroupDeploymentUndeployHandler . INSTANCE , ServerGroupDeploymentUndeployHandler . INSTANCE ) ; serverGroupDeployments . registerOperationHandler ( DeploymentRemoveHandler . OPERATION_NAME , ServerGroupDeploymentRemoveHandler . INSTANCE , ServerGroupDeploymentRemoveHandler . INSTANCE ) ; ManagementResourceRegistration serverGroupSystemProperties = serverGroups . registerSubModel ( PathElement . pathElement ( SYSTEM_PROPERTY ) , SERVER_GROUP_SYSTEM_PROPERTY_PROVIDER ) ; serverGroupSystemProperties . registerOperationHandler ( SystemPropertyAddHandler . OPERATION_NAME , INSTANCE_WITH_BOOTTIME , INSTANCE_WITH_BOOTTIME , false ) ; serverGroupSystemProperties . registerOperationHandler ( SystemPropertyRemoveHandler . OPERATION_NAME , SystemPropertyRemoveHandler . INSTANCE , SystemPropertyRemoveHandler . INSTANCE , false ) ; serverGroupSystemProperties . registerReadWriteAttribute ( VALUE , null , SystemPropertyValueWriteAttributeHandler . INSTANCE , CONFIGURATION ) ; serverGroupSystemProperties . registerReadWriteAttribute ( BOOT_TIME , null , new org . jboss . as . controller . operations . global . WriteAttributeHandlers . ModelTypeValidatingHandler ( ModelType . BOOLEAN ) , CONFIGURATION ) ; final ManagementResourceRegistration deployments = root . registerSubModel ( PathElement . pathElement ( DEPLOYMENT ) , DEPLOYMENT_PROVIDER ) ; DeploymentAddHandler dah = ( isMaster ) ? new DeploymentAddHandler ( contentRepo ) : new DeploymentAddHandler ( ) ; deployments . registerOperationHandler ( DeploymentAddHandler . OPERATION_NAME , dah , dah ) ;

Fix:
serverGroups . registerReadWriteAttribute ( PROFILE , null , ServerGroupProfileWriteAttributeHandler . INSTANCE , CONFIGURATION ) ;