You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@isis.apache.org by Stephen Cameron <st...@gmail.com> on 2018/01/11 03:27:08 UTC
Issue in moving to 1.16.0
Hi,
I can run an App in Eclipse OK, but when I try to install it on a test
server in Tomcat i get an error perventing the app starting
Caused by: java.lang.NoSuchMethodError:
org.apache.isis.applib.AppManifestAbstract.<init>(Lorg/apache/isis/applib/AppManifestAbstract$BuilderAbstract;)V
at
org.apache.isis.applib.AppManifestAbstract2.<init>(AppManifestAbstract2.java:36)
at
cooperation.application.manifest.CooperationAppAppManifest.<init>(CooperationAppAppManifest.java:58)
the relevant CooperationAppAppManifest.java is:
package cooperation.application.manifest;
import org.apache.isis.applib.AppManifestAbstract2;
import com.google.common.collect.ImmutableMap;
import
au.org.cooperation.modules.base.dom.CooperationBaseModuleDomSubmodule;
import cooperation.application.CooperationAppApplicationModule;
import
cooperation.application.fixture.CooperationAppApplicationModuleFixtureSubmodule;
import
cooperation.application.services.CooperationAppApplicationModuleServicesSubmodule;
/**
* Bootstrap the application.
*/
public class CooperationAppAppManifest extends AppManifestAbstract2 {
public static final Builder BUILDER = Builder.forModule(new
CooperationAppApplicationModule())
.withAdditionalModules(
CooperationBaseModuleDomSubmodule.class,
CooperationAppApplicationModuleServicesSubmodule.class,
CooperationAppApplicationModuleFixtureSubmodule.class,
org.isisaddons.module.security.SecurityModule.class
)
.withConfigurationPropertiesFile(CooperationAppAppManifest.class,
"isis.properties",
"authentication_shiro.properties",
"persistor_datanucleus.properties",
"viewer_restfulobjects.properties",
"viewer_wicket.properties"
).withAuthMechanism("shiro")
.withAdditionalServices(
org.isisaddons.module.security.dom.password.PasswordEncryptionServiceUsingJBcrypt.class,
org.isisaddons.module.security.dom.permission.PermissionsEvaluationServiceAllowBeatsVeto.class
).withConfigurationProperties(ImmutableMap.of(
"isis.reflector.facets.include",
"org.isisaddons.module.security.facets.TenantedAuthorizationFacetFactory"));
public CooperationAppAppManifest() {
super(BUILDER); //*line 58*
}
}
Re: Issue in moving to 1.16.0
Posted by Stephen Cameron <st...@gmail.com>.
Oops, me doing something silly again, have to do mvn clean and then mvn
install in Eclipse to get a valid war
On Thu, Jan 11, 2018 at 3:41 PM, Dan Haywood <da...@haywood-associates.co.uk>
wrote:
> This looks like you have a pre-1.16.0 version of AppManifestAbstract on
> your classpath. It's possible that the IDE and Tomcat load JARs in a
> different order, so you're getting "jar hell".
>
> If you inspect the dependency tree using m2e in Eclipse, do you see any
> conflicts on the isis-core-applib? If so, use <exclusions> to make sure
> the correct one is loaded.
>
> As an aside: this is though a mistake on my part. It looks like 1.16.0 has
> broken binary compatibility of AppManifestAbstract. The pre-1.16.0 release
> had a constructor that took an AppManifest.Builder, whereas 1.16.0 takes
> only an AppManifestAbstract.BuilderAbstract. So apologies about that.
>
> HTH
> Dan
>
> On Thu, 11 Jan 2018 at 04:27 Stephen Cameron <st...@gmail.com>
> wrote:
>
> > Hi,
> >
> > I can run an App in Eclipse OK, but when I try to install it on a test
> > server in Tomcat i get an error perventing the app starting
> >
> > Caused by: java.lang.NoSuchMethodError:
> >
> > org.apache.isis.applib.AppManifestAbstract.<init>(
> Lorg/apache/isis/applib/AppManifestAbstract$BuilderAbstract;)V
> > at
> >
> > org.apache.isis.applib.AppManifestAbstract2.<init>(
> AppManifestAbstract2.java:36)
> > at
> >
> > cooperation.application.manifest.CooperationAppAppManifest.<init>(
> CooperationAppAppManifest.java:58)
> >
> > the relevant CooperationAppAppManifest.java is:
> >
> > package cooperation.application.manifest;
> >
> > import org.apache.isis.applib.AppManifestAbstract2;
> >
> > import com.google.common.collect.ImmutableMap;
> >
> > import
> > au.org.cooperation.modules.base.dom.CooperationBaseModuleDomSubmodule;
> > import cooperation.application.CooperationAppApplicationModule;
> > import
> >
> > cooperation.application.fixture.CooperationAppApplicationModul
> eFixtureSubmodule;
> > import
> >
> > cooperation.application.services.CooperationAppApplicationModul
> eServicesSubmodule;
> >
> >
> > /**
> > * Bootstrap the application.
> > */
> > public class CooperationAppAppManifest extends AppManifestAbstract2 {
> >
> > public static final Builder BUILDER = Builder.forModule(new
> > CooperationAppApplicationModule())
> > .withAdditionalModules(
> > CooperationBaseModuleDomSubmodule.class,
> > CooperationAppApplicationModul
> eServicesSubmodule.class,
> > CooperationAppApplicationModul
> eFixtureSubmodule.class,
> > org.isisaddons.module.security.SecurityModule.class
> > )
> >
> > .withConfigurationPropertiesFile(CooperationAppAppManifest.class,
> > "isis.properties",
> > "authentication_shiro.properties",
> > "persistor_datanucleus.properties",
> > "viewer_restfulobjects.properties",
> > "viewer_wicket.properties"
> > ).withAuthMechanism("shiro")
> > .withAdditionalServices(
> >
> >
> > org.isisaddons.module.security.dom.password.
> PasswordEncryptionServiceUsingJBcrypt.class,
> >
> >
> > org.isisaddons.module.security.dom.permission.
> PermissionsEvaluationServiceAllowBeatsVeto.class
> > ).withConfigurationProperties(ImmutableMap.of(
> > "isis.reflector.facets.include",
> >
> >
> > "org.isisaddons.module.security.facets.TenantedAuthorizationFacetFact
> ory"));
> >
> > public CooperationAppAppManifest() {
> > super(BUILDER); //*line 58*
> > }
> >
> > }
> >
>
Re: Issue in moving to 1.16.0
Posted by Dan Haywood <da...@haywood-associates.co.uk>.
This looks like you have a pre-1.16.0 version of AppManifestAbstract on
your classpath. It's possible that the IDE and Tomcat load JARs in a
different order, so you're getting "jar hell".
If you inspect the dependency tree using m2e in Eclipse, do you see any
conflicts on the isis-core-applib? If so, use <exclusions> to make sure
the correct one is loaded.
As an aside: this is though a mistake on my part. It looks like 1.16.0 has
broken binary compatibility of AppManifestAbstract. The pre-1.16.0 release
had a constructor that took an AppManifest.Builder, whereas 1.16.0 takes
only an AppManifestAbstract.BuilderAbstract. So apologies about that.
HTH
Dan
On Thu, 11 Jan 2018 at 04:27 Stephen Cameron <st...@gmail.com>
wrote:
> Hi,
>
> I can run an App in Eclipse OK, but when I try to install it on a test
> server in Tomcat i get an error perventing the app starting
>
> Caused by: java.lang.NoSuchMethodError:
>
> org.apache.isis.applib.AppManifestAbstract.<init>(Lorg/apache/isis/applib/AppManifestAbstract$BuilderAbstract;)V
> at
>
> org.apache.isis.applib.AppManifestAbstract2.<init>(AppManifestAbstract2.java:36)
> at
>
> cooperation.application.manifest.CooperationAppAppManifest.<init>(CooperationAppAppManifest.java:58)
>
> the relevant CooperationAppAppManifest.java is:
>
> package cooperation.application.manifest;
>
> import org.apache.isis.applib.AppManifestAbstract2;
>
> import com.google.common.collect.ImmutableMap;
>
> import
> au.org.cooperation.modules.base.dom.CooperationBaseModuleDomSubmodule;
> import cooperation.application.CooperationAppApplicationModule;
> import
>
> cooperation.application.fixture.CooperationAppApplicationModuleFixtureSubmodule;
> import
>
> cooperation.application.services.CooperationAppApplicationModuleServicesSubmodule;
>
>
> /**
> * Bootstrap the application.
> */
> public class CooperationAppAppManifest extends AppManifestAbstract2 {
>
> public static final Builder BUILDER = Builder.forModule(new
> CooperationAppApplicationModule())
> .withAdditionalModules(
> CooperationBaseModuleDomSubmodule.class,
> CooperationAppApplicationModuleServicesSubmodule.class,
> CooperationAppApplicationModuleFixtureSubmodule.class,
> org.isisaddons.module.security.SecurityModule.class
> )
>
> .withConfigurationPropertiesFile(CooperationAppAppManifest.class,
> "isis.properties",
> "authentication_shiro.properties",
> "persistor_datanucleus.properties",
> "viewer_restfulobjects.properties",
> "viewer_wicket.properties"
> ).withAuthMechanism("shiro")
> .withAdditionalServices(
>
>
> org.isisaddons.module.security.dom.password.PasswordEncryptionServiceUsingJBcrypt.class,
>
>
> org.isisaddons.module.security.dom.permission.PermissionsEvaluationServiceAllowBeatsVeto.class
> ).withConfigurationProperties(ImmutableMap.of(
> "isis.reflector.facets.include",
>
>
> "org.isisaddons.module.security.facets.TenantedAuthorizationFacetFactory"));
>
> public CooperationAppAppManifest() {
> super(BUILDER); //*line 58*
> }
>
> }
>