On Sun, Jan 10, 2016 at 5:36 PM, Dan Haywood <[email protected]>
wrote:

> On 8 January 2016 at 11:46, Martin Grigorov <[email protected]> wrote:
>
> > Hi,
> >
> > If Java 7 is the minimum supported then why not use Java 7 to build? This
> > is the cleanest way to make sure everything is fine.
> >
> >
> I've decided to use the maven-toolchains-plugin.
>
>
>
>
> > I thought that Java 8 is the minimum since a while.
> >
> >
> Nope, not yet.  My opinion is that we shouldn't drop Java 7 until Java 9
> has been released (Q1 2017 being the current date for that).
>

I was confused that Isis moved to 1.8 with 1.10.0, but now I see it is
still 1.7 (https://github.com/apache/isis/blob/master/core/pom.xml#L60-L61)


>
>
> ~~~
>
> Meanwhile, I've cut 1.11.1 RC1 we the appropriate fixes, this is now being
> voted on in the dev@ mailing list.  This vote will stay open for min 72
> hours, but if it passes then we should be able to release 1.11.1 on Wed pm
> or Thu am.
>
> Thx
> Dan
>
>
>
>
>
>
>
> > Martin Grigorov
> > Wicket Training and Consulting
> > https://twitter.com/mtgrigorov
> >
> > On Fri, Jan 8, 2016 at 12:35 PM, Dan Haywood <
> [email protected]
> > >
> > wrote:
> >
> > > Hi Nacho,
> > >
> > > Thanks for reporting this, which is obviously a problem.
> > >
> > > I think we should issue a patch (1.11.1) to fix that.  And obviously I
> > need
> > > to look at the release procedures so that this error doesn't occur in
> the
> > > future.
> > >
> > > I'll try to get a vote out this weekend.
> > >
> > > Thx
> > > Dan
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > On 8 January 2016 at 11:28, Nacho Cánovas Rejón <
> > > [email protected]>
> > > wrote:
> > >
> > > > Hi everybody.
> > > >
> > > >
> > > >
> > > > I updated Apache ISIS version to 1.11 and I have a Java Version
> > Problem.
> > > >
> > > >
> > > >
> > > > Apache ISIS is compatible with Java 1.7 and 1.8, but in two changes
> > > > (ISIS-1257: c6c3066e3b7e58dc1d338e44ba4ca926dc29d1ef and ISIS-1213:
> > > > 6ec46332ef2ad50959148751e90222d13a8eecf3) you use a method that only
> > > exists
> > > > in Java 1.8 (
> > > > <
> > > >
> > >
> >
> https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html#get
> > > > ParameterCount--> getParameterCount())
> > > >
> > > >
> > > >
> > > > We don’t want to migrate to 1.8 because it requires so many changes
> on
> > > our
> > > > app, so if you can change code to be compatible, these are the
> changes
> > I
> > > > made:
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> >
> isis\core\metamodel\src\main\java\org\apache\isis\core\metamodel\facets\Anno
> > > > tations.java
> > > >
> > > >
> > > >
> > > > private static <T extends Annotation> void appendEvaluators(
> > > >
> > > >             final Class<?> cls,
> > > >
> > > >             final Class<T> annotationClass,
> > > >
> > > >             final List<Evaluator<T>> evaluators) {
> > > >
> > > >
> > > >
> > > >         for (Method method : cls.getDeclaredMethods()) {
> > > >
> > > >             if(MethodScope.OBJECT.matchesScopeOf(method) &&
> > > >
> > > >                     method.getParameterCount()
> > > > method.getParameterTypes().length == 0) {
> > > >
> > > >                 final Annotation annotation =
> > > > method.getAnnotation(annotationClass);
> > > >
> > > >                 if(annotation != null) {
> > > >
> > > >                     evaluators.add(new MethodEvaluator(method,
> > > > annotation));
> > > >
> > > >                 }
> > > >
> > > >             }
> > > >
> > > >         }
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> >
> isis\core\metamodel\src\main\java\org\apache\isis\core\metamodel\services\co
> > > > ntainer\DomainObjectContainerDefault.java
> > > >
> > > >
> > > >
> > > > public <T> T mixin(final Class<T> mixinClass, final Object mixedIn) {
> > > >
> > > >         final ObjectSpecification objectSpec =
> > > > getSpecificationLoader().loadSpecification(mixinClass);
> > > >
> > > >         final MixinFacet mixinFacet =
> > > > objectSpec.getFacet(MixinFacet.class);
> > > >
> > > >         if(mixinFacet == null) {
> > > >
> > > >             throw new NonRecoverableException("Class '" +
> > > > mixinClass.getName() + " is not a mixin");
> > > >
> > > >         }
> > > >
> > > >         if(!mixinFacet.isMixinFor(mixedIn.getClass())) {
> > > >
> > > >             throw new NonRecoverableException("Mixin class '" +
> > > > mixinClass.getName() + " is not a mixin for supplied object '" +
> > mixedIn
> > > +
> > > > "'");
> > > >
> > > >         }
> > > >
> > > >         final Constructor<?>[] constructors =
> > > mixinClass.getConstructors();
> > > >
> > > >         for (Constructor<?> constructor : constructors) {
> > > >
> > > >             if(constructor.getParameterCount()
> > > > constructor.getParameterTypes().length == 1 &&
> > > >
> > > >
> > > >
> > constructor.getParameterTypes()[0].isAssignableFrom(mixedIn.getClass()))
> > > {
> > > >
> > > >                 final Object mixin;
> > > >
> > > >                 try {
> > > >
> > > >                     mixin = constructor.newInstance(mixedIn);
> > > >
> > > >                     return (T)injectServicesInto(mixin);
> > > >
> > > >                 } catch (InstantiationException |
> > IllegalAccessException
> > > |
> > > > InvocationTargetException e) {
> > > >
> > > >                     throw new NonRecoverableException(e);
> > > >
> > > >                 }
> > > >
> > > >             }
> > > >
> > > >         }
> > > >
> > > >
> > > >
> > > > This is the documentation of JAVA with allowed methods depending on
> > > > version:
> > > >
> > > >
> > https://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html
> > > >
> > > >
> > https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html
> > > >
> > > >
> > > >
> > > > Best regards and happy new year.
> > > >
> > > >
> > > >
> > > >
> > >
> >
>

Reply via email to