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 2017/02/14 15:13:08 UTC
[18/20] isis git commit: ISIS-1582: generalizes checking for unique
objectTypes to be unique across entities and domain services.
ISIS-1582: generalizes checking for unique objectTypes to be unique across entities and domain services.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/78f034d0
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/78f034d0
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/78f034d0
Branch: refs/heads/master
Commit: 78f034d0ecb7b6a7fce99a0904ee3e0b890e3e9d
Parents: 5a3029e
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Tue Feb 14 14:46:06 2017 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Tue Feb 14 14:46:06 2017 +0000
----------------------------------------------------------------------
.../config/ConfigurationServiceMenu.java | 5 +-
.../services/layout/LayoutServiceMenu.java | 4 +-
.../metamodel/MetaModelServicesMenu.java | 4 +-
.../services/swagger/SwaggerServiceMenu.java | 5 +-
.../ObjectSpecIdFacetDerivedFromClassName.java | 3 +
...tSpecIdFacetDerivedFromClassNameFactory.java | 60 ++++++++++++++++----
...vedFromDomainServiceAnnotationElseGetId.java | 5 +-
.../core/metamodel/services/ServiceUtil.java | 2 +-
.../metamodel/services/ServiceUtil_Test.java | 5 +-
.../i18n/po/TranslationServicePoMenu.java | 5 +-
.../wicket/WebRequestCycleForIsis.java | 2 +-
...nAppFixtureScriptsSpecificationProvider.java | 4 +-
.../services/dbmanager/HsqlDbManagerMenu.java | 3 +-
.../services/homepage/HomePageService.java | 3 +-
14 files changed, 77 insertions(+), 33 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java
index ba9f75d..d61e787 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java
@@ -21,8 +21,6 @@ package org.apache.isis.applib.services.config;
import java.util.Set;
-import javax.inject.Inject;
-
import org.apache.isis.applib.IsisApplibModule;
import org.apache.isis.applib.annotation.Action;
import org.apache.isis.applib.annotation.ActionLayout;
@@ -33,7 +31,8 @@ import org.apache.isis.applib.annotation.NatureOfService;
import org.apache.isis.applib.annotation.SemanticsOf;
@DomainService(
- nature = NatureOfService.VIEW_MENU_ONLY
+ nature = NatureOfService.VIEW_MENU_ONLY,
+ objectType = "isisApplib.ConfigurationServiceMenu"
)
@DomainServiceLayout(
menuBar = DomainServiceLayout.MenuBar.TERTIARY,
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java
index da5d637..a038f25 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java
@@ -18,7 +18,6 @@ package org.apache.isis.applib.services.layout;
import javax.activation.MimeType;
import javax.activation.MimeTypeParseException;
-import javax.inject.Inject;
import org.apache.isis.applib.IsisApplibModule;
import org.apache.isis.applib.annotation.Action;
@@ -32,7 +31,8 @@ import org.apache.isis.applib.annotation.SemanticsOf;
import org.apache.isis.applib.value.Blob;
@DomainService(
- nature = NatureOfService.VIEW_MENU_ONLY
+ nature = NatureOfService.VIEW_MENU_ONLY,
+ objectType = "isisApplib.LayoutServiceMenu"
)
@DomainServiceLayout(
named = "Prototyping",
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
index dd6ec05..3a0e242 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
@@ -22,7 +22,6 @@ import java.util.List;
import javax.activation.MimeType;
import javax.activation.MimeTypeParseException;
-import javax.inject.Inject;
import com.google.common.base.Joiner;
import com.google.common.collect.Lists;
@@ -40,7 +39,8 @@ import org.apache.isis.applib.annotation.SemanticsOf;
import org.apache.isis.applib.value.Clob;
@DomainService(
- nature = NatureOfService.VIEW_MENU_ONLY
+ nature = NatureOfService.VIEW_MENU_ONLY,
+ objectType = "isisApplib.MetaModelServicesMenu"
)
@DomainServiceLayout(
named = "Prototyping",
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
index 73f766f..2996a81 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
@@ -16,8 +16,6 @@
*/
package org.apache.isis.applib.services.swagger;
-import javax.inject.Inject;
-
import org.apache.isis.applib.IsisApplibModule;
import org.apache.isis.applib.annotation.Action;
import org.apache.isis.applib.annotation.ActionLayout;
@@ -32,7 +30,8 @@ import org.apache.isis.applib.value.Clob;
@DomainService(
- nature = NatureOfService.VIEW_MENU_ONLY
+ nature = NatureOfService.VIEW_MENU_ONLY,
+ objectType = "isisApplib.SwaggerServiceMenu"
)
@DomainServiceLayout(
named = "Prototyping",
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassName.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassName.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassName.java
index 547c65a..dba2248 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassName.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassName.java
@@ -24,6 +24,9 @@ import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFac
public class ObjectSpecIdFacetDerivedFromClassName extends ObjectSpecIdFacetAbstract {
+ public ObjectSpecIdFacetDerivedFromClassName(final Class<?> cls, final FacetHolder holder) {
+ this(cls.getCanonicalName(), holder);
+ }
public ObjectSpecIdFacetDerivedFromClassName(final String value, final FacetHolder holder) {
super(value, holder);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
index 29b011e..e6ccf72 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
@@ -19,14 +19,21 @@
package org.apache.isis.core.metamodel.facets.object.objectspecid.classname;
+import java.util.List;
+
+import org.apache.isis.applib.annotation.NatureOfService;
import org.apache.isis.core.commons.config.IsisConfiguration;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FacetUtil;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.MetaModelValidatorRefiner;
import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet;
import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet;
+import org.apache.isis.core.metamodel.services.ServiceUtil;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
+import org.apache.isis.core.metamodel.spec.feature.Contributed;
+import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubstitutor;
import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidator;
import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidatorComposite;
@@ -57,22 +64,27 @@ public class ObjectSpecIdFacetDerivedFromClassNameFactory extends FacetFactoryAb
final Class<?> originalClass = processClassContaxt.getCls();
final Class<?> substitutedClass = classSubstitutor.getClass(originalClass);
- final boolean isService = isService(facetHolder);
- ObjectSpecIdFacet objectSpecIdFacet = isService
- ? new ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId(substitutedClass, facetHolder)
- : new ObjectSpecIdFacetDerivedFromClassName(substitutedClass.getCanonicalName(), facetHolder);
+ ObjectSpecIdFacet objectSpecIdFacet = createObjectSpecIdFacet(facetHolder, substitutedClass);
FacetUtil.addFacet(objectSpecIdFacet);
}
- private boolean isService(final FacetHolder facetHolder) {
- boolean service;
+ private static ObjectSpecIdFacet createObjectSpecIdFacet(final FacetHolder facetHolder, final Class<?> substitutedClass) {
+ final boolean isService = isService(facetHolder);
+ if (isService) {
+ final String id = ServiceUtil.id(substitutedClass);
+ if (id != null) {
+ return new ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId(id, facetHolder);
+ }
+ }
+ return new ObjectSpecIdFacetDerivedFromClassName(substitutedClass, facetHolder);
+ }
+
+ private static boolean isService(final FacetHolder facetHolder) {
if(facetHolder instanceof ObjectSpecification) {
ObjectSpecification objectSpecification = (ObjectSpecification) facetHolder;
- service = objectSpecification.isService();
- } else {
- service = false;
+ return objectSpecification.isService();
}
- return service;
+ return false;
}
@Override
@@ -99,7 +111,7 @@ public class ObjectSpecIdFacetDerivedFromClassNameFactory extends FacetFactoryAb
private void validate(
final ObjectSpecification objectSpec,
final ValidationFailures validationFailures) {
- if(!objectSpec.isPersistenceCapable()) {
+ if(skip(objectSpec)) {
return;
}
ObjectSpecIdFacet objectSpecIdFacet = objectSpec.getFacet(ObjectSpecIdFacet.class);
@@ -109,6 +121,32 @@ public class ObjectSpecIdFacetDerivedFromClassNameFactory extends FacetFactoryAb
objectSpec.getFullIdentifier(), ISIS_REFLECTOR_VALIDATOR_EXPLICIT_OBJECT_TYPE_KEY);
}
}
+
+ private boolean skip(final ObjectSpecification objectSpec) {
+ return !check(objectSpec);
+ }
+
+ private boolean check(final ObjectSpecification objectSpec) {
+ if (objectSpec.isPersistenceCapable()) {
+ return true;
+ }
+ if (objectSpec.isService()) {
+ // don't care about domain services.
+ DomainServiceFacet domainServiceFacet = objectSpec.getFacet(DomainServiceFacet.class);
+ if(domainServiceFacet != null && domainServiceFacet.getNatureOfService() == NatureOfService.DOMAIN) {
+ return false;
+ }
+
+ // we don't care about services that have only programmatic methods
+ List<ObjectAction> objectActions = objectSpec.getObjectActions(Contributed.INCLUDED);
+ if(objectActions.isEmpty()) {
+ return false;
+ }
+
+ return true;
+ }
+ return false;
+ }
});
metaModelValidator.add(validator);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId.java
index 651a765..bd5ddde 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId.java
@@ -20,13 +20,14 @@
package org.apache.isis.core.metamodel.facets.object.objectspecid.classname;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
+import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet;
import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacetAbstract;
import org.apache.isis.core.metamodel.services.ServiceUtil;
public class ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId extends ObjectSpecIdFacetAbstract {
- public ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId(final Class<?> value, final FacetHolder holder) {
- super(ServiceUtil.id(value), holder);
+ ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId(final String value, final FacetHolder holder) {
+ super(value, holder);
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceUtil.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceUtil.java
index 956aadc..181fe59 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServiceUtil.java
@@ -42,7 +42,7 @@ public final class ServiceUtil {
Object object = serviceClass.newInstance();
return getIdOf(object);
} catch (InstantiationException | IllegalAccessException | NoSuchMethodException e) {
- return fqcnOf(serviceClass);
+ return null;
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/metamodel/src/test/java/org/apache/isis/core/metamodel/services/ServiceUtil_Test.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/services/ServiceUtil_Test.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/services/ServiceUtil_Test.java
index 895f879..e36282e 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/services/ServiceUtil_Test.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/services/ServiceUtil_Test.java
@@ -24,6 +24,7 @@ import org.apache.isis.applib.annotation.DomainService;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
public class ServiceUtil_Test {
@@ -91,13 +92,13 @@ public class ServiceUtil_Test {
}
@Test
- public void fallback_to_fqcn() throws Exception {
+ public void fallback_to_fqcn_for_obj_but_to_null_for_service() throws Exception {
assertThat(
ServiceUtil.id(new SomeServiceWithoutAnnotationOrId()),
is(equalTo("org.apache.isis.core.metamodel.services.ServiceUtil_Test$SomeServiceWithoutAnnotationOrId")));
assertThat(
ServiceUtil.id(SomeServiceWithoutAnnotationOrId.class),
- is(equalTo("org.apache.isis.core.metamodel.services.ServiceUtil_Test$SomeServiceWithoutAnnotationOrId")));
+ is(nullValue()));
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java
index 499cc7d..857bade 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java
@@ -18,8 +18,6 @@
*/
package org.apache.isis.core.runtime.services.i18n.po;
-import javax.inject.Inject;
-
import org.apache.isis.applib.IsisApplibModule;
import org.apache.isis.applib.annotation.Action;
import org.apache.isis.applib.annotation.ActionLayout;
@@ -33,7 +31,8 @@ import org.apache.isis.applib.annotation.SemanticsOf;
import org.apache.isis.applib.value.Clob;
@DomainService(
- nature = NatureOfService.VIEW_MENU_ONLY
+ nature = NatureOfService.VIEW_MENU_ONLY,
+ objectType = "isisApplib.TranslationServicePoMenu"
)
@DomainServiceLayout(
named = "Prototyping",
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/integration/wicket/WebRequestCycleForIsis.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/integration/wicket/WebRequestCycleForIsis.java b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/integration/wicket/WebRequestCycleForIsis.java
index 7d5c9e6..cfb72fd 100644
--- a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/integration/wicket/WebRequestCycleForIsis.java
+++ b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/integration/wicket/WebRequestCycleForIsis.java
@@ -194,7 +194,7 @@ public class WebRequestCycleForIsis extends AbstractRequestCycleListener {
new ExceptionRecognizerForType(PageExpiredException.class, new Function<String,String>(){
@Override
public String apply(String input) {
- return "Requested page is no longer available. Please navigate back to the home page or select an object from the bookmark bar.";
+ return "Requested page is no longer available.";
}
});
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/DomainAppFixtureScriptsSpecificationProvider.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/DomainAppFixtureScriptsSpecificationProvider.java b/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/DomainAppFixtureScriptsSpecificationProvider.java
index 703c42f..3ce5ebf 100644
--- a/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/DomainAppFixtureScriptsSpecificationProvider.java
+++ b/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/DomainAppFixtureScriptsSpecificationProvider.java
@@ -29,7 +29,9 @@ import domainapp.application.fixture.scenarios.DomainAppDemo;
/**
* Specifies where to find fixtures, and other settings.
*/
-@DomainService(nature = NatureOfService.DOMAIN)
+@DomainService(
+ nature = NatureOfService.DOMAIN
+)
public class DomainAppFixtureScriptsSpecificationProvider implements FixtureScriptsSpecificationProvider {
@Override
public FixtureScriptsSpecification getSpecification() {
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/example/application/simpleapp/application/src/main/java/domainapp/application/services/dbmanager/HsqlDbManagerMenu.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/main/java/domainapp/application/services/dbmanager/HsqlDbManagerMenu.java b/example/application/simpleapp/application/src/main/java/domainapp/application/services/dbmanager/HsqlDbManagerMenu.java
index ab8397a..7d85cdc 100644
--- a/example/application/simpleapp/application/src/main/java/domainapp/application/services/dbmanager/HsqlDbManagerMenu.java
+++ b/example/application/simpleapp/application/src/main/java/domainapp/application/services/dbmanager/HsqlDbManagerMenu.java
@@ -35,7 +35,8 @@ import org.apache.isis.applib.annotation.RestrictTo;
import org.apache.isis.applib.annotation.SemanticsOf;
@DomainService(
- nature = NatureOfService.VIEW_MENU_ONLY
+ nature = NatureOfService.VIEW_MENU_ONLY,
+ objectType = "prototyping.HsqlDbManagerMenu"
)
@DomainServiceLayout(
named = "Prototyping",
http://git-wip-us.apache.org/repos/asf/isis/blob/78f034d0/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageService.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageService.java b/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageService.java
index cb073ab..206488e 100644
--- a/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageService.java
+++ b/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageService.java
@@ -26,7 +26,8 @@ import org.apache.isis.applib.annotation.SemanticsOf;
import org.apache.isis.applib.services.factory.FactoryService;
@DomainService(
- nature = NatureOfService.DOMAIN // trick to suppress the actions from the top-level menu
+ nature = NatureOfService.DOMAIN, // trick to suppress the actions from the top-level menu
+ objectType = "internals.HomePageService"
)
public class HomePageService {