I do the following:
1. Enable the usual eclipse debugger stuff
2. Download the sources for either or both of MyFaces or the library
you're debugging, f.i. Tomahawk
3. Add the debug sources to Eclipse's list of sources. That's usually
easiest to do by:
1. Setting a breakpoint in your own code just before it dives
into the framework
2. Step into the framework ... you'll get a no source available
message
3. Click the eclipse button to add additional sources and point
to the zip of the source
4. Behold the internals of MyFaces. Pretty good writing!
4. Debug away to your heart's content, learning much more than you
wanted to about reflection
R.
On Fri, Feb 15, 2008 at 1:28 PM, Mike Kienenberger <[EMAIL PROTECTED]>
wrote:
> Like Curtiss, I use the eclipse debugger to trap the exception and
> determine what component is causing the issue by examining the stack
> variables.
>
> When the level of abstraction gets deep, then you really don't have
> any other choice. It doesn't really matter if you are a user or a
> developer.
>
> And if the error seems like it was something that could have been
> reported better, I open a MyFaces issue asking for it to be improved.
>
> On 2/15/08, Steve Horne <[EMAIL PROTECTED]> wrote:
> > I am wondering what other people do when faced with this problem. As
> for
> > me, I generally start removing things and adding them back in until I
> > localize the problem area, then try different things until it starts
> > working.
> >
> >
> > On Fri, Feb 15, 2008 at 12:12 PM, Curtiss Howard <[EMAIL PROTECTED]>
> > wrote:
> > > I generally use Eclipse's remote debugging facilities. I'm not sure
> > > what appserver you're using, but with Tomcat you can do the following:
> > >
> > > set JPDA_ADDRESS=8000
> > > set JPDA_TRANSPORT=dt_socket
> > > catalina jpda start
> > >
> > > Then in Eclipse you select a project, choose "Open Debug Dialog" and
> > > create a new "Remote Java Application" configuration. The default
> > > values will connect to the Tomcat server you just started.
> > >
> > > You should have all the appropriate Myfaces source trees imported as
> > > projects. Then, just set breakpoints in the code and hit your
> > > application as normal. It will suspend whenever one of the
> breakpoints
> > > is hit. Then you can do the normal debugger stuff: continue
> execution,
> > > step over, step into, etc. Eclipse will also list all the variables
> in
> > > use and their values.
> > >
> >
> >
> >
> > --
> > "Many men go fishing all of their lives without knowing it is not fish
> they
> > are after."
> >
> > - Henry David Thoreau
>