[ 
https://issues.apache.org/jira/browse/TAP5-20?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Howard M. Lewis Ship closed TAP5-20.
------------------------------------

    Resolution: Fixed
      Assignee: Howard M. Lewis Ship

Advising a method works by renaming the original method.

The original method keeps its line number information, and shows up correctly 
in the stack trace, except for the name (which is something like 
org.apache.tapestry5.integration.app1.pages.MethodAdviceDemo._$advised$setText.

The original method, setText() in this example, is fabricated on the fly and 
has no line number information.

Looking at the Javassist APIs, there doesn't seem to be a way to attach a 
LineNumberTable to a new method.

> Stack frames in the exception report are not always highlighted correctly
> -------------------------------------------------------------------------
>
>                 Key: TAP5-20
>                 URL: https://issues.apache.org/jira/browse/TAP5-20
>             Project: Tapestry 5
>          Issue Type: Bug
>    Affects Versions: 5.1.0.0
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>            Priority: Minor
>
> User code stack frames are supposed to be highlighted in blue (via adding a 
> CSS class to the enclose <li>) but this doesn't always happen.
> It appears the methods that are advised lose their line number information 
> and this interferes the following code:
>     public String getFrameClass()
>     {
>         if (frame.getClassName().startsWith(appPackage) && 
> frame.getLineNumber() > 0) return "t-usercode-frame";
>         return null;
>     }
> The line number is 0 for the advised method.
> Somehow we need to flag the method as user code, perhaps by finding a way to 
> "re-attach" the line number from the advised method to its replacement.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to