ASM7 required

Mats Andersson <[email protected]> Tue, 2 Apr 2019 17:42:10 +0200
Newsgroups gmane.comp.java.tapestry.user
Message-ID <[email protected]>
Continuing the attempt to upgrade an application from 5.4.4 to 
5.5.0-beta-2 I stepped into a couple of issues related to ASM. In 
org.apache.tapestry5.internal.plastic.asm.ClassVisitor#visitNestMember 
ASM7 is required, but calls from internal/plastic and ioc modules are 
made using ASM4 as parameter. See patch below for details:


 From 1f428d21610ca2ee4a0b0630b1e3d1c693a5a7e6 Mon Sep 17 00:00:00 2001
From: Mats Andersson <[email protected]>
Date: Mon, 1 Apr 2019 17:52:26 +0200
Subject: [PATCH] ASM7 dependencies

---
  .../apache/tapestry5/internal/plastic/PlasticInternalUtils.java | 2 +-
  .../tapestry5/ioc/internal/AbstractReloadableObjectCreator.java | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticInternalUtils.java 
b/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticInternalUtils.java
index f0ea0fb5e..4a6df1835 100644
--- 
a/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticInternalUtils.java
+++ 
b/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticInternalUtils.java
@@ -426,7 +426,7 @@ public class PlasticInternalUtils

          ClassNode result = new ClassNode();

-        ClassVisitor adapter = new ClassVisitor(Opcodes.ASM4, result)
+        ClassVisitor adapter = new ClassVisitor(Opcodes.ASM7, result)
          {
              @Override
              public MethodVisitor visitMethod(int access, String name, 
String desc, String signature, String[] exceptions)
diff --git 
a/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/AbstractReloadableObjectCreator.java 
b/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/AbstractReloadableObjectCreator.java
index 1dfd26250..33096341a 100644
--- 
a/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/AbstractReloadableObjectCreator.java
+++ 
b/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/AbstractReloadableObjectCreator.java
@@ -211,7 +211,7 @@ public abstract class 
AbstractReloadableObjectCreator implements ObjectCreator,

      public Class<?> doClassLoad(String className) throws IOException
      {
-        ClassVisitor analyzer = new ClassVisitor(Opcodes.ASM4)
+        ClassVisitor analyzer = new ClassVisitor(Opcodes.ASM7)
          {
              @Override
              public void visit(int version, int access, String name, 
String signature, String superName, String[] interfaces)
-- 
2.17.1


-- 
---------------------- Mats Andersson | Ronsoft AB | +46(0)73 368 79 82