[
https://jira.jboss.org/browse/JBAOP-731?page=com.atlassian.jira.plugin.sy...
]
Andrew Dinn commented on JBAOP-731:
-----------------------------------
One thing you might try as a workaround is to compile the subclass against the superclass
bytecode as it was before applying the AOP transform (assuming that this is an option for
you and/or anyone consuming your code). The resulting bytecode for the subclass should
still be able to be loaded into the target runtime alongside the AOP-transformed version
of the superclass.
problem with javac->aopc->javac sequence
----------------------------------------
Key: JBAOP-731
URL:
https://jira.jboss.org/browse/JBAOP-731
Project: JBoss AOP
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 2.1.1.GA
Environment: JDK 1.6.0_13/32bit
Reporter: Konstantin Sobolev
Attachments: bug.tar.gz, POJO.j
I'm trying to switch from JBossAOP 1.5.6 to 2.1.1 and can't build my project,
looks like there are some problems with aop-compiled classes. Here's what happens:
first we build our interface classes, let's say there's *abstract* POJO1 among
them. Then we run AopC on them, and it modifies POJO1.class
Then we compile some more classes, and there's non-abstract POJO2 there, which
extends POJO1. At this time javac fails with this message:
POJO2 is not abstract and does not override abstract method _getAdvisor() in
org.jboss.aop.Advised
javap shows that POJO1 now implements Advisable and indeed contains _getAdvisor() method,
but this method is not abstract! I'm confused.
Running AopC after compiling all of the classes works fine. Making POJO1 non-abstract
also makes javac happy.
I'm attaching a testcase. Unpack it into
jboss-aop-2.1.1.GA/docs/aspect-framework/examples/bug and run ant there to reproduce the
problem.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira