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 thought that Java 8 is the minimum since a while.

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