hi , I am using 3 tier architecture where my servlets and htmls are placed in the iplanet webserver4.1 Enterprise Edition SP9 and my EJB in weblogic server 5.1 and the Weblogic server uses oci driver to connect to oracle 8.1.6 when I am trying to access the EJB which is deployed in weblogic 5.1 from servlets which are on iplanet webserver 4.1 I am facing a problem , the servlet in iplanet is not able able to lookup the bean which are deployed on weblogic server using their JNDI lookup name .I am using t3 connectivity to comunicate with the EJB from the servlets.My request hangs for a long time and then displays a insecure item dialog box in the browser.when i checked up the weblogic logs i found no exception or errors while the iplanet log showed me this error [Root exception is java.net.ConnectException: Connection refused]javax.naming.CommunicationException
The servlet is unable to lookup the bean and I found the connectivity between the iplanet webserver machine and the weblogic server machine is lost and i was not able to invoke a telnet session from iplanet webserver machine to weblogic server machine it is giving connection refused.however if i shut and start iplanet webserver the connectivity is restablished and i am able to invoked the bean from the servlets.This problem is happening once in a while but still i am not able to find a permanent solution for it can anybody give the reason why this is happening the only solution that i have now is to restart iplanet webserver.
Any particular reason why you are separating your Web and EJB Tiers? In 99% of cases, you will be better off co-locating the tiers and eliminating the network call. Don't counter with scalability because that is just a red herring.
This is a Internet Banking application and the Webserver(iPlanet) is hosted on the machine which is within a firewall and the Weblogic is hosted on a machine which has the Oracle database and therefore sensitive banking details. So , we separate them into three tiers due to security reasons. We have also been investigating the same and we found the following error on the weblogic logs 70-8058104-62118167458-12494-64-120-78-9820Fri Mar 14 10:33:46 CET 2003:<I> <EJB JAR deployment /usr10/weblogic/myserver/IpbEjbs/aps.jar> Exception during commi t of transaction: '1043835052425_32272' javax.transaction.RollbackException: Transaction TxC (5367278, xid = 10438350524 25_32272, timeout = 0, txState = Rolledback, root = null has been rolled back.Re ason: Transaction (TxC (5367278, xid = 1043835052425_32272, timeout = 300, txSta te = Marked Rollback, root = null) rolled back after 300 sec. at java.lang.Throwable.fillInStackTrace(Native Method) at java.lang.Throwable.fillInStackTrace(Compiled Code) at java.lang.Throwable.<init>(Compiled Code) at java.lang.Exception.<init>(Compiled Code) at javax.transaction.RollbackException.<init>(Compiled Code) at weblogic.jts.internal.CoordinatorImpl.throwRollbackException(Compiled Code) at weblogic.jts.internal.CoordinatorImpl.commit(Compiled Code) at weblogic.jts.internal.TxContext.commit(Compiled Code) at weblogic.ejb.internal.StatelessEJBObject.postInvokeOurTx(Compiled Cod e) at weblogic.ejb.internal.BaseEJBObject.postInvoke(Compiled Code) at com.citibank.ipb.aps.ApsBeanEOImpl.handleRequest(Compiled Code) at com.citibank.ipb.aps.ApsBeanEOImpl_WLSkel.invoke(Compiled Code) at weblogic.rmi.extensions.BasicServerObjectAdapter.invoke(Compiled Code ) at weblogic.rmi.extensions.BasicRequestHandler.handleRequest(Compiled Co de) at weblogic.rmi.internal.BasicExecuteRequest.execute(Compiled Code) at weblogic.kernel.ExecuteThread.run(Compiled Code)
Is this error being caused because of the fact that the GC is running for more than 300 secs and during this time , there are no JNDI calls happening. We are investigating the issue as to why GC is running for more than 300 sec, But I need to know if this is the reason , the JNDI calls from iplanet is failing.