I recently added an extra parameter to my
EJB method making a total of 9 parameters.
The code worked fine in my local and when deployed in development environment. We have an performance environment, it works there too, but in SYST environment it fails throwing
java.lang.ClassFormatError: $Proxy10 (Repetitive method name/signature) I remember reading somewhere that
the maximum parameters that a method can declare depends on the jvm FYI, Following is the error log
[11/14/08 10:19:03:322 EST] 00000048 TSessionDAO I Persistence About to Execute: insert into T_SESSION (CREATE_DT, CREATE_USER_ID, UPDATE_DT, UPDATE_USER_ID, SESSION_ID ) values ('2008-11-14 10:19:01.827','pddcsyt-95','2008-11-14 10:19:01.828','pddcsyt-95','0831911061000013')
[11/14/08 10:19:16:284 EST] 00000048 Transactional E Unable to invoke on com.ibm.ws.rsadapter.jdbc.WSJdbcConnection@57b33b26
ublic abstract java.sql.PreparedStatement java.sql.Connection.prepareStatement(java.lang.String) throws java.sql.SQLException, java.lang.ClassFormatError: $Proxy10 (Repetitive method name/signature)
[11/14/08 10:19:16:355 EST] 00000048 TSessionDAO I Persistence Execution Complete, Duration = 13034 milliseconds
[11/14/08 10:19:16:360 EST] 00000048 Transactional I In Transaction, bypassing close of Connection
[11/14/08 10:19:52:199 EST] 00000048 Transactional I Transaction committed on com.ibm.ws.rsadapter.jdbc.WSJdbcConnection@57b33b26
[11/14/08 10:19:52:202 EST] 00000048 ExceptionUtil E CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "saveQueuedTransactions" on bean "BeanId(release1#sessionMgmtEJB.jar#SessionManagementEJB, null)". Exception data: pa.bscoe.bscoe4j.common.objects.framework.UncheckedApplicationException: Unable to invoke on com.ibm.ws.rsadapter.jdbc.WSJdbcConnection@57b33b26
ublic abstract java.sql.PreparedStatement java.sql.Connection.prepareStatement(java.lang.String) throws java.sql.SQLException
at pa.bscoe.bscoe4j.common.persistence.TransactionalConnection.invoke(Unknown Source)
at $Proxy4.prepareStatement(Unknown Source)
at pa.bscoe.bscoe4j.common.persistence.AbstractDAO.bindParameters(Unknown Source)
at pa.bscoe.bscoe4j.common.persistence.AbstractDAO.execute(Unknown Source)
at pa.bscoe.bscoe4j.common.persistence.AbstractDAO.add(Unknown Source)
at pa.bscoe.bscoe4j.common.commands.persistence.CreateObjectCommand.executeDAO(Unknown Source)
at pa.bscoe.bscoe4j.common.commands.persistence.PersistObjectAbstractCommand.execute(Unknown Source)
at pa.bscoe.bscoe4j.common.commands.CommandManager.perform(Unknown Source)
at pa.bscoe.bscoe4j.common.commands.persistence.PersistenceCommandManager.perform(Unknown Source)
at us.pa.state.dot.centric.business.session.bo.SessionManagementBO.saveQueuedTransactions(Unknown Source)
at us.pa.state.dot.centric.business.session.services.SessionManagementEJBBean.saveQueuedTransactions(Unknown Source)
at us.pa.state.dot.centric.business.session.services.EJSRemoteStatelessSessionManagementEJB_28669a0b.saveQueuedTransactions(Unknown Source)
at us.pa.state.dot.centric.business.session.services._SessionManagementEJB_Stub.saveQueuedTransactions(_SessionManagementEJB_Stub.java:318)
at us.pa.state.dot.centric.presentation.session.delegate.SessionManagementDelegate.saveQueuedTransactions(Unknown Source)
at us.pa.state.dot.centric.presentation.session.action.QueueControllerAction.processSession(Unknown Source)
at us.pa.state.dot.centric.presentation.session.action.QueueControllerAction.processQuickTransaction(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled Code))
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled Code))
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170)
at org.apache.struts.actions.LookupDispatchAction.execute(LookupDispatchAction.java:146)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1701)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:825)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:347)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1078)
at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:295)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:396)
at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:347)
at us.pa.state.dot.centric.presentation.fw.CentricRequestProcessor.processForwardConfig(Unknown Source)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1701)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:825)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1936)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:116)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:434)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:373)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:253)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminaters(NewConnectionInitialReadCallback.java:207)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:109)
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java(Compiled Code))
Caused by: java.lang.IllegalArgumentException: java.lang.ClassFormatError: $Proxy10 (Repetitive method name/signature)
at java.lang.reflect.Proxy.getProxyClass(Proxy.java:514)
at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
at pa.bscoe.bscoe4j.common.persistence.TransactionalStatement.newInstance(Unknown Source)
... 58 more
Thanks All,
Himalay Majumdar
[ November 19, 2008: Message edited by: Martijn Verburg ]