[
https://issues.apache.org/jira/browse/BCEL-101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Emmanuel Bourg updated BCEL-101:
--------------------------------
Priority: Blocker
Environment: (was: Operating System: other
Platform: Other)
Fix Version/s: 6.0
Priority: (was: P2)
Severity: (was: blocker)
> verifier raises ....AssertionViolatedException when done against Java5 files
> with generics/annotations
> ------------------------------------------------------------------------------------------------------
>
> Key: BCEL-101
> URL: https://issues.apache.org/jira/browse/BCEL-101
> Project: Commons BCEL
> Issue Type: Bug
> Components: Main
> Affects Versions: 5.2
> Reporter: Erik Bengtson
> Assignee: Apache Commons Developers
> Priority: Blocker
> Fix For: 6.0
>
> Attachments: bcel-patch-verifier.txt
>
>
> Running the verifier against the class:
> package org.jpox.samples.jpa.company;
> import java.util.Collection;
> import java.util.HashSet;
> import javax.persistence.Entity;
> import javax.persistence.Id;
> @Entity
> public class GenericsPerson
> {
> public String id;
> Collection<Person> persons = new HashSet<Person>();
>
> @Id
> public String getId()
> {
> return id;
> }
>
> public void setId(String id)
> {
> this.id = id;
> }
>
> public void setPersons(Collection<Person> perss)
> {
> this.persons = perss;
> }
>
> public Collection<Person> getPersons()
> {
> return persons;
> }
> }
> Gives this error output:
> JustIce by Enver Haase, (C) 2001-2002.
> <http://bcel.sourceforge.net>
> <http://jakarta.apache.org/bcel>
> Now verifying: org.jpox.samples.jpa.company.GenericsPerson
> Pass 1:
> VERIFIED_OK
> Passed verification.
> Exception in thread "main"
> org.apache.bcel.verifier.exc.AssertionViolatedException: INTERNAL ERROR:
> Please
> adapt 'class org.apache.bcel.verifier.statics.StringRepresentation' to deal
> with
> objects of class 'class org.apache.bcel.classfile.RuntimeVisibleAnnotations'.
> at
> org.apache.bcel.verifier.statics.StringRepresentation.toString(StringRepresentation.java:98)
> at
> org.apache.bcel.verifier.statics.Pass2Verifier.tostring(Pass2Verifier.java:1442)
> at
> org.apache.bcel.verifier.statics.Pass2Verifier.access$0(Pass2Verifier.java:1441)
> at
> org.apache.bcel.verifier.statics.Pass2Verifier$CPESSC_Visitor.visitJavaClass(Pass2Verifier.java:387)
> at org.apache.bcel.classfile.JavaClass.accept(JavaClass.java:213)
> at
> org.apache.bcel.classfile.DescendingVisitor.visitJavaClass(DescendingVisitor.java:94)
> at org.apache.bcel.classfile.JavaClass.accept(JavaClass.java:213)
> at
> org.apache.bcel.classfile.DescendingVisitor.visit(DescendingVisitor.java:88)
> at
> org.apache.bcel.verifier.statics.Pass2Verifier$CPESSC_Visitor.<init>(Pass2Verifier.java:357)
> at
> org.apache.bcel.verifier.statics.Pass2Verifier$CPESSC_Visitor.<init>(Pass2Verifier.java:337)
> at
> org.apache.bcel.verifier.statics.Pass2Verifier.constant_pool_entries_satisfy_static_constraints(Pass2Verifier.java:298)
> at
> org.apache.bcel.verifier.statics.Pass2Verifier.do_verify(Pass2Verifier.java:159)
> at org.apache.bcel.verifier.PassVerifier.verify(PassVerifier.java:71)
> at org.apache.bcel.verifier.Verifier.doPass2(Verifier.java:75)
> at org.apache.bcel.verifier.Verifier.main(Verifier.java:217)
--
This message was sent by Atlassian JIRA
(v6.2#6252)