[jira] [Commented] (TAP5-2280) [GSoC] New module to generate and compile component based on Facebook React framework
[ https://issues.apache.org/jira/browse/TAP5-2280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13942514#comment-13942514 ] Vishal Bangera commented on TAP5-2280: -- Hello, I am interested in working on this task. I have an industry experience in Java and JavaScript, and currently I am pursuing my Masters. I am looking into both tapestry and react.js. I would like to work on this task for GSOC14 and even if i am not selected for this, I would still be interested in working on this on the side. Can you please send me the link to the mailing list that will help me post any questions that I have. > [GSoC] New module to generate and compile component based on Facebook React > framework > - > > Key: TAP5-2280 > URL: https://issues.apache.org/jira/browse/TAP5-2280 > Project: Tapestry 5 > Issue Type: New Feature >Reporter: Massimo Lusetti > Labels: gsoc2014, java, javascript > > It would be great to leverage the power of Tapestry5 Asset pipeline and > Request dispatcher to gracefully handle the build of Facebook React > (http://facebook.github.io/react/index.html) based componets. > The main objective for this new module would be to free the developer to > build Facebook React components and have them naturally binded to Tapestry5 > page events. > Tapestry5 and Facebook React share the same component model and event > delegation concepts, the Tapestry5 Asset pipeline can be enhanced to compile, > compress and minify at runtime JSX files while the Request dispather coupled > with the REST friendly generated URL can make this pretty easy to develop one > page app within Tapestry5 leveraging all the performance (development and > runtime) provided by the framework. > I'm more then willing to mentor this project. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Resolved] (TAP5-2214) Make tapestry5 java8 compatible
[ https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kalle Korhonen resolved TAP5-2214. -- Resolution: Fixed > Make tapestry5 java8 compatible > --- > > Key: TAP5-2214 > URL: https://issues.apache.org/jira/browse/TAP5-2214 > Project: Tapestry 5 > Issue Type: Improvement > Components: plastic >Affects Versions: 5.4 >Reporter: Joachim Van der Auwera >Assignee: Kalle Korhonen > Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, > 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, > plastic-5.3.7-mint-asm5-java8.jar > > > As it stands Tapestry does not work on java8. This seems to be caused by ASM. > Updating the enclosed asm to 5.0_Bet seems to do the trick. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Comment Edited] (TAP5-2214) Make tapestry5 java8 compatible
[ https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13942171#comment-13942171 ] Kalle Korhonen edited comment on TAP5-2214 at 3/20/14 7:27 PM: --- The patch did not apply cleanly, and besides there's ASM 5.0 final release so I just used the official source from asm.ow2.org. No changes to the rest of Plastic source were required so I believe T5.3 uses could just use T5.4 plastic library once this is released (or build from source). Perhaps we should create a new version number (5.4.0?) to indicate difference between beta release and the final, or whatever we are targeting next. was (Author: kaosko): The patch did not apply cleanly, and besides there's ASM 5.0 final release so I just used the official source from asm.ow2.org. No changes to the rest of Plastic source were required so I believe T5.3 uses could just use T5.4 plastic library once this is released (or build from source). > Make tapestry5 java8 compatible > --- > > Key: TAP5-2214 > URL: https://issues.apache.org/jira/browse/TAP5-2214 > Project: Tapestry 5 > Issue Type: Improvement > Components: plastic >Affects Versions: 5.4 >Reporter: Joachim Van der Auwera >Assignee: Kalle Korhonen > Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, > 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, > plastic-5.3.7-mint-asm5-java8.jar > > > As it stands Tapestry does not work on java8. This seems to be caused by ASM. > Updating the enclosed asm to 5.0_Bet seems to do the trick. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (TAP5-2214) Make tapestry5 java8 compatible
[ https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13942171#comment-13942171 ] Kalle Korhonen commented on TAP5-2214: -- The patch did not apply cleanly, and besides there's ASM 5.0 final release so I just used the official source from asm.ow2.org. No changes to the rest of Plastic source were required so I believe T5.3 uses could just use T5.4 plastic library once this is released (or build from source). > Make tapestry5 java8 compatible > --- > > Key: TAP5-2214 > URL: https://issues.apache.org/jira/browse/TAP5-2214 > Project: Tapestry 5 > Issue Type: Improvement > Components: plastic >Affects Versions: 5.4 >Reporter: Joachim Van der Auwera >Assignee: Kalle Korhonen > Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, > 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, > plastic-5.3.7-mint-asm5-java8.jar > > > As it stands Tapestry does not work on java8. This seems to be caused by ASM. > Updating the enclosed asm to 5.0_Bet seems to do the trick. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (TAP5-2214) Make tapestry5 java8 compatible
[ https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13942170#comment-13942170 ] ASF subversion and git services commented on TAP5-2214: --- Commit 1acd9d22efbd11c41ff74ce1b33286dbb29bbd7f in tapestry-5's branch refs/heads/master from kaosko [ https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;h=1acd9d2 ] FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made a single change to ASM source, promoted visibility of AnnotationNode.accept from package private to public so I didn't have change to plastic (to instantiate AnnotationNode) > Make tapestry5 java8 compatible > --- > > Key: TAP5-2214 > URL: https://issues.apache.org/jira/browse/TAP5-2214 > Project: Tapestry 5 > Issue Type: Improvement > Components: plastic >Affects Versions: 5.4 >Reporter: Joachim Van der Auwera >Assignee: Kalle Korhonen > Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, > 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, > plastic-5.3.7-mint-asm5-java8.jar > > > As it stands Tapestry does not work on java8. This seems to be caused by ASM. > Updating the enclosed asm to 5.0_Bet seems to do the trick. -- This message was sent by Atlassian JIRA (v6.2#6252)
[16/23] FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made a single cha
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/1acd9d22/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/AnalyzerAdapter.java -- diff --git a/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/AnalyzerAdapter.java b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/AnalyzerAdapter.java new file mode 100644 index 000..c256825 --- /dev/null +++ b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/AnalyzerAdapter.java @@ -0,0 +1,947 @@ +/*** + * ASM: a very small and fast Java bytecode manipulation framework + * Copyright (c) 2000-2011 INRIA, France Telecom + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * 3. Neither the name of the copyright holders nor the names of its + *contributors may be used to endorse or promote products derived from + *this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.apache.tapestry5.internal.plastic.asm.commons; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.apache.tapestry5.internal.plastic.asm.Handle; +import org.apache.tapestry5.internal.plastic.asm.Label; +import org.apache.tapestry5.internal.plastic.asm.MethodVisitor; +import org.apache.tapestry5.internal.plastic.asm.Opcodes; +import org.apache.tapestry5.internal.plastic.asm.Type; + +/** + * A {@link MethodVisitor} that keeps track of stack map frame changes between + * {@link #visitFrame(int, int, Object[], int, Object[]) visitFrame} calls. This + * adapter must be used with the + * {@link org.apache.tapestry5.internal.plastic.asm.ClassReader#EXPAND_FRAMES} option. Each + * visitX instruction delegates to the next visitor in the chain, if any, + * and then simulates the effect of this instruction on the stack map frame, + * represented by {@link #locals} and {@link #stack}. The next visitor in the + * chain can get the state of the stack map frame before each instruction + * by reading the value of these fields in its visitX methods (this + * requires a reference to the AnalyzerAdapter that is before it in the chain). + * If this adapter is used with a class that does not contain stack map table + * attributes (i.e., pre Java 6 classes) then this adapter may not be able to + * compute the stack map frame for each instruction. In this case no exception + * is thrown but the {@link #locals} and {@link #stack} fields will be null for + * these instructions. + * + * @author Eric Bruneton + */ +public class AnalyzerAdapter extends MethodVisitor { + +/** + * List of the local variable slots for current execution + * frame. Primitive types are represented by {@link Opcodes#TOP}, + * {@link Opcodes#INTEGER}, {@link Opcodes#FLOAT}, {@link Opcodes#LONG}, + * {@link Opcodes#DOUBLE},{@link Opcodes#NULL} or + * {@link Opcodes#UNINITIALIZED_THIS} (long and double are represented by + * two elements, the second one being TOP). Reference types are represented + * by String objects (representing internal names), and uninitialized types + * by Label objects (this label designates the NEW instruction that created + * this uninitialized value). This field is null for unreachable + * instructions. + */ +public List locals; + +/** + * List of the operand stack slots for current execution frame. + * Primitive types are represented by {@link Opcodes#TOP}, + * {@link Opcodes#INTEGER}, {@link Opcodes#FLOAT}, {@link Opcodes#LONG}, + * {@link Opcodes#DOUBLE},{@link Opcodes#NULL} or + * {@link Opcodes#UNINITI
[15/23] FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made a single cha
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/1acd9d22/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/GeneratorAdapter.java -- diff --git a/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/GeneratorAdapter.java b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/GeneratorAdapter.java new file mode 100644 index 000..ceb051f --- /dev/null +++ b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/commons/GeneratorAdapter.java @@ -0,0 +1,1628 @@ +/*** + * ASM: a very small and fast Java bytecode manipulation framework + * Copyright (c) 2000-2011 INRIA, France Telecom + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * 3. Neither the name of the copyright holders nor the names of its + *contributors may be used to endorse or promote products derived from + *this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.apache.tapestry5.internal.plastic.asm.commons; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import org.apache.tapestry5.internal.plastic.asm.ClassVisitor; +import org.apache.tapestry5.internal.plastic.asm.Handle; +import org.apache.tapestry5.internal.plastic.asm.Label; +import org.apache.tapestry5.internal.plastic.asm.MethodVisitor; +import org.apache.tapestry5.internal.plastic.asm.Opcodes; +import org.apache.tapestry5.internal.plastic.asm.Type; + +/** + * A {@link org.apache.tapestry5.internal.plastic.asm.MethodVisitor} with convenient methods to generate + * code. For example, using this adapter, the class below + * + * + * public class Example { + * public static void main(String[] args) { + * System.out.println("Hello world!"); + * } + * } + * + * + * can be generated as follows: + * + * + * ClassWriter cw = new ClassWriter(true); + * cw.visit(V1_1, ACC_PUBLIC, "Example", null, "java/lang/Object", null); + * + * Method m = Method.getMethod("void()"); + * GeneratorAdapter mg = new GeneratorAdapter(ACC_PUBLIC, m, null, null, cw); + * mg.loadThis(); + * mg.invokeConstructor(Type.getType(Object.class), m); + * mg.returnValue(); + * mg.endMethod(); + * + * m = Method.getMethod("void main (String[])"); + * mg = new GeneratorAdapter(ACC_PUBLIC + ACC_STATIC, m, null, null, cw); + * mg.getStatic(Type.getType(System.class), "out", Type.getType(PrintStream.class)); + * mg.push("Hello world!"); + * mg.invokeVirtual(Type.getType(PrintStream.class), + * Method.getMethod("void println (String)")); + * mg.returnValue(); + * mg.endMethod(); + * + * cw.visitEnd(); + * + * + * @author Juozas Baliuka + * @author Chris Nokleberg + * @author Eric Bruneton + * @author Prashant Deva + */ +public class GeneratorAdapter extends LocalVariablesSorter { + +private static final String CLDESC = "Ljava/lang/Class;"; + +private static final Type BYTE_TYPE = Type.getObjectType("java/lang/Byte"); + +private static final Type BOOLEAN_TYPE = Type +.getObjectType("java/lang/Boolean"); + +private static final Type SHORT_TYPE = Type +.getObjectType("java/lang/Short"); + +private static final Type CHARACTER_TYPE = Type +.getObjectType("java/lang/Character"); + +private static final Type INTEGER_TYPE = Type +.getObjectType("java/lang/Integer"); + +private static final Type FLOAT_TYPE = Type +.getObjectType("java/lang/Float"); + +private static final Type LONG_TYPE = Type.getObjectType("java/lang/Long"); + +private static final Type DOUBLE_TYPE = Type +.getObjectType("j
[23/23] git commit: FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made
FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made a single change to ASM source, promoted visibility of AnnotationNode.accept from package private to public so I didn't have change to plastic (to instantiate AnnotationNode) Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/1acd9d22 Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/1acd9d22 Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/1acd9d22 Branch: refs/heads/master Commit: 1acd9d22efbd11c41ff74ce1b33286dbb29bbd7f Parents: 19b3960 Author: kaosko Authored: Thu Mar 20 12:23:08 2014 -0700 Committer: kaosko Committed: Thu Mar 20 12:23:08 2014 -0700 -- plastic/LICENSE-ASM-3_3_1.txt | 29 - plastic/LICENSE-ASM-5_0.txt | 29 + plastic/NOTICE.txt |4 +- .../internal/plastic/asm/AnnotationVisitor.java | 82 +- .../internal/plastic/asm/AnnotationWriter.java | 123 +- .../internal/plastic/asm/Attribute.java | 213 +- .../internal/plastic/asm/ByteVector.java| 168 +- .../internal/plastic/asm/ClassReader.java | 3350 ++ .../internal/plastic/asm/ClassVisitor.java | 291 +- .../internal/plastic/asm/ClassWriter.java | 666 ++-- .../tapestry5/internal/plastic/asm/Context.java | 145 + .../tapestry5/internal/plastic/asm/Edge.java|2 +- .../internal/plastic/asm/FieldVisitor.java | 75 +- .../internal/plastic/asm/FieldWriter.java | 138 +- .../tapestry5/internal/plastic/asm/Frame.java | 1087 +++--- .../tapestry5/internal/plastic/asm/Handle.java | 65 +- .../tapestry5/internal/plastic/asm/Handler.java | 13 +- .../tapestry5/internal/plastic/asm/Item.java| 188 +- .../tapestry5/internal/plastic/asm/Label.java | 169 +- .../internal/plastic/asm/MethodVisitor.java | 808 +++-- .../internal/plastic/asm/MethodWriter.java | 1444 .../tapestry5/internal/plastic/asm/Opcodes.java |9 +- .../tapestry5/internal/plastic/asm/Type.java| 333 +- .../internal/plastic/asm/TypePath.java | 193 + .../internal/plastic/asm/TypeReference.java | 452 +++ .../plastic/asm/commons/AdviceAdapter.java | 646 .../plastic/asm/commons/AnalyzerAdapter.java| 947 + .../plastic/asm/commons/CodeSizeEvaluator.java | 238 ++ .../plastic/asm/commons/GeneratorAdapter.java | 1628 + .../plastic/asm/commons/InstructionAdapter.java | 1170 ++ .../plastic/asm/commons/JSRInlinerAdapter.java | 333 +- .../asm/commons/LocalVariablesSorter.java | 381 ++ .../internal/plastic/asm/commons/Method.java| 282 ++ .../internal/plastic/asm/commons/Remapper.java | 223 ++ .../asm/commons/RemappingAnnotationAdapter.java | 79 + .../asm/commons/RemappingClassAdapter.java | 135 + .../asm/commons/RemappingFieldAdapter.java | 71 + .../asm/commons/RemappingMethodAdapter.java | 224 ++ .../asm/commons/RemappingSignatureAdapter.java | 155 + .../asm/commons/SerialVersionUIDAdder.java | 538 +++ .../plastic/asm/commons/SimpleRemapper.java | 69 + .../plastic/asm/commons/StaticInitMerger.java | 97 + .../asm/commons/TableSwitchGenerator.java | 57 + .../asm/commons/TryCatchBlockSorter.java| 96 + .../internal/plastic/asm/commons/package.html | 48 + .../optimizer/AnnotationConstantsCollector.java | 147 + .../asm/optimizer/ClassConstantsCollector.java | 198 ++ .../plastic/asm/optimizer/ClassOptimizer.java | 175 + .../plastic/asm/optimizer/Constant.java | 323 ++ .../plastic/asm/optimizer/ConstantPool.java | 249 ++ .../asm/optimizer/FieldConstantsCollector.java | 89 + .../plastic/asm/optimizer/JarOptimizer.java | 235 ++ .../asm/optimizer/MethodConstantsCollector.java | 224 ++ .../plastic/asm/optimizer/MethodOptimizer.java | 187 + .../plastic/asm/optimizer/NameMapping.java | 114 + .../plastic/asm/optimizer/Shrinker.java | 283 ++ .../plastic/asm/optimizer/jdk1.2.2_017.txt.gz | Bin 0 -> 113814 bytes .../plastic/asm/optimizer/jdk1.3.1_19.txt.gz| Bin 0 -> 128067 bytes .../asm/optimizer/shrink-annotations.properties | 53 + .../asm/optimizer/shrink-frames.properties | 62 + .../asm/optimizer/shrink-resize.properties | 37 + .../asm/optimizer/shrink-signatures.properties | 43 + .../asm/optimizer/shrink-writer.properties | 66 + .../plastic/asm/optimizer/shrink.properties | 380 ++ .../plastic/asm/signature/SignatureReader.java | 191 +- .../plastic/asm/signature/SignatureVisitor.java | 88 +- .../plastic/asm/signature/SignatureWriter.java |6 +- .../plastic/asm/tree/AbstractInsnNode.java | 132 +- .../plastic/
[06/23] FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made a single cha
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/1acd9d22/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/util/CheckClassAdapter.java -- diff --git a/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/util/CheckClassAdapter.java b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/util/CheckClassAdapter.java new file mode 100644 index 000..294fd46 --- /dev/null +++ b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/util/CheckClassAdapter.java @@ -0,0 +1,1009 @@ +/*** + * ASM: a very small and fast Java bytecode manipulation framework + * Copyright (c) 2000-2011 INRIA, France Telecom + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * 3. Neither the name of the copyright holders nor the names of its + *contributors may be used to endorse or promote products derived from + *this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.apache.tapestry5.internal.plastic.asm.util; + +import java.io.FileInputStream; +import java.io.PrintWriter; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor; +import org.apache.tapestry5.internal.plastic.asm.Attribute; +import org.apache.tapestry5.internal.plastic.asm.ClassReader; +import org.apache.tapestry5.internal.plastic.asm.ClassVisitor; +import org.apache.tapestry5.internal.plastic.asm.FieldVisitor; +import org.apache.tapestry5.internal.plastic.asm.Label; +import org.apache.tapestry5.internal.plastic.asm.MethodVisitor; +import org.apache.tapestry5.internal.plastic.asm.Opcodes; +import org.apache.tapestry5.internal.plastic.asm.Type; +import org.apache.tapestry5.internal.plastic.asm.TypePath; +import org.apache.tapestry5.internal.plastic.asm.TypeReference; +import org.apache.tapestry5.internal.plastic.asm.tree.ClassNode; +import org.apache.tapestry5.internal.plastic.asm.tree.MethodNode; +import org.apache.tapestry5.internal.plastic.asm.tree.analysis.Analyzer; +import org.apache.tapestry5.internal.plastic.asm.tree.analysis.BasicValue; +import org.apache.tapestry5.internal.plastic.asm.tree.analysis.Frame; +import org.apache.tapestry5.internal.plastic.asm.tree.analysis.SimpleVerifier; + +/** + * A {@link ClassVisitor} that checks that its methods are properly used. More + * precisely this class adapter checks each method call individually, based + * only on its arguments, but does not check the sequence + * of method calls. For example, the invalid sequence + * visitField(ACC_PUBLIC, "i", "I", null) visitField(ACC_PUBLIC, + * "i", "D", null) will not be detected by this class adapter. + * + * + * CheckClassAdapter can be also used to verify bytecode + * transformations in order to make sure transformed bytecode is sane. For + * example: + * + * + * InputStream is = ...; // get bytes for the source class + * ClassReader cr = new ClassReader(is); + * ClassWriter cw = new ClassWriter(cr, ClassWriter.COMPUTE_MAXS); + * ClassVisitor cv = new MyClassAdapter(new CheckClassAdapter(cw)); + * cr.accept(cv, 0); + * + * StringWriter sw = new StringWriter(); + * PrintWriter pw = new PrintWriter(sw); + * CheckClassAdapter.verify(new ClassReader(cw.toByteArray()), false, pw); + * assertTrue(sw.toString(), sw.toString().length()==0); + * + * + * Above code runs transformed bytecode trough the + * CheckClassAdapter. It won't be exactly the same verification as + * JVM does, but it run data flow analysis for the code of each method and + * checks that expectations are me
[01/23] FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made a single cha
Repository: tapestry-5 Updated Branches: refs/heads/master 19b396090 -> 1acd9d22e http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/1acd9d22/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/asm-xml.dtd -- diff --git a/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/asm-xml.dtd b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/asm-xml.dtd new file mode 100644 index 000..b862085 --- /dev/null +++ b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/asm-xml.dtd @@ -0,0 +1,349 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/1acd9d22/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/package.html -- diff --git a/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/package.html b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/package.html new file mode 100644 index 000..d7bbe66 --- /dev/null +++ b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/xml/package.html @@ -0,0 +1,96 @@ + + + +Provides http://sax.sourceforge.net/";>SAX 2.0 adapters for ASM +visitors to convert classes to and from XML. +These adapters can be chained with other SAX compliant content handlers and +filters, eg. XSLT or XQuery engines. This package is bundled as +a separate asm-xml.jar library and requires asm.jar. + +ASMContentHandler and SAXClassAdapter/SAXCodeAdapter +are using asm-xml.dtd. +Here is the example of bytecode to bytecode XSLT transformation. + + +SAXTransformerFactory saxtf = ( SAXTransformerFactory) TransformerFactory.newInstance(); +Templates templates = saxtf.newTemplates( xsltSource); + +TransformerHandler handler = saxtf.newTransformerHandler( templates); +handler.setResult( new SAXResult( new ASMContentHandler( outputStream, computeMax))); + +ClassReader cr = new ClassReader( bytecode); +cr.accept( new SAXClassAdapter( handler, cr.getVersion(), false), false); + + +See JAXP and SAX documentation for more detils. + + +There are few illustrations of the bytecode transformation with XSLT in +examples directory. The following XSLT procesors has been tested. + + + + +Engine +javax.xml.transform.TransformerFactory property + + + +jd.xslt +jd.xml.xslt.trax.TransformerFactoryImpl + + + +Saxon +net.sf.saxon.TransformerFactoryImpl + + + +Caucho +com.caucho.xsl.Xsl + + + +Xalan interpeter +org.apache.xalan.processor.TransformerFactory + + + +Xalan xsltc +org.apache.xalan.xsltc.trax.TransformerFactoryImpl + + + + +@since ASM 1.4.3 + + +
[19/23] FIXED - TAP5-2214: Make tapestry5 java8 compatible - apply source from AMS 5.0 final source release and change package name to org.apache.tapestry5.internal.plastic.asm. Also made a single cha
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/1acd9d22/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/MethodVisitor.java -- diff --git a/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/MethodVisitor.java b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/MethodVisitor.java index f0676b7..4585e67 100644 --- a/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/MethodVisitor.java +++ b/plastic/src/external/java/org/apache/tapestry5/internal/plastic/asm/MethodVisitor.java @@ -30,27 +30,33 @@ package org.apache.tapestry5.internal.plastic.asm; /** - * A visitor to visit a Java method. The methods of this class must be - * called in the following order: [ visitAnnotationDefault ] ( - * visitAnnotation | visitParameterAnnotation | - * visitAttribute )* [ visitCode ( visitFrame | - * visitXInsn | visitLabel | visitTryCatchBlock | - * visitLocalVariable | visitLineNumber )* visitMaxs ] - * visitEnd. In addition, the visitXInsn - * and visitLabel methods must be called in the sequential order of - * the bytecode instructions of the visited code, visitTryCatchBlock - * must be called before the labels passed as arguments have been - * visited, and the visitLocalVariable and visitLineNumber - * methods must be called after the labels passed as arguments have been - * visited. - * + * A visitor to visit a Java method. The methods of this class must be called in + * the following order: ( visitParameter )* [ + * visitAnnotationDefault ] ( visitAnnotation | + * visitTypeAnnotation | visitAttribute )* [ + * visitCode ( visitFrame | visitXInsn | + * visitLabel | visitInsnAnnotation | + * visitTryCatchBlock | visitTryCatchBlockAnnotation | + * visitLocalVariable | visitLocalVariableAnnotation | + * visitLineNumber )* visitMaxs ] visitEnd. In + * addition, the visitXInsn and visitLabel methods must + * be called in the sequential order of the bytecode instructions of the visited + * code, visitInsnAnnotation must be called after the annotated + * instruction, visitTryCatchBlock must be called before the + * labels passed as arguments have been visited, + * visitTryCatchBlockAnnotation must be called after the + * corresponding try catch block has been visited, and the + * visitLocalVariable, visitLocalVariableAnnotation and + * visitLineNumber methods must be called after the labels + * passed as arguments have been visited. + * * @author Eric Bruneton */ public abstract class MethodVisitor { /** * The ASM API version implemented by this visitor. The value of this field - * must be one of {@link Opcodes#ASM4}. + * must be one of {@link Opcodes#ASM4} or {@link Opcodes#ASM5}. */ protected final int api; @@ -62,9 +68,10 @@ public abstract class MethodVisitor { /** * Constructs a new {@link MethodVisitor}. - * - * @param api the ASM API version implemented by this visitor. Must be one - *of {@link Opcodes#ASM4}. + * + * @param api + *the ASM API version implemented by this visitor. Must be one + *of {@link Opcodes#ASM4} or {@link Opcodes#ASM5}. */ public MethodVisitor(final int api) { this(api, null); @@ -72,30 +79,51 @@ public abstract class MethodVisitor { /** * Constructs a new {@link MethodVisitor}. - * - * @param api the ASM API version implemented by this visitor. Must be one - *of {@link Opcodes#ASM4}. - * @param mv the method visitor to which this visitor must delegate method - *calls. May be null. + * + * @param api + *the ASM API version implemented by this visitor. Must be one + *of {@link Opcodes#ASM4} or {@link Opcodes#ASM5}. + * @param mv + *the method visitor to which this visitor must delegate method + *calls. May be null. */ public MethodVisitor(final int api, final MethodVisitor mv) { -/*if (api != Opcodes.ASM4) { +if (api != Opcodes.ASM4 && api != Opcodes.ASM5) { throw new IllegalArgumentException(); -}*/ +} this.api = api; this.mv = mv; } // - -// Annotations and non standard attributes +// Parameters, annotations and non standard attributes // - /** + * Visits a parameter of this method. + * + * @param name + *parameter name or null if none is provided. + * @param access + *the parameter's access flags, only ACC_FINAL, + *ACC_SYNTHETIC or/and ACC_MANDATED are + *allowed (see {@link Opcodes}). + */ +public void visitParameter(String name, int access) { +
[jira] [Assigned] (TAP5-2214) Make tapestry5 java8 compatible
[ https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Howard M. Lewis Ship reassigned TAP5-2214: -- Assignee: Kalle Korhonen (was: Howard M. Lewis Ship) Thanks for taking this over! > Make tapestry5 java8 compatible > --- > > Key: TAP5-2214 > URL: https://issues.apache.org/jira/browse/TAP5-2214 > Project: Tapestry 5 > Issue Type: Improvement > Components: plastic >Affects Versions: 5.4 >Reporter: Joachim Van der Auwera >Assignee: Kalle Korhonen > Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, > 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, > plastic-5.3.7-mint-asm5-java8.jar > > > As it stands Tapestry does not work on java8. This seems to be caused by ASM. > Updating the enclosed asm to 5.0_Bet seems to do the trick. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (TAP5-2214) Make tapestry5 java8 compatible
[ https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13942021#comment-13942021 ] Kalle Korhonen commented on TAP5-2214: -- Seems like this is just matter of applying the patch upgrade to ASM 5. Howard, this is currently assigned to you - do you want to take this on, or I can do it if you are busy. > Make tapestry5 java8 compatible > --- > > Key: TAP5-2214 > URL: https://issues.apache.org/jira/browse/TAP5-2214 > Project: Tapestry 5 > Issue Type: Improvement > Components: plastic >Affects Versions: 5.4 >Reporter: Joachim Van der Auwera >Assignee: Howard M. Lewis Ship > Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, > 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, > plastic-5.3.7-mint-asm5-java8.jar > > > As it stands Tapestry does not work on java8. This seems to be caused by ASM. > Updating the enclosed asm to 5.0_Bet seems to do the trick. -- This message was sent by Atlassian JIRA (v6.2#6252)
svn commit: r902559 [1/4] - in /websites/production/tapestry/content: ./ cache/
Author: buildbot Date: Thu Mar 20 17:21:25 2014 New Revision: 902559 Log: Production update by buildbot for tapestry Modified: websites/production/tapestry/content/ajax-and-zones.html websites/production/tapestry/content/application-module-class-cheat-sheet.html websites/production/tapestry/content/assets.html websites/production/tapestry/content/cache/main.pageCache websites/production/tapestry/content/community.html websites/production/tapestry/content/component-cheat-sheet.html websites/production/tapestry/content/component-classes.html websites/production/tapestry/content/component-mixins.html websites/production/tapestry/content/component-parameters.html websites/production/tapestry/content/component-reference.html websites/production/tapestry/content/component-templates.html websites/production/tapestry/content/configuration.html websites/production/tapestry/content/cookbook.html websites/production/tapestry/content/default-parameter.html websites/production/tapestry/content/documentation.html websites/production/tapestry/content/enum-parameter-recipe.html websites/production/tapestry/content/error-page-recipe.html websites/production/tapestry/content/exploring-the-project.html websites/production/tapestry/content/extending-the-if-component.html websites/production/tapestry/content/forms-and-validation.html websites/production/tapestry/content/frequently-asked-questions.html websites/production/tapestry/content/getting-started.html websites/production/tapestry/content/hibernate-core-conf.html websites/production/tapestry/content/hibernate-core.html websites/production/tapestry/content/hibernate-statistics.html websites/production/tapestry/content/hibernate-user-guide.html websites/production/tapestry/content/hibernate.html websites/production/tapestry/content/injection-in-detail.html websites/production/tapestry/content/injection.html websites/production/tapestry/content/integrating-with-jpa.html websites/production/tapestry/content/integrating-with-spring-framework.html websites/production/tapestry/content/introduction.html websites/production/tapestry/content/ioc-cookbook-overriding-ioc-services.html websites/production/tapestry/content/ioc-cookbook.html websites/production/tapestry/content/ioc.html websites/production/tapestry/content/javascript-rewrite.html websites/production/tapestry/content/javascript.html websites/production/tapestry/content/layout-component.html websites/production/tapestry/content/localization.html websites/production/tapestry/content/news.html websites/production/tapestry/content/overriding-exception-reporting.html websites/production/tapestry/content/page-and-component-classes-faq.html websites/production/tapestry/content/performance-and-clustering.html websites/production/tapestry/content/persistent-page-data.html websites/production/tapestry/content/principles.html websites/production/tapestry/content/property-expressions.html websites/production/tapestry/content/release-notes-50.html websites/production/tapestry/content/release-notes-51.html websites/production/tapestry/content/release-notes-52.html websites/production/tapestry/content/release-notes-53.html websites/production/tapestry/content/release-notes-535.html websites/production/tapestry/content/response-compression.html websites/production/tapestry/content/session-storage.html websites/production/tapestry/content/supporting-informal-parameters.html websites/production/tapestry/content/symbols.html websites/production/tapestry/content/tapestry-for-jsf-users.html websites/production/tapestry/content/tapestry-inversion-of-control-faq.html websites/production/tapestry/content/tapestry-ioc-configuration.html websites/production/tapestry/content/tapestry-ioc-overview.html websites/production/tapestry/content/templating-and-markup-faq.html websites/production/tapestry/content/test-page-2.html websites/production/tapestry/content/type-coercion.html websites/production/tapestry/content/using-beaneditform-to-create-user-forms.html websites/production/tapestry/content/using-jsr-330-standard-annotations.html Modified: websites/production/tapestry/content/ajax-and-zones.html == --- websites/production/tapestry/content/ajax-and-zones.html (original) +++ websites/production/tapestry/content/ajax-and-zones.html Thu Mar 20 17:21:25 2014 @@ -114,7 +114,7 @@ Page: -Ajax Components FAQ +Assets @@ -123,7 +123,7 @@ Page: -Assets +
svn commit: r902559 [4/4] - in /websites/production/tapestry/content: ./ cache/
Modified: websites/production/tapestry/content/session-storage.html == --- websites/production/tapestry/content/session-storage.html (original) +++ websites/production/tapestry/content/session-storage.html Thu Mar 20 17:21:25 2014 @@ -76,7 +76,7 @@ Page: -Performance and Clustering +Persistent Page Data @@ -85,7 +85,7 @@ Page: -Persistent Page Data +Session Storage @@ -94,7 +94,7 @@ Page: -Session Storage +Performance and Clustering @@ -104,11 +104,11 @@ Session Storage /**/ +/*]]>*/ Related ArticlesSession State Objects PitfallsCheck for CreationPersistence StrategiesConfiguring SSOs Session Attributes Modified: websites/production/tapestry/content/supporting-informal-parameters.html == --- websites/production/tapestry/content/supporting-informal-parameters.html (original) +++ websites/production/tapestry/content/supporting-informal-parameters.html Thu Mar 20 17:21:25 2014 @@ -77,7 +77,7 @@ table.ScrollbarTable td.ScrollbarParent table.ScrollbarTable td.ScrollbarNextName {text-align: right;border: none;} table.ScrollbarTable td.ScrollbarNextIcon {text-align: center;width: 16px;border: none;} -/*]]>*/https://cwiki.apache.org/confluence/images/icons/back_16.gif"; width="16" height="16">Overriding Exception Reporting https://cwiki.apache.org/confluence/images/icons/up_16.gif"; width="8" height="8">Cookbook Component Librarieshttps://cwiki.apache.org/confluence/images/icons/forwd_16.gif"; width="16" height="16"> +/*]]>*/https://cwiki.apache.org/confluence/images/icons/back_16.gif"; width="16" height="16">Error Page Recipe https://cwiki.apache.org/confluence/images/icons/up_16.gif"; width="8" height="8">Cookbook Component Librarieshttps://cwiki.apache.org/confluence/images/icons/forwd_16.gif"; width="16" height="16"> Supporting Informal Parameters @@ -89,7 +89,7 @@ table.ScrollbarTable td.ScrollbarNextIco Page: -Supporting Informal Parameters +Component Parameters @@ -98,7 +98,7 @@ table.ScrollbarTable td.ScrollbarNextIco Page: -Enum Parameter Recipe +Default Parameter @@ -107,7 +107,7 @@ table.ScrollbarTable td.ScrollbarNextIco Page: -Default Parameter +Enum Parameter Recipe @@ -116,7 +116,7 @@ table.ScrollbarTable td.ScrollbarNextIco Page: -Component Parameters +Supporting Informal Parameters Modified: websites/production/tapestry/content/symbols.html == --- websites/production/tapestry/content/symbols.html (original) +++ websites/production/tapestry/content/symbols.html Thu Mar 20 17:21:25 2014 @@ -86,7 +86,7 @@ table.ScrollbarTable td.ScrollbarNextIco Page: -Application Module Class Cheat Sheet +Configuration @@ -104,7 +104,7 @@ table.ScrollbarTable td.ScrollbarNextIco Page: -Response Compression +Application Module Class Cheat Sheet @@ -113,7 +113,7 @@ table.ScrollbarTable td.ScrollbarNextIco Page:
[CONF] Apache Tapestry > Component Templates
Nourredine Khadri a modifié la page : Component Templates Commentaire: fix typo ... All other elements in your templates should be in the default namespace, with no prefix (with the possible exception of any Library Namespaces (described below). There are a certain number of Tapestry elements, listed below, that act as template directives; beyond that, any element in the Tapestry namespace will be a Tapestry component. ... Remarque This element was deprecated starting in Tapestry 5.1 and removed in 5.3. Use parameter namespaces (below) instead. A element is a special kind of block. It is placed inside the body of an embedded component. The block defined by the is passed to the component. includes a mandatory name attribute to identify which parameter of the component to bind. ... Note that expansions escape any HTML reserved characters. Specifically, any less-than (<), greater than (>) and ampersand (&) are replaced with <, &gtgt; and & respectively. That is usually what you want. However, if your property contains HTML that you want rendered as raw markup, you can use the OutputRaw component instead, like this: where someContent is a property containing HTML markup. ... Afficher en ligne · J'aime · Afficher les modifications Ne plus surveiller l'espace · Gérer les notifications Ce message a été envoyé par le logiciel de collaboration d'équipe d'Atlassian Confluence 5.0.3
[jira] [Updated] (TAP5-2214) Make tapestry5 java8 compatible
[ https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Werner Lehmann updated TAP5-2214: - Attachment: plastic-5.3.7-mint-asm5-java8.jar We also ran into this problem: Tapestry 5.3 was not able to handle the Java 8 class files. For a temporary workaround (until there is official support), you may use the attached [^plastic-5.3.7-mint-asm5-java8.jar] as a replacement of Tapestry's original plastic-5.3.7.jar file. The jar was built on Java 7 using the plastic 5.3.7 and the asm 5 sources: - [plastic src|http://www.java2s.com/Code/JarDownload/plastic/plastic-5.3.7-sources.jar.zip] - [asm src|http://forge.ow2.org/projects/asm/] Obviously I would not recommend to run this on production. It is largely untested but seems to work for us. Use at own risk. > Make tapestry5 java8 compatible > --- > > Key: TAP5-2214 > URL: https://issues.apache.org/jira/browse/TAP5-2214 > Project: Tapestry 5 > Issue Type: Improvement > Components: plastic >Affects Versions: 5.4 >Reporter: Joachim Van der Auwera >Assignee: Howard M. Lewis Ship > Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, > 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, > plastic-5.3.7-mint-asm5-java8.jar > > > As it stands Tapestry does not work on java8. This seems to be caused by ASM. > Updating the enclosed asm to 5.0_Bet seems to do the trick. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (TAP5-1819) Need a way to stop periodical refresh on ZoneRefresh mixins
[ https://issues.apache.org/jira/browse/TAP5-1819?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13941703#comment-13941703 ] Andrei Arapov commented on TAP5-1819: - +1 very needed feature > Need a way to stop periodical refresh on ZoneRefresh mixins > --- > > Key: TAP5-1819 > URL: https://issues.apache.org/jira/browse/TAP5-1819 > Project: Tapestry 5 > Issue Type: New Feature > Components: tapestry-core >Affects Versions: 5.3 >Reporter: Yohan Yudanara > Labels: zone, zonerefresh > > Currently periodical update of ZoneRefresh mixins is infinite. > Requesting a feature to stop the periodical update when some condition is met. -- This message was sent by Atlassian JIRA (v6.2#6252)