DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=24688>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=24688 Invalid LocationInfo for Websphere Compiled Code Summary: Invalid LocationInfo for Websphere Compiled Code Product: Log4j Version: 1.2beta Platform: Sun OS/Version: AIX Status: NEW Severity: Minor Priority: Other Component: Appender AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] We have written a custom jdbc appender which uses the LocationInfo object to retrieve the method name and the class name of the logging statement. We are using version 1.2.8 of log4j on a Websphere 4.x system. If the stack trace shows compiled code, the method name in the LocationInfo is ending up to be "java" and the class name contains the class, method name, and part of the file name information. Looking through the code in LocationInfo, it appears that the problem is that the Websphere stack trace is formatted in an unexpected way. It contains an additional set of parenthesis which the code in getMethodName and getClassName is assuming is the start of the module name and line number, but actually is pointing to the words "Compiled Code". I realize that this is very Websphere specific, but I thought I would report it for others who may encounter this problem. The stack trace from Websphere looks like this: com.bankone.cca.library.exception.NotFoundException: Service transaction records not found at com.bankone.cca.component.statement.service.impl.TransactionStatementRsMapper.ge tTransactionProductions(TransactionStatementRsMapper.java(Compiled Code)) at com.bankone.cca.component.statement.service.impl.TransactionStatementRsMapper.cr eate(TransactionStatementRsMapper.java:46) at com.bankone.cca.component.statement.service.impl.RetrieveTransactionStatementRsM apper.getResponse(RetrieveTransactionStatementRsMapper.java:62) at com.bankone.cca.component.statement.service.impl.StatementProcess.getServiceTran sactions(StatementProcess.java:572) at com.bankone.cca.component.statement.service.StatementManager.getServiceTransacti ons(StatementManager.java:323) at java.lang.reflect.Method.invoke(Native Method) at com.bankone.cca.component.statement.service.StatementTransactionManager.executeT ransaction(StatementTransactionManager.java(Compiled Code)) at com.bankone.cca.component.statement.service.StatementTransactionManager.executeC urrentTransaction(StatementTransactionManager.java(Compiled Code)) at com.bankone.cca.struts.controller.statements.StatementsSelectAction.doExecute (StatementsSelectAction.java(Compiled Code)) at com.bankone.cca.struts.controller.BaseAction.execute (BaseAction.java:77) at org.apache.struts.action.RequestProcessor.processActionPerform (RequestProcessor.java:480) at org.apache.struts.action.RequestProcessor.process (RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process (ActionServlet.java:1420) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:502) at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled Code)) at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled Code)) at com.ibm.servlet.engine.webapp.StrictServletInstance.doService (ServletManager.java(Compiled Code)) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service (StrictLifecycleServlet.java(Compiled Code)) at com.ibm.servlet.engine.webapp.IdleServletState.service (StrictLifecycleServlet.java(Compiled Code)) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service (StrictLifecycleServlet.java(Inlined Compiled Code)) at com.ibm.servlet.engine.webapp.ServletInstance.service (ServletManager.java(Compiled Code)) at com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch (ServletManager.java(Compiled Code)) at com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch (ServletManager.java(Inlined Compiled Code)) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch (WebAppRequestDispatcher.java(Compiled Code)) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch (WebAppRequestDispatcher.java(Compiled Code)) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward (WebAppRequestDispatcher.java(Compiled Code)) at com.ibm.servlet.engine.srt.WebAppInvoker.doForward (WebAppInvoker.java:134) at com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook (WebAppInvoker.java:239) at com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation (CachedInvocation.java:67) at com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke (CacheableInvocationContext.java:106) at com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI (ServletRequestProcessor.java:154) at com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service (OSEListener.java:315) at com.ibm.servlet.engine.http11.HttpConnection.handleRequest (HttpConnection.java:60) at com.ibm.ws.http.HttpConnection.readAndHandleRequest (HttpConnection.java(Compiled Code)) at com.ibm.ws.http.HttpConnection.run(HttpConnection.java(Compiled Code)) at com.ibm.ws.util.CachedThread.run(ThreadPool.java:138) The class name that is in LocationInfo ends up being com.bankone.cca.component.statement.service.impl.TransactionStatementRsMapper.ge tTransactionProductions(TransactionStatementRsMapper --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]