A few more:

http://pharos.inria.fr/Java/query.jsp?cids=c_2203&hist=cids%3Dc_2154


Mark R. Diggory wrote:


Good documentation, good project activity. Documentation for how to plug it in under tomcat and other application servers. Nice separation of hooks, logging and monitoring into separate layers...

worth a try I think :-)

thanks

John Keyes wrote:

I only came across JRat[1] yesterday evening.  I haven't experimented
with it yet but its on my todo list.

-John K

[1] http://jrat.sourceforge.net

On 17 Nov 2003, at 18:04, Mark R. Diggory wrote:

Very true, but are there any Open Source projects or initiatives to standardize this sort of approach already? For example, here is a project, I'm not sure of its current state (is about a year since anything was done to it).

http://jiapi.sourceforge.net/

Also, does JMX relate at all to this use case?

http://java.sun.com/products/JavaManagement/

In other words is there any sort of "standardized" approach to managing runtime event debugging in Java?

-Mark


Inger, Matthew wrote:


Not really a runtime dependency.  You would merely use
a class loader which would have BCEL instrument your code.
Your code would have have no clue about anything that's
being done to it, and you could easily write your code
generically enough to plug in an arbitrary classloader.
Here's a main program which replaces the classloader,
and calls another main program.  Think of it as a wrapper
script.
    public static void main(String[] args)
        throws Exception
    {
        // This is where you would construct your class loader
        // Done generically enough, you could specify a classloader
        // on the command line, and construct it here using reflection.
        ClassLoader myClassLoader =
                Thread.currentThread().getContextClassLoader();
        final int realClassNameIndex = 0;
        String realClassName = args[realClassNameIndex];
        int realArgsLength = args.length - realClassNameIndex - 1;
        String realClassArgs [] = new String[realArgsLength];
        System.arraycopy(args, realClassNameIndex + 1,
                         realClassArgs, 0,
                         realArgsLength);
        Class clazz = myClassLoader.loadClass(realClassName);
        Method m = clazz.getDeclaredMethod("main",
                new Class[] { args.getClass() });
        m.invoke(null, new Object[] { realClassArgs });
    }
-----Original Message-----
From: Tomasz Pik [mailto:[EMAIL PROTECTED]
Sent: Monday, November 17, 2003 12:03 PM
To: Jakarta Commons Developers List
Subject: Re: [Math] common-math and bloated 3rd party libraries
Mark R. Diggory wrote:

I know there were a means to setup logging for debugging without actually having to bury your code in logging lines... I've actually seen packages like BCEL used to transform the classes in such a way as to "inject" logging lines into bytecode, its a pretty slick idea, but also has the overhead of learning how to use BCEL to manipulate the bytecode base without screwing with the actual algorithm behavior.


AspectJ?
But it introduces another runtime dependency...
Tomek

-Mark


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



-- Mark Diggory Software Developer Harvard MIT Data Center http://osprey.hmdc.harvard.edu

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



-- Mark Diggory Software Developer Harvard MIT Data Center http://osprey.hmdc.harvard.edu

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to