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

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 0f4de40846330e31256a73ab7be813d3afc49158
Author: Andi Huber <[email protected]>
AuthorDate: Fri Nov 4 11:48:50 2022 +0100

    ISIS-3272: move config section 'Application' from viewer/wicket to
    viewer/common
---
 .../MenuBarsLoaderService_010-implementation.adoc  |   8 +-
 .../core/config/CausewayConfiguration.java         | 210 +++++++++++----------
 .../bootstrap/MenuBarsLoaderServiceBootstrap.java  |   2 +-
 .../confmenu/ConfigurationViewServiceDefault.java  |   4 +-
 .../_infra/resources/AsciiDocReaderService.java    |   2 +-
 .../resources/MarkupVariableResolverService.java   |   8 +-
 .../demo/domain/src/main/resources/application.yml |   5 +-
 .../vaadin/ui/pages/login/VaadinLoginView.java     |  10 +-
 .../branding/BrandingUiServiceDefault.java         |   4 +-
 .../viewer/wicket/model/models/AboutModel.java     |   6 +-
 .../wicket/model/models/HasCommonContext.java      |   5 +
 .../wicket/ui/components/about/AboutPanel.java     |   2 +-
 .../wicket/ui/components/footer/FooterPanel.java   |   2 +-
 .../viewer/wicket/ui/pages/PageAbstract.java       |   8 +-
 .../viewer/wicket/ui/pages/WebPageBase.java        |   2 +-
 .../accmngt/AccountManagementPageAbstract.java     |   6 +-
 .../password_reset/PasswordResetEmailPanel.java    |   2 +-
 .../accmngt/signup/RegistrationFormPanel.java      |   2 +-
 .../wicket/ui/pages/mmverror/MmvErrorPage.java     |   8 +-
 19 files changed, 153 insertions(+), 143 deletions(-)

diff --git 
a/antora/components/refguide-index/modules/applib/pages/index/services/menu/hooks/MenuBarsLoaderService_010-implementation.adoc
 
b/antora/components/refguide-index/modules/applib/pages/index/services/menu/hooks/MenuBarsLoaderService_010-implementation.adoc
index 99bee0456a..ec7406bdc4 100644
--- 
a/antora/components/refguide-index/modules/applib/pages/index/services/menu/hooks/MenuBarsLoaderService_010-implementation.adoc
+++ 
b/antora/components/refguide-index/modules/applib/pages/index/services/menu/hooks/MenuBarsLoaderService_010-implementation.adoc
@@ -8,7 +8,7 @@
 The framework provides a default implementation of this service, namely 
`o.a.i.core.runtimeservices.menubars.MenuBarsLoaderServiceDefault`.
 This searches for a classpath resource `menubars.layout.xml`, located ni the 
root package.
 
-If using the Wicket viewer, the location of this file (and its name) can be 
overridden using the `causeway.viewer.wicket.application.menubars-layout-xml` 
configuration property.
+If using the Wicket viewer, the location of this file (and its name) can be 
overridden using the `causeway.viewer.wicket.application.menubars-layout-file` 
configuration property.
 
 For example:
 
@@ -17,9 +17,9 @@ For example:
 ----
 causeway:
   viewer:
-    wicket:
+    common:
       application:
-        menubars-layout-xml: demoapp/dom/menubars.layout.xml
+        menubars-layout-file: demoapp/dom/menubars.layout.xml
 ----
 
-The default implementaiton supports reloading only in prototype mode.
+The default implementation supports reloading only in prototype mode.
diff --git 
a/core/config/src/main/java/org/apache/causeway/core/config/CausewayConfiguration.java
 
b/core/config/src/main/java/org/apache/causeway/core/config/CausewayConfiguration.java
index 0a0f08dcd8..80493968ae 100644
--- 
a/core/config/src/main/java/org/apache/causeway/core/config/CausewayConfiguration.java
+++ 
b/core/config/src/main/java/org/apache/causeway/core/config/CausewayConfiguration.java
@@ -1851,6 +1851,113 @@ public class CausewayConfiguration {
     private final Viewer viewer = new Viewer();
     @Data
     public static class Viewer {
+
+        private final Common common = new Common();
+        @Data
+        public static class Common {
+
+            private final Application application = new Application();
+            @Data
+            public static class Application {
+
+                /**
+                 * Label used on the about page.
+                 */
+                private String about;
+
+                /**
+                 * Either the location of the image file (relative to the 
class-path resource root),
+                 * or an absolute URL.
+                 *
+                 * <p>
+                 * This is rendered on the header panel. An image with a size 
of 160x40 works well.
+                 * If not specified, the application.name is used instead.
+                 * </p>
+                 */
+                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
+                private Optional<String> brandLogoHeader = Optional.empty();
+
+                /**
+                 * Either the location of the image file (relative to the 
class-path resource root),
+                 * or an absolute URL.
+                 *
+                 * <p>
+                 * This is rendered on the sign-in page. An image with a size 
of 400x40 works well.
+                 * If not specified, the {@link Application#getName() 
application name} is used instead.
+                 * </p>
+                 */
+                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
+                private Optional<String> brandLogoSignin = Optional.empty();
+
+                /**
+                 * URL of file to read any custom CSS, relative to 
<code>static</code> package on the class path.
+                 *
+                 * <p>
+                 *     A typical value is <code>css/application.css</code>.  
This will result in this file being read
+                 *     from the <code>static/css</code> directory (because 
static resources such as CSS are mounted by
+                 *     Spring by default under <code>static</code> package).
+                 * </p>
+                 */
+                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
+                private Optional<String> css = Optional.empty();
+
+                /**
+                 * Specifies the URL to use of the favIcon.
+                 *
+                 * <p>
+                 *     This is expected to be a local resource.
+                 * </p>
+                 */
+                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
+                private Optional<String> faviconUrl = Optional.empty();
+
+                /**
+                 */
+                /**
+                 * URL of file to read any custom JavaScript, relative to 
<code>static</code> package on the class path.
+                 *
+                 * <p>
+                 *     A typical value is <code>js/application.js</code>.  
This will result in this file being read
+                 *     from the <code>static/js</code> directory (because 
static resources such as CSS are mounted by
+                 *     Spring by default under <code>static</code> package).
+                 * </p>
+                 */
+                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
+                private Optional<String> js = Optional.empty();
+
+                /**
+                 * Specifies the file name containing the menubars.
+                 *
+                 * <p>
+                 *     This is expected to be a local resource.
+                 * </p>
+                 */
+                @NotNull @NotEmpty
+                private String menubarsLayoutFile = "menubars.layout.xml";
+
+                /**
+                 * Identifies the application on the sign-in page
+                 * (unless a {@link Application#brandLogoSignin sign-in} image 
is configured) and
+                 * on top-left in the header
+                 * (unless a {@link Application#brandLogoHeader header} image 
is configured).
+                 */
+                @NotNull @NotEmpty
+                private String name = "Apache Causeway ™";
+
+                /**
+                 * The version of the application, eg 1.0, 1.1, etc.
+                 *
+                 * <p>
+                 * If present, then this will be shown in the footer on every 
page as well as on the
+                 * about page.
+                 * </p>
+                 */
+                private String version;
+            }
+
+
+        }
+
         private final Restfulobjects restfulobjects = new Restfulobjects();
         @Data
         public static class Restfulobjects {
@@ -2252,109 +2359,6 @@ public class CausewayConfiguration {
              */
             private boolean wicketSourcePlugin = false;
 
-            /**
-             * @deprecated common to all viewers - needs to be moved out of 
Wicket
-             */
-            @Deprecated
-            private final Application application = new Application();
-            @Data
-            public static class Application {
-
-                /**
-                 * Label used on the about page.
-                 */
-                private String about;
-
-                /**
-                 * Either the location of the image file (relative to the 
class-path resource root),
-                 * or an absolute URL.
-                 *
-                 * <p>
-                 * This is rendered on the header panel. An image with a size 
of 160x40 works well.
-                 * If not specified, the application.name is used instead.
-                 * </p>
-                 */
-                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
-                private Optional<String> brandLogoHeader = Optional.empty();
-
-                /**
-                 * Either the location of the image file (relative to the 
class-path resource root),
-                 * or an absolute URL.
-                 *
-                 * <p>
-                 * This is rendered on the sign-in page. An image with a size 
of 400x40 works well.
-                 * If not specified, the {@link Application#getName() 
application name} is used instead.
-                 * </p>
-                 */
-                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
-                private Optional<String> brandLogoSignin = Optional.empty();
-
-                /**
-                 * URL of file to read any custom CSS, relative to 
<code>static</code> package on the class path.
-                 *
-                 * <p>
-                 *     A typical value is <code>css/application.css</code>.  
This will result in this file being read
-                 *     from the <code>static/css</code> directory (because 
static resources such as CSS are mounted by
-                 *     Spring by default under <code>static</code> package).
-                 * </p>
-                 */
-                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
-                private Optional<String> css = Optional.empty();
-
-                /**
-                 * Specifies the URL to use of the favIcon.
-                 *
-                 * <p>
-                 *     This is expected to be a local resource.
-                 * </p>
-                 */
-                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
-                private Optional<String> faviconUrl = Optional.empty();
-
-                /**
-                 */
-                /**
-                 * URL of file to read any custom JavaScript, relative to 
<code>static</code> package on the class path.
-                 *
-                 * <p>
-                 *     A typical value is <code>js/application.js</code>.  
This will result in this file being read
-                 *     from the <code>static/js</code> directory (because 
static resources such as CSS are mounted by
-                 *     Spring by default under <code>static</code> package).
-                 * </p>
-                 */
-                @javax.validation.constraints.Pattern(regexp="^[^/].*$")
-                private Optional<String> js = Optional.empty();
-
-                /**
-                 * Specifies the file name containing the menubars.
-                 *
-                 * <p>
-                 *     This is expected to be a local resource.
-                 * </p>
-                 */
-                @NotNull @NotEmpty
-                private String menubarsLayoutFile = "menubars.layout.xml";
-
-                /**
-                 * Identifies the application on the sign-in page
-                 * (unless a {@link Application#brandLogoSignin sign-in} image 
is configured) and
-                 * on top-left in the header
-                 * (unless a {@link Application#brandLogoHeader header} image 
is configured).
-                 */
-                @NotNull @NotEmpty
-                private String name = "Apache Causeway ™";
-
-                /**
-                 * The version of the application, eg 1.0, 1.1, etc.
-                 *
-                 * <p>
-                 * If present, then this will be shown in the footer on every 
page as well as on the
-                 * about page.
-                 * </p>
-                 */
-                private String version;
-            }
-
             private final BookmarkedPages bookmarkedPages = new 
BookmarkedPages();
             @Data
             public static class BookmarkedPages {
diff --git 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsLoaderServiceBootstrap.java
 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsLoaderServiceBootstrap.java
index 217c5390c5..41d4c89922 100644
--- 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsLoaderServiceBootstrap.java
+++ 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsLoaderServiceBootstrap.java
@@ -72,7 +72,7 @@ implements MenuBarsLoaderService<BSMenuBars> {
         this.jaxbService = jaxbService;
         this.supportsReloading = mmc.getSystemEnvironment().isPrototyping();
 
-        val menubarsLayoutFile = 
mmc.getConfiguration().getViewer().getWicket().getApplication()
+        val menubarsLayoutFile = 
mmc.getConfiguration().getViewer().getCommon().getApplication()
                 .getMenubarsLayoutFile();
         val menubarsLayoutResource = new ClassPathResource(menubarsLayoutFile);
         if(!menubarsLayoutResource.exists()) {
diff --git 
a/core/webapp/src/main/java/org/apache/causeway/core/webapp/confmenu/ConfigurationViewServiceDefault.java
 
b/core/webapp/src/main/java/org/apache/causeway/core/webapp/confmenu/ConfigurationViewServiceDefault.java
index 8dfab6777a..2f0a893654 100644
--- 
a/core/webapp/src/main/java/org/apache/causeway/core/webapp/confmenu/ConfigurationViewServiceDefault.java
+++ 
b/core/webapp/src/main/java/org/apache/causeway/core/webapp/confmenu/ConfigurationViewServiceDefault.java
@@ -109,7 +109,7 @@ implements
         val sb = new StringBuilder();
 
         String head = String.format("APACHE CAUSEWAY %s (%s) ",
-                
configuration.getViewer().getWicket().getApplication().getVersion(),
+                
configuration.getViewer().getCommon().getApplication().getVersion(),
                 systemEnvironment.getDeploymentType().name());
 
         final Map<String, ConfigurationProperty> map = config.get();
@@ -138,7 +138,7 @@ implements
 
     private Map<String, ConfigurationProperty> loadEnvironment() {
         final Map<String, ConfigurationProperty> map = _Maps.newTreeMap();
-        add("Causeway Version", 
configuration.getViewer().getWicket().getApplication().getVersion(), map);
+        add("Causeway Version", 
configuration.getViewer().getCommon().getApplication().getVersion(), map);
         add("Deployment Type", systemEnvironment.getDeploymentType().name(), 
map);
         //add("Unit Testing", ""+systemEnvironment.isUnitTesting(), map);
 
diff --git 
a/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocReaderService.java
 
b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocReaderService.java
index 4cc1789195..5e342c42cb 100644
--- 
a/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocReaderService.java
+++ 
b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocReaderService.java
@@ -66,7 +66,7 @@ public class AsciiDocReaderService {
 
     private String replaceVersion(final String adoc) {
         return adoc.replace("{causeway-version}",
-                
configuration.getViewer().getWicket().getApplication().getVersion());
+                
configuration.getViewer().getCommon().getApplication().getVersion());
     }
 
     private AsciiDoc toAsciiDoc(final StringReference adocRef, final Class<?> 
aClass) {
diff --git 
a/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkupVariableResolverService.java
 
b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkupVariableResolverService.java
index 4eb1ea432b..5b0789022b 100644
--- 
a/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkupVariableResolverService.java
+++ 
b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkupVariableResolverService.java
@@ -39,13 +39,13 @@ public class MarkupVariableResolverService {
     private final Map<String, String> constants;
 
     @Inject
-    public MarkupVariableResolverService(CausewayConfiguration configuration) {
+    public MarkupVariableResolverService(final CausewayConfiguration 
configuration) {
         constants = _Maps.unmodifiable(
                 "SOURCES_CAUSEWAY", 
"https://github.com/apache/causeway/blob/master/core/applib/src/main/java";,
                 "SOURCES_DEMO", 
"https://github.com/apache/causeway/tree/master/examples/demo/domain/src/main/java";,
                 "ISSUES_DEMO", "https://issues.apache.org/jira/";,
                 "CAUSEWAY_VERSION", Optional.ofNullable(
-                        
configuration.getViewer().getWicket().getApplication().getVersion())
+                        
configuration.getViewer().getCommon().getApplication().getVersion())
                         .orElse("unkown-version")
             );
     }
@@ -54,7 +54,7 @@ public class MarkupVariableResolverService {
      * For the given {@code input} replaces '${var-name}' with the variable's 
value.
      * @param input
      */
-    public String resolveVariables(String input) {
+    public String resolveVariables(final String input) {
         val stringRef = _Refs.objectRef(input);
         constants.forEach((k, v)->{
             stringRef.update(string->string.replace(var(k), v));
@@ -62,7 +62,7 @@ public class MarkupVariableResolverService {
         return stringRef.getValueElseDefault(input);
     }
 
-    private String var(String name) {
+    private String var(final String name) {
         return String.format("${%s}", name);
     }
 
diff --git a/examples/demo/domain/src/main/resources/application.yml 
b/examples/demo/domain/src/main/resources/application.yml
index 58a6f4b1ea..52ec794e45 100644
--- a/examples/demo/domain/src/main/resources/application.yml
+++ b/examples/demo/domain/src/main/resources/application.yml
@@ -69,9 +69,9 @@ causeway:
           mode: disabled
 
   viewer:
-    wicket:
+    common:
       application:
-        menubars-layout-xml: demoapp/dom/menubars.layout.xml
+        menubars-layout-file: demoapp/dom/menubars.layout.xml
         favicon-url: images/gift.svg
         brand-logo-header: images/gift_48.png
         brand-logo-signin: images/gift_256.png
@@ -82,6 +82,7 @@ causeway:
         css: css/application.css
         js: scripts/application.js
         about: This application demonstrates many aspects of the Apache 
Causeway programming model, as well as some of the most significant domain 
services and extensions such as the WrapperFactory, security, commands and 
publishing.
+      wicket:
 
       credit:
         - url:  http://causeway.apache.org
diff --git 
a/incubator/viewers/vaadin/ui/src/main/java/org/apache/causeway/incubator/viewer/vaadin/ui/pages/login/VaadinLoginView.java
 
b/incubator/viewers/vaadin/ui/src/main/java/org/apache/causeway/incubator/viewer/vaadin/ui/pages/login/VaadinLoginView.java
index b875c14dd8..8ae9bc05e6 100644
--- 
a/incubator/viewers/vaadin/ui/src/main/java/org/apache/causeway/incubator/viewer/vaadin/ui/pages/login/VaadinLoginView.java
+++ 
b/incubator/viewers/vaadin/ui/src/main/java/org/apache/causeway/incubator/viewer/vaadin/ui/pages/login/VaadinLoginView.java
@@ -88,7 +88,7 @@ public class VaadinLoginView extends VerticalLayout {
 
     // -- HELPER
 
-    private void doLogin(String userName, String secret) {
+    private void doLogin(final String userName, final String secret) {
         val authenticationRequest = new 
AuthenticationRequestPassword(userName, secret);
         if(vaadinAuthenticationHandler.loginToSession(authenticationRequest)) {
             getUI().ifPresent(ui->ui.navigate(MainViewVaa.class));
@@ -98,14 +98,14 @@ public class VaadinLoginView extends VerticalLayout {
     }
 
     /** @deprecated early development only */
+    @Deprecated
     private void doLoginAsSven() {
         doLogin("sven", "pass");
     }
 
-    private void addTitleAndLogo(CausewayConfiguration causewayConfiguration, 
WebAppContextPath webAppContextPath) {
-        //TODO application name/logo borrowed from Wicket's configuration
-        val applicationName = 
causewayConfiguration.getViewer().getWicket().getApplication().getName();
-        val applicationLogo = 
causewayConfiguration.getViewer().getWicket().getApplication().getBrandLogoSignin();
+    private void addTitleAndLogo(final CausewayConfiguration 
causewayConfiguration, final WebAppContextPath webAppContextPath) {
+        val applicationName = 
causewayConfiguration.getViewer().getCommon().getApplication().getName();
+        val applicationLogo = 
causewayConfiguration.getViewer().getCommon().getApplication().getBrandLogoSignin();
 
         applicationLogo.ifPresent(logoUrl->{
             add(new 
Image(webAppContextPath.prependContextPathIfLocal(logoUrl), "logo"));
diff --git 
a/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/branding/BrandingUiServiceDefault.java
 
b/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/branding/BrandingUiServiceDefault.java
index a2600e6243..7bcc65b6fb 100644
--- 
a/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/branding/BrandingUiServiceDefault.java
+++ 
b/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/branding/BrandingUiServiceDefault.java
@@ -27,7 +27,7 @@ import org.springframework.stereotype.Service;
 
 import org.apache.causeway.applib.annotation.PriorityPrecedence;
 import org.apache.causeway.core.config.CausewayConfiguration;
-import 
org.apache.causeway.core.config.CausewayConfiguration.Viewer.Wicket.Application;
+import 
org.apache.causeway.core.config.CausewayConfiguration.Viewer.Common.Application;
 import 
org.apache.causeway.viewer.commons.applib.services.branding.BrandingUiModel;
 import 
org.apache.causeway.viewer.commons.applib.services.branding.BrandingUiService;
 import 
org.apache.causeway.viewer.commons.services.CausewayModuleViewerCommonsServices;
@@ -45,7 +45,7 @@ implements BrandingUiService {
     public BrandingUiServiceDefault(final CausewayConfiguration 
causewayConfiguration) {
         //TODO application name/logo borrowed from Wicket's configuration,
         // we might generalize this config option to all viewers
-        this.appConfig = 
causewayConfiguration.getViewer().getWicket().getApplication();
+        this.appConfig = 
causewayConfiguration.getViewer().getCommon().getApplication();
     }
 
     @Override
diff --git 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/AboutModel.java
 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/AboutModel.java
index ea6e00d87c..f5c5516b82 100644
--- 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/AboutModel.java
+++ 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/AboutModel.java
@@ -26,7 +26,7 @@ import 
org.apache.causeway.core.metamodel.context.MetaModelContext;
  * Model providing welcome text.
  */
 public final class AboutModel
-extends ModelAbstract<CausewayConfiguration.Viewer.Wicket.Application> {
+extends ModelAbstract<CausewayConfiguration.Viewer.Common.Application> {
 
     private static final long serialVersionUID = 1L;
 
@@ -35,8 +35,8 @@ extends 
ModelAbstract<CausewayConfiguration.Viewer.Wicket.Application> {
     }
 
     @Override
-    protected CausewayConfiguration.Viewer.Wicket.Application load() {
-        return getWicketViewerSettings().getApplication();
+    protected CausewayConfiguration.Viewer.Common.Application load() {
+        return getApplicationSettings();
     }
 
 }
diff --git 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/HasCommonContext.java
 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/HasCommonContext.java
index 923d704cd4..95d1a018ff 100644
--- 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/HasCommonContext.java
+++ 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/HasCommonContext.java
@@ -19,6 +19,7 @@
 package org.apache.causeway.viewer.wicket.model.models;
 
 import org.apache.causeway.applib.services.i18n.TranslationContext;
+import 
org.apache.causeway.core.config.CausewayConfiguration.Viewer.Common.Application;
 import org.apache.causeway.core.config.CausewayConfiguration.Viewer.Wicket;
 import org.apache.causeway.core.metamodel.context.HasMetaModelContext;
 
@@ -28,6 +29,10 @@ public interface HasCommonContext extends 
HasMetaModelContext {
         return getConfiguration().getViewer().getWicket();
     }
 
+    default Application getApplicationSettings() {
+        return getConfiguration().getViewer().getCommon().getApplication();
+    }
+
     /**
      * Translate without context: Tooltips, Button-Labels, etc.
      */
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/about/AboutPanel.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/about/AboutPanel.java
index 418b1169df..03a0873d90 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/about/AboutPanel.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/about/AboutPanel.java
@@ -39,7 +39,7 @@ import 
org.apache.causeway.viewer.wicket.ui.panels.PanelAbstract;
  * {@link HomePage}).
  */
 public class AboutPanel
-extends PanelAbstract<CausewayConfiguration.Viewer.Wicket.Application, 
AboutModel> {
+extends PanelAbstract<CausewayConfiguration.Viewer.Common.Application, 
AboutModel> {
 
     private static final long serialVersionUID = 1L;
 
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/footer/FooterPanel.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/footer/FooterPanel.java
index dbaba10be5..60829f2015 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/footer/FooterPanel.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/footer/FooterPanel.java
@@ -162,7 +162,7 @@ extends PanelAbstract<String, Model<String>> {
         add(aboutLink);
 
         final String applicationVersion =
-                getWicketViewerSettings().getApplication().getVersion();
+                getApplicationSettings().getVersion();
 
         Wkt.labelAdd(aboutLink, ID_ABOUT_MESSAGE,
                 _Strings.isNotEmpty(applicationVersion)
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
index c87f21d9a6..a723b6c461 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
@@ -144,7 +144,7 @@ implements ActionPromptProvider {
 
             themeDiv = Wkt.containerAdd(this, ID_THEME);
 
-            String applicationName = 
getWicketViewerSettings().getApplication().getName();
+            String applicationName = getApplicationSettings().getName();
             Wkt.cssAppend(themeDiv, Wkt.cssNormalize(applicationName));
 
             boolean devUtilitiesEnabled = 
getApplication().getDebugSettings().isDevelopmentUtilitiesEnabled();
@@ -227,7 +227,7 @@ implements ActionPromptProvider {
     protected void setTitle(final String title) {
         Wkt.labelAdd(this, ID_PAGE_TITLE, title != null
                 ? title
-                : getWicketViewerSettings().getApplication().getName());
+                : getApplicationSettings().getName());
     }
 
     private Class<? extends Page> getSignInPage() {
@@ -261,12 +261,12 @@ implements ActionPromptProvider {
         new JGrowlBehaviour(getMetaModelContext())
             .renderFeedbackMessages(response);
 
-        getWicketViewerSettings().getApplication().getCss()
+        getApplicationSettings().getCss()
         .ifPresent(applicationCss -> {
             response.render(CssReferenceHeaderItem.forUrl(applicationCss));
         });
 
-        getWicketViewerSettings().getApplication().getJs()
+        getApplicationSettings().getJs()
         .ifPresent(applicationJs -> {
             
response.render(JavaScriptReferenceHeaderItem.forUrl(applicationJs));
         });
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/WebPageBase.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/WebPageBase.java
index 1c73f1da0b..947bb2be6d 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/WebPageBase.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/WebPageBase.java
@@ -56,7 +56,7 @@ implements HasCommonContext {
     // -- FAVICON SUPPORT
 
     protected void renderFavicon(final IHeaderResponse response) {
-        getWicketViewerSettings().getApplication().getFaviconUrl()
+        getApplicationSettings().getFaviconUrl()
         .filter(_Strings::isNotEmpty)
         .map(getWebAppContextPath()::prependContextPathIfLocal)
         .ifPresent(faviconUrl->{
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/AccountManagementPageAbstract.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/AccountManagementPageAbstract.java
index 0e79a2633d..1eabf97c98 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/AccountManagementPageAbstract.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/AccountManagementPageAbstract.java
@@ -92,7 +92,7 @@ public class AccountManagementPageAbstract extends 
WebPageBase {
 
 
     private void addPageTitle() {
-        val applicationName = 
getWicketViewerSettings().getApplication().getName();
+        val applicationName = getApplicationSettings().getName();
         Wkt.labelAdd(this, ID_PAGE_TITLE, applicationName);
     }
 
@@ -112,10 +112,10 @@ public class AccountManagementPageAbstract extends 
WebPageBase {
         response.render(new 
PriorityHeaderItem(JavaScriptHeaderItem.forReference(
                 BootstrapJavaScriptReference.instance())));
 
-        getWicketViewerSettings().getApplication().getCss()
+        getApplicationSettings().getCss()
         .ifPresent(css -> response.render(CssReferenceHeaderItem.forUrl(css)));
 
-        getWicketViewerSettings().getApplication().getJs()
+        getApplicationSettings().getJs()
         .ifPresent(js -> 
response.render(JavaScriptReferenceHeaderItem.forUrl(js)));
     }
 
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetEmailPanel.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetEmailPanel.java
index 9c2fd84df0..4a140cffa3 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetEmailPanel.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetEmailPanel.java
@@ -90,7 +90,7 @@ public class PasswordResetEmailPanel extends PanelBase<Void> {
         val passwordResetEvent = new PasswordResetEvent(
                 email,
                 confirmationUrl,
-                getWicketViewerSettings().getApplication().getName());
+                getApplicationSettings().getName());
 
         boolean emailSent = 
super.getEmailNotificationService().send(passwordResetEvent);
         if (emailSent) {
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPanel.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPanel.java
index 366ee18db9..e6a416a6c0 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPanel.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPanel.java
@@ -90,7 +90,7 @@ public class RegistrationFormPanel extends PanelBase<Void> {
                 final EmailRegistrationEvent emailRegistrationEvent = new 
EmailRegistrationEvent(
                         email,
                         confirmationUrl,
-                        getWicketViewerSettings().getApplication().getName());
+                        getApplicationSettings().getName());
 
                 boolean emailSent = 
emailNotificationService.send(emailRegistrationEvent);
                 if (emailSent) {
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/mmverror/MmvErrorPage.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/mmverror/MmvErrorPage.java
index 3c2c7a06a9..963b5679ff 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/mmverror/MmvErrorPage.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/mmverror/MmvErrorPage.java
@@ -66,12 +66,12 @@ public class MmvErrorPage extends WebPageBase {
 
     private void addPageTitle() {
         Wkt.labelAdd(this, ID_PAGE_TITLE,
-                getWicketViewerSettings().getApplication().getName());
+                getApplicationSettings().getName());
     }
 
     private void addApplicationName() {
         Wkt.labelAdd(this, ID_APPLICATION_NAME,
-                getWicketViewerSettings().getApplication().getName());
+                getApplicationSettings().getName());
     }
 
     private void addValidationErrors() {
@@ -87,10 +87,10 @@ public class MmvErrorPage extends WebPageBase {
         response.render(new 
PriorityHeaderItem(JavaScriptHeaderItem.forReference(Application.get().getJavaScriptLibrarySettings().getJQueryReference())));
         response.render(new 
PriorityHeaderItem(JavaScriptHeaderItem.forReference(BootstrapJavaScriptReference.instance())));
 
-        getWicketViewerSettings().getApplication().getCss()
+        getApplicationSettings().getCss()
         .ifPresent(css -> response.render(CssReferenceHeaderItem.forUrl(css)));
 
-        getWicketViewerSettings().getApplication().getJs()
+        getApplicationSettings().getJs()
         .ifPresent(js -> 
response.render(JavaScriptReferenceHeaderItem.forUrl(js)));
     }
 


Reply via email to