Buggy code:
} for ( MenuRegistration m : modules ) { if ( ( ! ( m . isHidden ( ) ) ) && ( m . canRead ( ) ) ) { return false ; } } return true ; } } , MENU_PERSONAL ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , "browserLaunchable" , "fa-globe" , "browserLaunchable" , 300 , null , null , null , null ) { @ Override public boolean isHidden ( ) { return ( browserService . getPersonalResourceCount ( getCurrentPrincipal ( ) , "" ) ) == 0 ; } } , MENU_MY_RESOURCES ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_SYSTEM , "" , null , 100 , null , null , null , null ) ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_SYSTEM_CONFIGURATION , "fa-server" , null , 0 , null , null , null , null ) , MENU_SYSTEM ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , "settings" , "fa-cog" , "settings" , 0 , SystemPermission . SYSTEM_ADMINISTRATION , null , SystemPermission . SYSTEM_ADMINISTRATION , null ) , MENU_SYSTEM_CONFIGURATION ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_REALMS , "fa-database" , "realms" , 1 , RealmPermission . READ , RealmPermission . CREATE , RealmPermission . UPDATE , RealmPermission . DELETE ) , MENU_SYSTEM_CONFIGURATION ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , "httpInterfaces" , "fa-sitemap" , "httpInterfaces" , 100 , HTTPInterfaceResourcePermission . READ , HTTPInterfaceResourcePermission . CREATE , HTTPInterfaceResourcePermission . UPDATE , HTTPInterfaceResourcePermission . DELETE ) , MENU_SYSTEM_CONFIGURATION ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MENU_DIAGNOSTICS , "fa-wrench" , null , 100 , null , null , null , null ) , MENU_SYSTEM ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_SCHEDULERS , "fa-clock-o" , "schedulers" , Integer . MAX_VALUE , SystemPermission . SYSTEM_ADMINISTRATION , null , null , null , null ) , MENU_SYSTEM_CONFIGURATION ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_CONFIGURATION , "fa-cog" , null , 100 , null , null , null , null ) , MENU_SYSTEM ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_REALM_CONFIGURATION , "fa-cogs" , "realmSettings" , 0 , ConfigurationPermission . READ , null , ConfigurationPermission . UPDATE , null ) , MENU_CONFIGURATION ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_CERTIFICATES , "fa-certificate" , "certificateResources" , 99999 , CertificateResourcePermission . READ , CertificateResourcePermission . CREATE , CertificateResourcePermission . UPDATE , CertificateResourcePermission . DELETE ) , MENU_CONFIGURATION ) ; registerExtendableTable ( ACTIONS_CERTIFICATES ) ; registerTableAction ( ACTIONS_CERTIFICATES , new AbstractTableAction ( "downloadCSR" , "fa-certificate" , "downloadCSR" , CertificateResourcePermission . UPDATE , 0 , null , null ) ) ; registerTableAction ( ACTIONS_CERTIFICATES , new AbstractTableAction ( "certificateUpload" , "fa-upload" , "certificateUpload" , CertificateResourcePermission . UPDATE , 100 , null , null ) ) ; registerTableAction ( ACTIONS_CERTIFICATES , new AbstractTableAction ( "pemUpload" , "fa-upload" , "pemUpload" , CertificateResourcePermission . UPDATE , 200 , null , null ) ) ; registerTableAction ( ACTIONS_CERTIFICATES , new AbstractTableAction ( "pfxUpload" , "fa-upload" , "pfxUpload" , CertificateResourcePermission . UPDATE , 300 , null , null ) ) ; registerTableAction ( ACTIONS_CERTIFICATES , new AbstractTableAction ( "downloadCertificate" , "fa-download" , "downloadCertificate" , CertificateResourcePermission . READ , 400 , null , null ) ) ; registerTableAction ( ACTIONS_CERTIFICATES , new AbstractTableAction ( "pemExport" , "fa-download" , "pemExport" , CertificateResourcePermission . READ , 500 , null , null ) ) ; registerTableAction ( ACTIONS_CERTIFICATES , new AbstractTableAction ( "pfxExport" , "fa-download" , "pfxExport" , CertificateResourcePermission . READ , 600 , null , null ) ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , "profileAttributes" , "fa-sticky-note-o" , "userAttributeTabs" , 4000 , UserAttributePermission . READ , UserAttributePermission . CREATE , UserAttributePermission . UPDATE , UserAttributePermission . DELETE ) , MENU_ACCESS_CONTROL ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , "accessControl" , "fa-unlock-alt" , null , 200 , null , null , null , null ) , MENU_SYSTEM ) ; registerMenu ( new MenuServiceImpl . RealmMenuRegistration ( RESOURCE_BUNDLE , "users" , "fa-user" , "users" , 1000 , UserPermission . READ , UserPermission . CREATE , UserPermission . UPDATE , UserPermission . DELETE ) { @ Override public boolean canDelete ( ) { return ! ( realmService . isReadOnly ( getCurrentRealm ( ) ) ) ; } @ Override public boolean canCreate ( ) { return ! ( realmService . isReadOnly ( getCurrentRealm ( ) ) ) ; } @ Override public boolean canUpdate ( ) { <START_BUG> return ! ( realmService . isReadOnly ( getCurrentRealm ( ) ) ) ; <END_BUG> } } , MENU_ACCESS_CONTROL ) ; registerMenu ( new MenuServiceImpl . RealmMenuRegistration ( RESOURCE_BUNDLE , "groups" , "fa-users" , "groups" , 2000 , GroupPermission . READ , GroupPermission . CREATE , GroupPermission . UPDATE , GroupPermission . DELETE ) { @ Override public boolean canUpdate ( ) { return ! ( realmService . isReadOnly ( getCurrentRealm ( ) ) ) ; } @ Override public boolean canDelete ( ) { return ! ( realmService . isReadOnly ( getCurrentRealm ( ) ) ) ; } @ Override public boolean canCreate ( ) { return ! ( realmService . isReadOnly ( getCurrentRealm ( ) ) ) ; } } , MENU_ACCESS_CONTROL ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , "roles" , "fa-user-md" , "roles" , 3000 , RolePermission . READ , RolePermission . CREATE , RolePermission . UPDATE , RolePermission . DELETE ) , MENU_ACCESS_CONTROL ) ; registerMenu ( new MenuRegistration ( RESOURCE_BUNDLE , MenuService . MENU_RESOURCES , "" , null , 300 , null , null , null , null ) ) ; registerExtendableTable ( ACTIONS_USERS ) ; registerTableAction ( ACTIONS_USERS , new AbstractTableAction ( "setPassword" , "fa-key" , "password" , UserPermission . UPDATE , 0 , null , null ) { public boolean isEnabled ( ) { return ! ( realmService . isReadOnly ( getCurrentRealm ( ) ) ) ; } } ) ;

Fix:
return true ;