Ok, That wasn't very clear. BasicHandler is supposed to be subclassed (and is, quite a few times in Axis), but each sublcass declares its own static log variable. Take a look at org.apache.axis.FaultableHandler.java, as an example. I'd say WsseClientHandler.java has been badly written and is unusable. But it might have been written for an older version of Axis that didn't have the log class variable as private in BasicHandler. Who knows? Either way, you have the solution, edit the class to declare your own log variable, recompile and away you go. -jeff
-----Original Message----- From: Walker, Jeff Sent: Wednesday, August 01, 2007 4:49 PM To: axis-user@ws.apache.org Subject: RE: Axis-wsse and log.debug I don't know. It looks like that class isn't really supposed to be subclassed. Just guessing. I don't know of anyone using wsse, is that the old security project by apache? I think most people interested in open source security projects moved on to wss4j and Rampart. I would abandon wsse, if you can. (No active development that I can see, hence, probably no bug fixes coming. You could always take the src code and edit yourself. I know that's a lousy solution). -jeff -----Original Message----- From: Hillel Seltzer [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 01, 2007 4:37 PM To: axis-user@ws.apache.org Subject: RE: Axis-wsse and log.debug So how does the publicly distributed axis-wsse jar work for anyone? Is there a way to set a global "log" variable that would then be seen by the WsseClientHandler class instead of trying to inherit it from its abstract superclass? Thanks. --Hillel On Wed, 1 Aug 2007 16:29:53 -0400, Walker, Jeff wrote > Looks like the log variable is declared private, that means only methods > in that class can use that variable, not subclasses like > WsseClientHandler. > -jeff > > -----Original Message----- > From: Hillel Seltzer [mailto:[EMAIL PROTECTED] > Sent: Wednesday, August 01, 2007 4:22 PM > To: axis-user@ws.apache.org > Subject: Re: Axis-wsse and log.debug > > I did a little digging in the axis 1.4 and axis-wsse source. > > The WsseClientHandler class extends the axis BasicHandler class. > BasicHandler has the class variable: > private static Log log = > LogFactory.getLog(BasicHandler.class.getName()); > > Yet, when the code in WsseClientHandler tries to use the > "log.debug" method, the runtime (Java 1.4) ends up throwing > the exception: > java.lang.IllegalAccessError: > net.vitale.filippo.axis.handlers.WsseClientHandler tried to access > field > org/apache/axis/handlers/BasicHandler.log from class > at > net.vitale.filippo.axis.handlers.WsseClientHandler.invoke(WsseClientHand > ler.java:92) > > By extending the BasicHandler class, shouldn't the WsseClientHandler > class just inherit the "log" variable? What is wrong here? > What can I do about it without recompiling axis and/or axis-wsse > from the source? > > Thanks. > ---Hillel > --------------------------------------------------------------------- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]