You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/06/18 15:03:02 UTC

[isis] branch ISIS-2750 updated: ISIS-2750: fixes compile issue, import statements

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch ISIS-2750
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/ISIS-2750 by this push:
     new b8dae52  ISIS-2750: fixes compile issue, import statements
b8dae52 is described below

commit b8dae52b608285d2c1425028636e14c76390481b
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jun 18 16:02:47 2021 +0100

    ISIS-2750: fixes compile issue, import statements
---
 .../isis/applib/services/clock/ClockService.java   |  3 +-
 .../ContentMappingServiceForCommandsDto.java       |  3 +-
 .../services/publishing/log/CommandLogger.java     |  1 -
 .../publishing/log/EntityChangesLogger.java        |  3 +-
 .../publishing/log/EntityPropertyChangeLogger.java |  3 +-
 .../services/publishing/log/ExecutionLogger.java   |  3 +-
 .../queryresultscache/QueryResultsCache.java       |  1 -
 .../session/SessionLoggingServiceLogging.java      |  1 -
 .../isis/applib/services/sudo/SudoService.java     |  1 -
 .../isis/applib/services/user/UserService.java     |  3 +-
 .../config/beans/IsisBeanTypeRegistryDefault.java  |  3 +-
 .../DataSourceIntrospectionService.java            |  1 -
 .../config/viewer/wicket/WebAppContextPath.java    |  3 +-
 ...teractionAwareTransactionalBoundaryHandler.java |  3 +-
 .../objectmanager/ObjectManagerDefault.java        |  3 +-
 .../metamodel/services/ServiceInjectorDefault.java | 19 +++++-----
 .../ApplicationFeatureRepositoryDefault.java       | 41 ++++++++--------------
 .../services/events/MetamodelEventService.java     |  3 +-
 ...ExceptionRecognizerForRecoverableException.java |  3 +-
 .../services/grid/GridLoaderServiceDefault.java    |  3 +-
 .../services/grid/GridServiceDefault.java          | 22 +++++-------
 .../bootstrap3/GridSystemServiceBootstrap.java     |  1 -
 .../metamodel/MetaModelServiceDefault.java         |  1 -
 .../services/registry/ServiceRegistryDefault.java  |  1 -
 .../tablecol/TableColumnOrderServiceDefault.java   |  1 -
 .../services/title/TitleServiceDefault.java        |  3 +-
 .../specloader/ProgrammingModelServiceDefault.java |  1 -
 .../specloader/SpecificationLoaderDefault.java     |  1 -
 .../core/runtime/events/MetamodelEventService.java |  3 +-
 .../runtimeservices/email/EmailServiceDefault.java |  3 +-
 .../executor/MemberExecutorServiceDefault.java     |  1 -
 .../factory/FactoryServiceDefault.java             |  9 +++--
 .../i18n/po/TranslationServicePo.java              |  5 ++-
 .../interaction/InteractionDtoFactoryDefault.java  |  3 +-
 .../menubars/MenuBarsLoaderServiceDefault.java     |  5 ++-
 .../publish/ExecutionPublisherDefault.java         |  5 ++-
 .../ExceptionRecognizerServiceDefault.java         |  5 ++-
 .../repository/RepositoryServiceDefault.java       |  1 -
 .../routing/RoutingServiceDefault.java             |  1 -
 .../scratchpad/ScratchpadDefault.java              |  3 +-
 .../session/InteractionServiceDefault.java         |  5 ++-
 .../transaction/TransactionServiceSpring.java      |  5 ++-
 .../UrlEncodingServiceWithCompression.java         |  3 +-
 .../userreg/EmailNotificationServiceDefault.java   |  1 -
 .../wrapper/WrapperFactoryDefault.java             |  3 +-
 .../runtimeservices/xml/XmlServiceDefault.java     |  3 +-
 .../xmlsnapshot/XmlSnapshotServiceDefault.java     |  1 -
 .../manager/AuthenticationManager.java             |  3 +-
 .../standard/RandomCodeGeneratorDefault.java       |  4 +--
 .../changetracking/EntityChangeTrackerDefault.java |  3 +-
 .../changetracking/events/TimestampService.java    |  7 ++--
 .../confmenu/ConfigurationViewServiceDefault.java  |  3 +-
 .../UrlEncodingServiceNaiveInMemory.java           |  3 +-
 .../jdo/datanucleus/config/DnSettings.java         |  4 +--
 .../jdosupport/JdoSupportServiceDefault.java       |  3 +-
 .../jpa/eclipselink/config/ElSettings.java         |  3 +-
 .../SpringServiceInjectOrderTest.java              |  4 +--
 .../fakedata/applib/services/FakeDataService.java  |  3 +-
 .../applib/modules/ModuleWithFixturesService.java  |  1 -
 .../QueryResultsCacheControlForFixtures.java       |  3 +-
 .../services/InitialFixtureScriptsInstaller.java   | 20 ++++++-----
 .../sse/ui/wkt/services/SseServiceDefault.java     |  3 +-
 .../UserProfileUiModelProviderDefault.java         |  5 ++-
 .../rendering/domainobjects/JsonValueEncoder.java  |  3 +-
 .../rendering/service/RepresentationService.java   |  1 -
 ...entNegotiationServiceForRestfulObjectsV1_0.java |  1 -
 .../themepicker/IsisWicketThemeSupportDefault.java |  3 +-
 .../ComponentFactoryRegistryDefault.java           |  3 +-
 .../services/ImageResourceCacheClassPath.java      |  3 +-
 .../services/WicketViewerSettingsDefault.java      |  3 +-
 70 files changed, 103 insertions(+), 186 deletions(-)

diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java b/api/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java
index 8968158..d82c048d 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java
@@ -23,11 +23,10 @@ import javax.inject.Inject;
 import javax.inject.Named;
 import javax.inject.Provider;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.clock.VirtualClock;
 import org.apache.isis.applib.services.iactnlayer.InteractionContext;
 import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/commanddto/conmap/ContentMappingServiceForCommandsDto.java b/api/applib/src/main/java/org/apache/isis/applib/services/commanddto/conmap/ContentMappingServiceForCommandsDto.java
index c3f7164..e6c2b07 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/commanddto/conmap/ContentMappingServiceForCommandsDto.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/commanddto/conmap/ContentMappingServiceForCommandsDto.java
@@ -25,11 +25,10 @@ import javax.inject.Inject;
 import javax.inject.Named;
 import javax.ws.rs.core.MediaType;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.conmap.ContentMappingService;
 import org.apache.isis.schema.cmd.v2.CommandDto;
 import org.apache.isis.schema.cmd.v2.CommandsDto;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/CommandLogger.java b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/CommandLogger.java
index c66e363..6f51be8 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/CommandLogger.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/CommandLogger.java
@@ -22,7 +22,6 @@ import javax.annotation.Priority;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityChangesLogger.java b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityChangesLogger.java
index 5d92031..0c45ec9 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityChangesLogger.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityChangesLogger.java
@@ -21,11 +21,10 @@ package org.apache.isis.applib.services.publishing.log;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.publishing.spi.EntityChanges;
 import org.apache.isis.applib.services.publishing.spi.EntityChangesSubscriber;
 import org.apache.isis.applib.util.schema.ChangesDtoUtils;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityPropertyChangeLogger.java b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityPropertyChangeLogger.java
index 346d16f..6526611 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityPropertyChangeLogger.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/EntityPropertyChangeLogger.java
@@ -21,11 +21,10 @@ package org.apache.isis.applib.services.publishing.log;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.publishing.spi.EntityPropertyChange;
 import org.apache.isis.applib.services.publishing.spi.EntityPropertyChangeSubscriber;
 
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/ExecutionLogger.java b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/ExecutionLogger.java
index f788f11..56cd391 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/ExecutionLogger.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/publishing/log/ExecutionLogger.java
@@ -21,11 +21,10 @@ package org.apache.isis.applib.services.publishing.log;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.iactn.Execution;
 import org.apache.isis.applib.services.publishing.spi.ExecutionSubscriber;
 import org.apache.isis.applib.util.schema.InteractionDtoUtils;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java b/api/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java
index 238ac52..7aacdee 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java
@@ -29,7 +29,6 @@ import javax.inject.Named;
 import org.springframework.beans.factory.DisposableBean;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.InteractionScope;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/session/SessionLoggingServiceLogging.java b/api/applib/src/main/java/org/apache/isis/applib/services/session/SessionLoggingServiceLogging.java
index cbda347..eef5a1a 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/session/SessionLoggingServiceLogging.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/session/SessionLoggingServiceLogging.java
@@ -24,7 +24,6 @@ import javax.annotation.Priority;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/sudo/SudoService.java b/api/applib/src/main/java/org/apache/isis/applib/services/sudo/SudoService.java
index c155089..021bd26 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/sudo/SudoService.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/sudo/SudoService.java
@@ -27,7 +27,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/user/UserService.java b/api/applib/src/main/java/org/apache/isis/applib/services/user/UserService.java
index e7e3224..b6e7f94 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/user/UserService.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/user/UserService.java
@@ -26,11 +26,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.iactnlayer.InteractionContext;
 import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
 import org.apache.isis.applib.services.sudo.SudoService;
diff --git a/core/config/src/main/java/org/apache/isis/core/config/beans/IsisBeanTypeRegistryDefault.java b/core/config/src/main/java/org/apache/isis/core/config/beans/IsisBeanTypeRegistryDefault.java
index df3f978..9dfce0a 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/beans/IsisBeanTypeRegistryDefault.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/beans/IsisBeanTypeRegistryDefault.java
@@ -29,11 +29,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.collections._Maps;
diff --git a/core/config/src/main/java/org/apache/isis/core/config/datasources/DataSourceIntrospectionService.java b/core/config/src/main/java/org/apache/isis/core/config/datasources/DataSourceIntrospectionService.java
index b99a9be..3886388 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/datasources/DataSourceIntrospectionService.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/datasources/DataSourceIntrospectionService.java
@@ -30,7 +30,6 @@ import javax.sql.DataSource;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/config/src/main/java/org/apache/isis/core/config/viewer/wicket/WebAppContextPath.java b/core/config/src/main/java/org/apache/isis/core/config/viewer/wicket/WebAppContextPath.java
index 99df899..f7b5c80 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/viewer/wicket/WebAppContextPath.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/viewer/wicket/WebAppContextPath.java
@@ -27,11 +27,10 @@ import javax.annotation.Priority;
 import javax.inject.Named;
 import javax.inject.Singleton;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.commons.internal.resources._Resources;
 
diff --git a/core/interaction/src/main/java/org/apache/isis/core/interaction/integration/InteractionAwareTransactionalBoundaryHandler.java b/core/interaction/src/main/java/org/apache/isis/core/interaction/integration/InteractionAwareTransactionalBoundaryHandler.java
index 0bc9e0b..d8c8056 100644
--- a/core/interaction/src/main/java/org/apache/isis/core/interaction/integration/InteractionAwareTransactionalBoundaryHandler.java
+++ b/core/interaction/src/main/java/org/apache/isis/core/interaction/integration/InteractionAwareTransactionalBoundaryHandler.java
@@ -27,15 +27,14 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.PlatformTransactionManager;
 import org.springframework.transaction.TransactionDefinition;
 import org.springframework.transaction.support.TransactionTemplate;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
-import org.apache.isis.commons.collections.Can;
 import org.apache.isis.applib.services.iactnlayer.ThrowingRunnable;
+import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.debug._Probe;
 import org.apache.isis.core.interaction.session.IsisInteraction;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/ObjectManagerDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/ObjectManagerDefault.java
index 170c36f..af991f5 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/ObjectManagerDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/ObjectManagerDefault.java
@@ -23,11 +23,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.core.metamodel.context.MetaModelContext;
 import org.apache.isis.core.metamodel.objectmanager.create.ObjectCreator;
 import org.apache.isis.core.metamodel.objectmanager.detach.ObjectDetacher;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceInjectorDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceInjectorDefault.java
index 5c6e25e..0bfe697 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceInjectorDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceInjectorDefault.java
@@ -18,20 +18,17 @@
  */
 package org.apache.isis.core.metamodel.services;
 
-import javax.annotation.Nullable;
-import javax.annotation.Priority;
-import javax.inject.Inject;
-import javax.inject.Named;
-
+import lombok.RequiredArgsConstructor;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
+import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
-import org.apache.isis.applib.services.inject.ServiceInjector;
-
-import lombok.RequiredArgsConstructor;
+import javax.annotation.Nullable;
+import javax.annotation.Priority;
+import javax.inject.Inject;
+import javax.inject.Named;
 
 /**
  *
@@ -48,7 +45,7 @@ public class ServiceInjectorDefault implements ServiceInjector {
     private final AutowireCapableBeanFactory autowireCapableBeanFactory;
 
     @Override
-    public <T> @Nullable T injectServicesInto(final @Nullable T domainObject) {
+    public <T> T injectServicesInto(final @Nullable T domainObject) {
 
         if(domainObject!=null) {
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java
index f5f5a28..7c49484 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java
@@ -18,31 +18,12 @@
  */
 package org.apache.isis.core.metamodel.services.appfeat;
 
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.OptionalInt;
-import java.util.SortedMap;
-import java.util.function.BiConsumer;
-import java.util.stream.Collectors;
-
-import javax.annotation.Nullable;
-import javax.inject.Inject;
-import javax.inject.Named;
-
+import lombok.NonNull;
+import lombok.extern.log4j.Log4j2;
+import lombok.val;
 import org.apache.isis.applib.annotation.PriorityPrecedence;
-import org.springframework.context.event.EventListener;
-import org.springframework.stereotype.Service;
-
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.services.appfeat.ApplicationFeature;
-import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
-import org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository;
-import org.apache.isis.applib.services.appfeat.ApplicationFeatureSort;
-import org.apache.isis.applib.services.appfeat.ApplicationMemberSort;
+import org.apache.isis.applib.services.appfeat.*;
 import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.config.IsisConfiguration;
@@ -60,10 +41,16 @@ import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
 import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
+import org.springframework.context.event.EventListener;
+import org.springframework.core.annotation.Order;
+import org.springframework.stereotype.Service;
 
-import lombok.NonNull;
-import lombok.val;
-import lombok.extern.log4j.Log4j2;
+import javax.annotation.Nullable;
+import javax.inject.Inject;
+import javax.inject.Named;
+import java.util.*;
+import java.util.function.BiConsumer;
+import java.util.stream.Collectors;
 
 @Service
 @Named("isis.metamodel.ApplicationFeatureRepositoryDefault")
@@ -92,7 +79,7 @@ implements ApplicationFeatureRepository {
     }
 
     // -- init
-    @javax.annotation.Priority(PriorityPrecedence.MIDPOINT)
+    @Order(PriorityPrecedence.MIDPOINT)
     @EventListener(MetamodelEvent.class)
     public void onMetamodelEvent(MetamodelEvent event) {
         if (event.isPostMetamodel()
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/events/MetamodelEventService.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/events/MetamodelEventService.java
index 42a6af7..e5245c8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/events/MetamodelEventService.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/events/MetamodelEventService.java
@@ -22,12 +22,11 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.context.ApplicationEventPublisher;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.events.domain.ActionDomainEvent;
 import org.apache.isis.applib.events.domain.CollectionDomainEvent;
 import org.apache.isis.applib.events.domain.PropertyDomainEvent;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/exceprecog/ExceptionRecognizerForRecoverableException.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/exceprecog/ExceptionRecognizerForRecoverableException.java
index 6cc5438..834d185 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/exceprecog/ExceptionRecognizerForRecoverableException.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/exceprecog/ExceptionRecognizerForRecoverableException.java
@@ -22,11 +22,10 @@ package org.apache.isis.core.metamodel.services.exceprecog;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.exceptions.RecoverableException;
 import org.apache.isis.applib.services.exceprecog.Category;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizer;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
index bf7f908..439ce98 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
@@ -29,11 +29,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.layout.grid.Grid;
 import org.apache.isis.applib.services.grid.GridLoaderService;
 import org.apache.isis.applib.services.message.MessageService;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridServiceDefault.java
index 7b02c7b..cafdf6b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridServiceDefault.java
@@ -18,19 +18,8 @@
  */
 package org.apache.isis.core.metamodel.services.grid;
 
-import java.util.Collection;
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.annotation.Priority;
-import javax.inject.Inject;
-import javax.inject.Named;
-
+import lombok.val;
 import org.apache.isis.applib.annotation.PriorityPrecedence;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
-import org.springframework.stereotype.Service;
-
 import org.apache.isis.applib.layout.grid.Grid;
 import org.apache.isis.applib.services.grid.GridLoaderService;
 import org.apache.isis.applib.services.grid.GridService;
@@ -38,8 +27,15 @@ import org.apache.isis.applib.services.grid.GridSystemService;
 import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Sets;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Service;
 
-import lombok.val;
+import javax.annotation.Priority;
+import javax.inject.Inject;
+import javax.inject.Named;
+import java.util.Collection;
+import java.util.List;
+import java.util.stream.Collectors;
 
 @Service
 @Named("isis.metamodel.GridServiceDefault")
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/bootstrap3/GridSystemServiceBootstrap.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/bootstrap3/GridSystemServiceBootstrap.java
index 4c22871..db2b9fa 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/bootstrap3/GridSystemServiceBootstrap.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/bootstrap3/GridSystemServiceBootstrap.java
@@ -32,7 +32,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.ActionLayout;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java
index 69540a1..42502ef 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java
@@ -28,7 +28,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java
index f8dc2be..8301d50 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java
@@ -29,7 +29,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/tablecol/TableColumnOrderServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/tablecol/TableColumnOrderServiceDefault.java
index a95a8f6..a77e196 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/tablecol/TableColumnOrderServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/tablecol/TableColumnOrderServiceDefault.java
@@ -24,7 +24,6 @@ import javax.annotation.Priority;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java
index f46c94b..47c17b9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java
@@ -23,11 +23,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.title.TitleService;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.core.metamodel.objectmanager.ObjectManager;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ProgrammingModelServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ProgrammingModelServiceDefault.java
index 3d5e5ea..85fb092 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ProgrammingModelServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ProgrammingModelServiceDefault.java
@@ -23,7 +23,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java
index 545a1ad..a37a81d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java
@@ -38,7 +38,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/events/MetamodelEventService.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/events/MetamodelEventService.java
index 7a8d2b1..9034e5c 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/events/MetamodelEventService.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/events/MetamodelEventService.java
@@ -22,12 +22,11 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.confview.ConfigurationViewService;
 import org.apache.isis.applib.services.eventbus.EventBusService;
 import org.apache.isis.core.metamodel.events.MetamodelEvent;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/email/EmailServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/email/EmailServiceDefault.java
index ee45e94..cf607b1 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/email/EmailServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/email/EmailServiceDefault.java
@@ -32,11 +32,10 @@ import org.apache.commons.mail.DefaultAuthenticator;
 import org.apache.commons.mail.EmailException;
 import org.apache.commons.mail.ImageHtmlEmail;
 import org.apache.commons.mail.resolver.DataSourceClassPathResolver;
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.email.EmailService;
 import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.core.config.IsisConfiguration;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/executor/MemberExecutorServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/executor/MemberExecutorServiceDefault.java
index f442573..027f117 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/executor/MemberExecutorServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/executor/MemberExecutorServiceDefault.java
@@ -28,7 +28,6 @@ import javax.inject.Named;
 import javax.inject.Provider;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java
index 9bfb4c8..ca2d02b 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java
@@ -19,9 +19,6 @@
 
 package org.apache.isis.core.runtimeservices.factory;
 
-import static org.apache.isis.commons.internal.reflection._Reflect.Filter.paramAssignableFrom;
-import static org.apache.isis.commons.internal.reflection._Reflect.Filter.paramCount;
-
 import java.lang.reflect.InvocationTargetException;
 
 import javax.annotation.Nullable;
@@ -30,22 +27,24 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.factory.FactoryService;
+import org.apache.isis.applib.services.iactnlayer.InteractionService;
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.commons.internal.reflection._Reflect;
 import org.apache.isis.core.config.environment.IsisSystemEnvironment;
-import org.apache.isis.applib.services.iactnlayer.InteractionService;
 import org.apache.isis.core.metamodel.facets.object.mixin.MixinFacet;
 import org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
 
+import static org.apache.isis.commons.internal.reflection._Reflect.Filter.paramAssignableFrom;
+import static org.apache.isis.commons.internal.reflection._Reflect.Filter.paramCount;
+
 import lombok.NonNull;
 import lombok.val;
 
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java
index 7f660d2..5070ebf 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java
@@ -26,11 +26,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.i18n.LocaleProvider;
 import org.apache.isis.applib.services.i18n.Mode;
 import org.apache.isis.applib.services.i18n.TranslationContext;
@@ -39,8 +38,8 @@ import org.apache.isis.applib.services.i18n.TranslationsResolver;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._Lazy;
-import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 
 import lombok.val;
 
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/interaction/InteractionDtoFactoryDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/interaction/InteractionDtoFactoryDefault.java
index 2fd76b9..5c7ae44 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/interaction/InteractionDtoFactoryDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/interaction/InteractionDtoFactoryDefault.java
@@ -25,11 +25,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.iactn.Interaction;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java
index b18e4c8..264555c 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java
@@ -24,19 +24,18 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.core.io.AbstractResource;
 import org.springframework.core.io.ClassPathResource;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.layout.menubars.bootstrap3.BS3MenuBars;
 import org.apache.isis.applib.services.jaxb.JaxbService;
 import org.apache.isis.applib.services.menu.MenuBarsLoaderService;
 import org.apache.isis.commons.internal.base._Strings;
-import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.viewer.wicket.WebAppContextPath;
 
 import lombok.val;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/publish/ExecutionPublisherDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/publish/ExecutionPublisherDefault.java
index d215861..b22c07e 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/publish/ExecutionPublisherDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/publish/ExecutionPublisherDefault.java
@@ -29,17 +29,16 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.InteractionScope;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.iactn.Execution;
+import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
 import org.apache.isis.applib.services.publishing.spi.ExecutionSubscriber;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.having.HasEnabling;
-import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
 import org.apache.isis.core.metamodel.services.publishing.ExecutionPublisher;
 
 import lombok.RequiredArgsConstructor;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/recognizer/ExceptionRecognizerServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/recognizer/ExceptionRecognizerServiceDefault.java
index 60e3a3c..5db22b3 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/recognizer/ExceptionRecognizerServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/recognizer/ExceptionRecognizerServiceDefault.java
@@ -24,14 +24,13 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizer;
-import org.apache.isis.applib.services.exceprecog.Recognition;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizerService;
+import org.apache.isis.applib.services.exceprecog.Recognition;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._Lazy;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/repository/RepositoryServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/repository/RepositoryServiceDefault.java
index 2d1e7ff..248bdf1 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/repository/RepositoryServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/repository/RepositoryServiceDefault.java
@@ -33,7 +33,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/routing/RoutingServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/routing/RoutingServiceDefault.java
index bc0521c..d92a959 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/routing/RoutingServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/routing/RoutingServiceDefault.java
@@ -23,7 +23,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/scratchpad/ScratchpadDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/scratchpad/ScratchpadDefault.java
index f0fda3e..52f44e0 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/scratchpad/ScratchpadDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/scratchpad/ScratchpadDefault.java
@@ -23,12 +23,11 @@ import java.util.Map;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.InteractionScope;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.scratchpad.Scratchpad;
 import org.apache.isis.commons.internal.collections._Maps;
 
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/session/InteractionServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/session/InteractionServiceDefault.java
index c7c6fa6..0a3ba9a 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/session/InteractionServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/session/InteractionServiceDefault.java
@@ -33,18 +33,18 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.context.event.ContextRefreshedEvent;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.support.TransactionSynchronizationManager;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.clock.ClockService;
 import org.apache.isis.applib.services.iactn.Interaction;
 import org.apache.isis.applib.services.iactnlayer.InteractionContext;
 import org.apache.isis.applib.services.iactnlayer.InteractionLayer;
+import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
 import org.apache.isis.applib.services.iactnlayer.InteractionService;
 import org.apache.isis.applib.services.iactnlayer.ThrowingRunnable;
 import org.apache.isis.applib.services.inject.ServiceInjector;
@@ -61,7 +61,6 @@ import org.apache.isis.core.interaction.integration.InteractionAwareTransactiona
 import org.apache.isis.core.interaction.scope.InteractionScopeAware;
 import org.apache.isis.core.interaction.scope.InteractionScopeBeanFactoryPostProcessor;
 import org.apache.isis.core.interaction.scope.InteractionScopeLifecycleHandler;
-import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
 import org.apache.isis.core.interaction.session.IsisInteraction;
 import org.apache.isis.core.metamodel.services.publishing.CommandPublisher;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/transaction/TransactionServiceSpring.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/transaction/TransactionServiceSpring.java
index bdf8c0e..3a9a4cf 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/transaction/TransactionServiceSpring.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/transaction/TransactionServiceSpring.java
@@ -27,9 +27,7 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.context.event.EventListener;
 import org.springframework.dao.DataAccessException;
 import org.springframework.dao.support.PersistenceExceptionTranslator;
@@ -40,7 +38,9 @@ import org.springframework.transaction.TransactionStatus;
 import org.springframework.transaction.support.TransactionSynchronizationManager;
 import org.springframework.transaction.support.TransactionTemplate;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.iactn.Interaction;
+import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
 import org.apache.isis.applib.services.xactn.TransactionId;
 import org.apache.isis.applib.services.xactn.TransactionService;
 import org.apache.isis.applib.services.xactn.TransactionState;
@@ -49,7 +49,6 @@ import org.apache.isis.commons.functional.Result;
 import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.interaction.scope.InteractionScopeAware;
-import org.apache.isis.applib.services.iactnlayer.InteractionLayerTracker;
 import org.apache.isis.core.transaction.events.TransactionAfterCompletionEvent;
 
 import lombok.val;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/urlencoding/UrlEncodingServiceWithCompression.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/urlencoding/UrlEncodingServiceWithCompression.java
index 36da447..3d50e5b 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/urlencoding/UrlEncodingServiceWithCompression.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/urlencoding/UrlEncodingServiceWithCompression.java
@@ -23,11 +23,10 @@ import java.nio.charset.StandardCharsets;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
 import org.apache.isis.commons.internal.base._Bytes;
 import org.apache.isis.commons.internal.base._Strings;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/userreg/EmailNotificationServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/userreg/EmailNotificationServiceDefault.java
index e44b4ad..10a2494 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/userreg/EmailNotificationServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/userreg/EmailNotificationServiceDefault.java
@@ -33,7 +33,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/wrapper/WrapperFactoryDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/wrapper/WrapperFactoryDefault.java
index eb7d131..21a29f8 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/wrapper/WrapperFactoryDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/wrapper/WrapperFactoryDefault.java
@@ -35,12 +35,11 @@ import javax.inject.Inject;
 import javax.inject.Named;
 import javax.inject.Provider;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.command.Command;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xml/XmlServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xml/XmlServiceDefault.java
index 8e0e724..9bbc3c7 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xml/XmlServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xml/XmlServiceDefault.java
@@ -32,9 +32,7 @@ import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
 import javax.xml.transform.stream.StreamSource;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
@@ -42,6 +40,7 @@ import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import org.w3c.dom.Text;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.exceptions.UnrecoverableException;
 import org.apache.isis.applib.services.xml.XmlService;
 import org.apache.isis.commons.internal.codec._DocumentFactories;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xmlsnapshot/XmlSnapshotServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xmlsnapshot/XmlSnapshotServiceDefault.java
index f99e173..7b6bb12 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xmlsnapshot/XmlSnapshotServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/xmlsnapshot/XmlSnapshotServiceDefault.java
@@ -29,7 +29,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 import org.w3c.dom.Element;
 
diff --git a/core/security/src/main/java/org/apache/isis/core/security/authentication/manager/AuthenticationManager.java b/core/security/src/main/java/org/apache/isis/core/security/authentication/manager/AuthenticationManager.java
index a05abf2..6336693 100644
--- a/core/security/src/main/java/org/apache/isis/core/security/authentication/manager/AuthenticationManager.java
+++ b/core/security/src/main/java/org/apache/isis/core/security/authentication/manager/AuthenticationManager.java
@@ -27,13 +27,12 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.context.annotation.Lazy;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.exceptions.unrecoverable.NoAuthenticatorException;
 import org.apache.isis.applib.services.iactnlayer.InteractionContext;
 import org.apache.isis.applib.services.iactnlayer.InteractionService;
diff --git a/core/security/src/main/java/org/apache/isis/core/security/authentication/standard/RandomCodeGeneratorDefault.java b/core/security/src/main/java/org/apache/isis/core/security/authentication/standard/RandomCodeGeneratorDefault.java
index 0cc9187..f76a1c1 100644
--- a/core/security/src/main/java/org/apache/isis/core/security/authentication/standard/RandomCodeGeneratorDefault.java
+++ b/core/security/src/main/java/org/apache/isis/core/security/authentication/standard/RandomCodeGeneratorDefault.java
@@ -23,11 +23,11 @@ import java.security.SecureRandom;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Component;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
+
 @Component
 @Named("isis.security.RandomCodeGenerator10Chars")
 @Priority(PriorityPrecedence.LATE)
diff --git a/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java b/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java
index aecc2ad..2b28215 100644
--- a/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java
+++ b/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java
@@ -30,14 +30,13 @@ import javax.inject.Inject;
 import javax.inject.Named;
 import javax.inject.Provider;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.EntityChangeKind;
 import org.apache.isis.applib.annotation.InteractionScope;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.events.lifecycle.AbstractLifecycleEvent;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.eventbus.EventBusService;
diff --git a/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/events/TimestampService.java b/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/events/TimestampService.java
index 6c0932e..f5a6be7 100644
--- a/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/events/TimestampService.java
+++ b/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/events/TimestampService.java
@@ -22,16 +22,15 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Service;
 
-import org.apache.isis.applib.services.clock.ClockService;
-import org.apache.isis.applib.services.user.UserService;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.mixins.updates.OnUpdatedAt;
 import org.apache.isis.applib.mixins.updates.OnUpdatedBy;
+import org.apache.isis.applib.services.clock.ClockService;
+import org.apache.isis.applib.services.user.UserService;
 
 import lombok.val;
 
diff --git a/core/webapp/src/main/java/org/apache/isis/core/webapp/confmenu/ConfigurationViewServiceDefault.java b/core/webapp/src/main/java/org/apache/isis/core/webapp/confmenu/ConfigurationViewServiceDefault.java
index d642124..3993d82 100644
--- a/core/webapp/src/main/java/org/apache/isis/core/webapp/confmenu/ConfigurationViewServiceDefault.java
+++ b/core/webapp/src/main/java/org/apache/isis/core/webapp/confmenu/ConfigurationViewServiceDefault.java
@@ -32,12 +32,11 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.confview.ConfigurationProperty;
 import org.apache.isis.applib.services.confview.ConfigurationViewService;
 import org.apache.isis.commons.collections.Can;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/urlencoding/UrlEncodingServiceNaiveInMemory.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/urlencoding/UrlEncodingServiceNaiveInMemory.java
index e6d510b..33dcd19 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/urlencoding/UrlEncodingServiceNaiveInMemory.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/urlencoding/UrlEncodingServiceNaiveInMemory.java
@@ -26,11 +26,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
 import org.apache.isis.commons.internal.base._Bytes;
 import org.apache.isis.commons.internal.base._NullSafe;
diff --git a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/config/DnSettings.java b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/config/DnSettings.java
index d875bd0..98ab399 100644
--- a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/config/DnSettings.java
+++ b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/config/DnSettings.java
@@ -25,12 +25,12 @@ import java.util.Map;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.datanucleus.PropertyNames;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Primary;
+
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 
 import lombok.Getter;
 import lombok.Setter;
diff --git a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/jdosupport/JdoSupportServiceDefault.java b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/jdosupport/JdoSupportServiceDefault.java
index d06e73c..9a3d5bf 100644
--- a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/jdosupport/JdoSupportServiceDefault.java
+++ b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/jdosupport/JdoSupportServiceDefault.java
@@ -38,12 +38,11 @@ import javax.jdo.Query;
 import javax.jdo.datastore.JDOConnection;
 import javax.jdo.query.BooleanExpression;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.datanucleus.store.rdbms.RDBMSPropertyNames;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.exceptions.UnrecoverableException;
 import org.apache.isis.applib.exceptions.unrecoverable.ObjectPersistenceException;
 import org.apache.isis.commons.internal.collections._Lists;
diff --git a/persistence/jpa/eclipselink/src/main/java/org/apache/isis/persistence/jpa/eclipselink/config/ElSettings.java b/persistence/jpa/eclipselink/src/main/java/org/apache/isis/persistence/jpa/eclipselink/config/ElSettings.java
index 0623922..9d334f0 100644
--- a/persistence/jpa/eclipselink/src/main/java/org/apache/isis/persistence/jpa/eclipselink/config/ElSettings.java
+++ b/persistence/jpa/eclipselink/src/main/java/org/apache/isis/persistence/jpa/eclipselink/config/ElSettings.java
@@ -27,13 +27,12 @@ import javax.inject.Inject;
 import javax.inject.Named;
 import javax.inject.Provider;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.eclipse.persistence.config.PersistenceUnitProperties;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Primary;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.commons.internal.base._Lazy;
 import org.apache.isis.persistence.jpa.eclipselink.inject.BeanManagerForEntityListeners;
diff --git a/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java b/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java
index 2f51f2e..436acf6 100644
--- a/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java
+++ b/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java
@@ -25,15 +25,12 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Primary;
 import org.springframework.core.OrderComparator;
-import org.springframework.core.Ordered;
 import org.springframework.core.annotation.AnnotationAwareOrderComparator;
 import org.springframework.core.annotation.Order;
 import org.springframework.stereotype.Service;
@@ -46,6 +43,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import org.apache.isis.applib.annotation.DomainObject;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.core.config.presets.IsisPresets;
diff --git a/testing/fakedata/applib/src/main/java/org/apache/isis/testing/fakedata/applib/services/FakeDataService.java b/testing/fakedata/applib/src/main/java/org/apache/isis/testing/fakedata/applib/services/FakeDataService.java
index 15cd7e6..6d40ef1 100644
--- a/testing/fakedata/applib/src/main/java/org/apache/isis/testing/fakedata/applib/services/FakeDataService.java
+++ b/testing/fakedata/applib/src/main/java/org/apache/isis/testing/fakedata/applib/services/FakeDataService.java
@@ -30,11 +30,10 @@ import com.github.javafaker.Faker;
 import com.github.javafaker.service.FakeValuesService;
 import com.github.javafaker.service.RandomService;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.clock.ClockService;
 import org.apache.isis.applib.services.repository.RepositoryService;
 
diff --git a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/modules/ModuleWithFixturesService.java b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/modules/ModuleWithFixturesService.java
index c9b2484..de2b122 100644
--- a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/modules/ModuleWithFixturesService.java
+++ b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/modules/ModuleWithFixturesService.java
@@ -34,7 +34,6 @@ import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.context.ConfigurableApplicationContext;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Import;
-import org.springframework.context.annotation.Primary;
 import org.springframework.context.event.ContextRefreshedEvent;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Service;
diff --git a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/queryresultscache/QueryResultsCacheControlForFixtures.java b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/queryresultscache/QueryResultsCacheControlForFixtures.java
index 8fb7aa7..87cf038 100644
--- a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/queryresultscache/QueryResultsCacheControlForFixtures.java
+++ b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/queryresultscache/QueryResultsCacheControlForFixtures.java
@@ -21,12 +21,11 @@ package org.apache.isis.testing.fixtures.applib.queryresultscache;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.queryresultscache.QueryResultsCache;
 import org.apache.isis.applib.services.queryresultscache.QueryResultsCacheControl;
 import org.apache.isis.testing.fixtures.applib.events.FixturesInstalledEvent;
diff --git a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/InitialFixtureScriptsInstaller.java b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/InitialFixtureScriptsInstaller.java
index e45add1..f94f3eb 100644
--- a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/InitialFixtureScriptsInstaller.java
+++ b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/InitialFixtureScriptsInstaller.java
@@ -18,21 +18,23 @@
  */
 package org.apache.isis.testing.fixtures.applib.services;
 
-import lombok.extern.log4j.Log4j2;
+import java.lang.reflect.InvocationTargetException;
+
+import javax.annotation.Priority;
+import javax.inject.Inject;
+import javax.inject.Named;
+
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.context.event.EventListener;
+import org.springframework.stereotype.Service;
+
 import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.events.MetamodelEvent;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
-import org.springframework.context.event.EventListener;
-import org.springframework.stereotype.Service;
 
-import javax.annotation.Priority;
-import javax.inject.Inject;
-import javax.inject.Named;
-import java.lang.reflect.InvocationTargetException;
+import lombok.extern.log4j.Log4j2;
 
 /**
  * @since 2.0 {@index}
diff --git a/valuetypes/sse/ui/wicket/src/main/java/org/apache/isis/valuetypes/sse/ui/wkt/services/SseServiceDefault.java b/valuetypes/sse/ui/wicket/src/main/java/org/apache/isis/valuetypes/sse/ui/wkt/services/SseServiceDefault.java
index dc922a9..7874c69 100644
--- a/valuetypes/sse/ui/wicket/src/main/java/org/apache/isis/valuetypes/sse/ui/wkt/services/SseServiceDefault.java
+++ b/valuetypes/sse/ui/wicket/src/main/java/org/apache/isis/valuetypes/sse/ui/wkt/services/SseServiceDefault.java
@@ -35,11 +35,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.iactnlayer.InteractionService;
 import org.apache.isis.applib.services.xactn.TransactionService;
 import org.apache.isis.commons.internal.collections._Lists;
diff --git a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/userprofile/UserProfileUiModelProviderDefault.java b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/userprofile/UserProfileUiModelProviderDefault.java
index f70b867..b8b7efb 100644
--- a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/userprofile/UserProfileUiModelProviderDefault.java
+++ b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/userprofile/UserProfileUiModelProviderDefault.java
@@ -22,17 +22,16 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.i18n.TranslationContext;
 import org.apache.isis.applib.services.i18n.TranslationService;
 import org.apache.isis.applib.services.user.UserMemento;
 import org.apache.isis.applib.services.user.UserService;
-import org.apache.isis.viewer.common.applib.services.userprof.UserProfileUiModelProvider;
 import org.apache.isis.viewer.common.applib.services.userprof.UserProfileUiModel;
+import org.apache.isis.viewer.common.applib.services.userprof.UserProfileUiModelProvider;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoder.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoder.java
index 74d8dbb..bfe3471 100644
--- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoder.java
+++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoder.java
@@ -30,11 +30,10 @@ import javax.inject.Singleton;
 
 import com.fasterxml.jackson.databind.node.NullNode;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.collections._Maps;
diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/RepresentationService.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/RepresentationService.java
index 4985bb1..6704901 100644
--- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/RepresentationService.java
+++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/RepresentationService.java
@@ -27,7 +27,6 @@ import javax.inject.Inject;
 import javax.inject.Named;
 import javax.ws.rs.core.Response;
 
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java
index 90de702..bb163f9 100644
--- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java
+++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java
@@ -30,7 +30,6 @@ import javax.ws.rs.core.Response;
 import javax.ws.rs.core.Response.ResponseBuilder;
 
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.PriorityPrecedence;
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/IsisWicketThemeSupportDefault.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/IsisWicketThemeSupportDefault.java
index 63cf66c..6658035 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/IsisWicketThemeSupportDefault.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/IsisWicketThemeSupportDefault.java
@@ -26,11 +26,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._Lazy;
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistryDefault.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistryDefault.java
index 9b77a07..ee11d31 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistryDefault.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistryDefault.java
@@ -29,14 +29,13 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.wicket.Component;
 import org.apache.wicket.MarkupContainer;
 import org.apache.wicket.model.IModel;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Multimaps;
 import org.apache.isis.commons.internal.collections._Multimaps.ListMultimap;
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/ImageResourceCacheClassPath.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/ImageResourceCacheClassPath.java
index 9da2aac..d93d20f 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/ImageResourceCacheClassPath.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/ImageResourceCacheClassPath.java
@@ -29,13 +29,12 @@ import java.util.Map;
 import javax.annotation.Priority;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.wicket.request.resource.PackageResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.core.metamodel.commons.ClassUtil;
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/WicketViewerSettingsDefault.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/WicketViewerSettingsDefault.java
index 4255a09..fd6efa4 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/WicketViewerSettingsDefault.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/WicketViewerSettingsDefault.java
@@ -23,11 +23,10 @@ import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import org.apache.isis.applib.annotation.PriorityPrecedence;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.viewer.wicket.model.common.CommonContextUtils;