[ 
https://issues.apache.org/jira/browse/TAP5-2588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16672228#comment-16672228
 ] 

Andrew Fowler edited comment on TAP5-2588 at 11/1/18 9:22 PM:
--------------------------------------------------------------

I've attached 
[^0001-TAP5-2588-Upgrade-ASM-6.x-7.0.1-for-Java-11-support.patch], which 
upgrades ASM all the way up to 7.0.1. I did make one change in ASM -- restored 
the now-package-private {{AnnotationNode#accept}} method back to {{public}} 
since migration was nontrivial.

Also upgrades Gradle 4.3.1 --> 4.10.2, which has JDK 11 (18.9) support.

All tests pass, but I did not run against any real applications. My org has 
some work to do before we are ready to test against Tapestry e~5.5.


was (Author: andrewfowler):
I've attached 
[^0001-TAP5-2588-Upgrade-ASM-6.x-7.0.1-for-Java-11-support.patch], which 
upgrades ASM all the way up to 7.0.1.

Also upgrades Gradle 4.3.1 --> 4.10.2, which has JDK 11 (18.9) support.

All tests pass, but I did not run against any real applications. My org has 
some work to do before we are ready to test against ~5.5.

> Does not work with Java 9
> -------------------------
>
>                 Key: TAP5-2588
>                 URL: https://issues.apache.org/jira/browse/TAP5-2588
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: plastic
>    Affects Versions: 5.4.3
>            Reporter: Jochen Kemnade
>            Assignee: Bob Harner
>            Priority: Critical
>         Attachments: 
> 0001-TAP5-2588-Upgrade-ASM-6.x-7.0.1-for-Java-11-support.patch
>
>
> You cannot use Tapestry with Java 9 because of an outdated ASM version in 
> plastic (5.0.4). AFAICT, we'll need to upgrade to 6.0. My attempt do do so 
> results in a {{ClassCastException}} in 
> {{org.apache.tapestry5.plastic.ArrayAttributeAnnotations.explicit values for 
> array attributes}}.
> {noformat}
> java.lang.ClassCastException: [I cannot be cast to 
> java.base/[Ljava.lang.Object;
>       at 
> org.apache.tapestry5.internal.plastic.AbstractAnnotationBuilder$2.visitEnd(AbstractAnnotationBuilder.java:134)
>       at 
> org.apache.tapestry5.internal.plastic.asm.tree.AnnotationNode.accept(AnnotationNode.java:284)
>       at 
> org.apache.tapestry5.internal.plastic.asm.tree.AnnotationNode.accept(AnnotationNode.java:251)
>       at 
> org.apache.tapestry5.internal.plastic.PlasticClassPool.createAnnotation(PlasticClassPool.java:307)
>       at 
> org.apache.tapestry5.internal.plastic.PlasticClassPool$4.buildAnnotation(PlasticClassPool.java:286)
>       at 
> org.apache.tapestry5.internal.plastic.PlasticClassPool$4.getAnnotation(PlasticClassPool.java:270)
>       at 
> org.apache.tapestry5.internal.plastic.DelegatingAnnotationAccess.getAnnotation(DelegatingAnnotationAccess.java:42)
>       at 
> org.apache.tapestry5.internal.plastic.PlasticClassImpl.getAnnotation(PlasticClassImpl.java:342)
>       at org.apache.tapestry5.plastic.ArrayAttributeAnnotations.explicit 
> values for array attributes(ArrayAttributeAnnotations.groovy:27)
> {noformat}
> The {{AbstractAnnotationBuilder}} subclass tries to cast an {{int[]}} to an 
> {{Object[]}}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to