[Soot-list] problem when trying to retrieve active body for methods woven using AOP

Eric Bodden eric.bodden at mail.mcgill.ca
Mon Jul 27 05:54:51 EDT 2009


Hi Peng.

Wha do you mean by "cannot get the active body"? Does the method have
no body (according to Soot) or can Soot simply not find any line
number information for the method. The latter would not surprise me
because the method likely holds generated code.

Eric

2009/7/27 lpxz <lpxz at ust.hk>:
> Dear All:
>    As I set keep-line-number on, soot would first apply jb pack on all
> the application classes.
>    But within LineNumberAdder's internalTransform, soot can not get the
> active body for those methods woven using aop. like the following:
>
>    <spec.jbb.Company: java.lang.Object
> startAutomated_aroundBody15$advice(spec.jbb.Company,short,int,int,aolib.adstm.PrismAdapter,aolib.adstm.ITransactional,org.aspectj.runtime.internal.AroundClosure,org.aspectj.lang.JoinPoint$StaticPart)>
>
> java.lang.RuntimeException: no active body present for method
> <spec.jbb.Company: java.lang.Object
> startAutomated_aroundBody15$advice(spec.jbb.Company,short,int,int,aolib.adstm.PrismAdapter,aolib.adstm.ITransactional,org.aspectj.runtime.internal.AroundClosure,org.aspectj.lang.JoinPoint$StaticPart)>
>
>
>
>     Have you met with such case before, and what is the reason for this
> problem and how to solve it?
>     By the way, I use "jad -p Company" , it would report
> startAutomated_aroundBody15$advice couldnot fully decompiled too.
>
> Regards.
> Peng
>
> soot-list-request at sable.mcgill.ca wrote:
>> Send Soot-list mailing list submissions to
>>       soot-list at sable.mcgill.ca
>>
>> To subscribe or unsubscribe via the World Wide Web, visit
>>       http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>> or, via email, send a message with subject or body 'help' to
>>       soot-list-request at sable.mcgill.ca
>>
>> You can reach the person managing the list at
>>       soot-list-owner at sable.mcgill.ca
>>
>> When replying, please edit your Subject line so it is more specific
>> than "Re: Contents of Soot-list digest..."
>>
>>
>> Today's Topics:
>>
>>    1. Re: Editing the ExceptionalUnitGraph (Eric Bodden)
>>
>>
>> ----------------------------------------------------------------------
>>
>> Message: 1
>> Date: Sun, 26 Jul 2009 11:12:03 +0200
>> From: Eric Bodden <eric.bodden at mail.mcgill.ca>
>> Subject: Re: [Soot-list] Editing the ExceptionalUnitGraph
>> To: Norman Karsch <norman.karsch at udo.edu>
>> Cc: "soot-list at sable.mcgill.ca" <soot-list at sable.mcgill.ca>
>> Message-ID:
>>       <804e3c660907260212j37f25655nedf81858ed717a65 at mail.gmail.com>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Hi Norman.
>>
>> I am afraid, I don't think that there is any such support. Of course
>> you could modify the UnitGraph or define your own subclass of
>> UnitGraph that generates a graph with the properties you like to begin
>> with. But as you say you don't want to modify your graph. In that case
>> I would suggest to create a custom FlowAnalysis class that handles the
>> units you want to "split" specially.
>>
>> Eric
>>
>> 2009/7/25 Norman Karsch <norman.karsch at udo.edu>:
>>
>>> Hi there,
>>>
>>> I'm writing my diploma thesis about Virtual Call Resolution in Java
>>> based upon Property Oriented Expansion at the moment an I'm using Soot
>>> for my analysis. Now I need to split Units and assign different
>>> out-sets ?to each of the two new nodes. My problem at this point is that
>>> I cannot "change" the UnitGraph. In other words I cannot add my new node
>>> to the existing UnitGraph. So I'd like to know if there is any (allready
>>> existing) possibility to do so, for I could not find any...
>>>
>>> I'd very much appreciate your help!
>>>
>>> Thanks in advance
>>> Norman
>>>
>>>
>>>
>>> _______________________________________________
>>> Soot-list mailing list
>>> Soot-list at sable.mcgill.ca
>>> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>>>
>>>
>>
>>
>>
>>
>
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>



-- 
Eric Bodden
Sable Research Group, McGill University
Montréal, Québec, Canada


More information about the Soot-list mailing list