8 Replies Latest reply on Feb 2, 2006 2:48 PM by 666705

    ORA-01017: invalid username/password; logon denied on Weblogic 9.0 cluster

    666705
      I am experiencing the following exception in Weblogic 9.0 server cluster environment. The same code works fine in non-cluster environment. The problem happens every now and then and would go away temporarily after recycling the domains. The Oracle database that the backend system connects to is 9.0.2.6. I am using the ocjdbc14.jar jdbc driver that comes with the Weblogic 9.0 on the client side to connect. I really appreciate any help or clue.
      Ashkan

      Error on dequeuing requests
      org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: ORA-01017: invalid username/password; logon denied

      java.sql.SQLException: ORA-01017: invalid username/password; logon denied

           at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
           at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
           at oracle.jdbc.ttc7.O3log.receive2nd(O3log.java:496)
           at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:278)
           at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:346)
           at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468)
           at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314)
           at java.sql.DriverManager.getConnection(Ljava.lang.String;Ljava.util.Properties;Ljava.lang.ClassLoader;)Ljava.sql.Connection;(Unknown Source)
           at java.sql.DriverManager.getConnection(Ljava.lang.String;Ljava.util.Properties;)Ljava.sql.Connection;(Unknown Source)
           at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:291)
           at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:277)
           at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:259)
           at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:241)
           at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
           at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
           at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:810)
           at org.springframework.jdbc.core.JdbcTemplate.call(JdbcTemplate.java:857)
           at org.springframework.jdbc.object.StoredProcedure.execute(StoredProcedure.java:102)
           at com.rwi.wam.dao.serviceprovider.ServiceProviderDequeue.dequeue(ServiceProviderDequeue.java:32)
           at com.rwi.wam.dao.serviceprovider.ServiceProviderDAO.dequeueRequest(ServiceProviderDAO.java:48)
           at com.rwi.wam.ejb.WAMRequestMessageBean.onMessage(WAMRequestMessageBean.java:168)
           at weblogic.ejb20.internal.MDListener.execute(MDListener.java:425)
           at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:332)
           at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:288)
           at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:3069)
           at weblogic.jms.client.JMSSession.execute(JMSSession.java:2989)
           at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:3448)
           at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
           at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
           at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
        • 1. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 cluster
          666705
          Did you check the runtime id and roles setup.
          If the runtime ID is valid.
          • 2. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 clus
            666705
            Yes. The runtime id is correct. The application works fine for a while and then at some point it throws the exception and can't connect to the database anymore.
            • 3. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 cluster
              3004
              Hi, I can tell you that you're not using any WebLogic
              JDBC code. You're getting a connection directly from
              the Oracle drive, and you can change the vesion of the
              drive if you want by changing the ojdbc14.jar in the
              weblogic server\lib directory.
              However, I believe the problem is an inherent weakness
              at the DBMS. The DBMS listener process can sometimes
              be temporarily swamped if it gets too many connection
              requests at one time, and will fail some of them even if
              they are all identical and correct.
              This is one of the major reasons you should use WebLogic
              connection pools so you always get already-made and
              tested connections.
              Another huge danger is that you are using DriverManager
              calls. These are very bad in multithreaded applications
              like WebLogic, because all DriverManager calls (including
              some internal ones that all JDBC drivers call all the time,
              are class-synchronized! This means that one call to
              getConnection() will probably bolock all other running
              JDBC in the whole JVM. If you can change the springframework
              code to use WebLogic DataSources to pools, you'll be much
              better off.
              Joe


              Ashkan Gholam-Zadeh wrote:

              I am experiencing the following exception in Weblogic 9.0 server cluster environment. The same code works fine in non-cluster environment. The problem happens every now and then and would go away temporarily after recycling the domains. The Oracle database that the backend system connects to is 9.0.2.6. I am using the ocjdbc14.jar jdbc driver that comes with the Weblogic 9.0 on the client side to connect. I really appreciate any help or clue.
              Ashkan

              Error on dequeuing requests
              org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: ORA-01017: invalid username/password; logon denied

              java.sql.SQLException: ORA-01017: invalid username/password; logon denied

                   at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
                   at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
                   at oracle.jdbc.ttc7.O3log.receive2nd(O3log.java:496)
                   at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:278)
                   at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:346)
                   at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468)
                   at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314)
                   at java.sql.DriverManager.getConnection(Ljava.lang.String;Ljava.util.Properties;Ljava.lang.ClassLoader;)Ljava.sql.Connection;(Unknown Source)
                   at java.sql.DriverManager.getConnection(Ljava.lang.String;Ljava.util.Properties;)Ljava.sql.Connection;(Unknown Source)
                   at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:291)
                   at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:277)
                   at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:259)
                   at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:241)
                   at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
                   at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
                   at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:810)
                   at org.springframework.jdbc.core.JdbcTemplate.call(JdbcTemplate.java:857)
                   at org.springframework.jdbc.object.StoredProcedure.execute(StoredProcedure.java:102)
                   at com.rwi.wam.dao.serviceprovider.ServiceProviderDequeue.dequeue(ServiceProviderDequeue.java:32)
                   at com.rwi.wam.dao.serviceprovider.ServiceProviderDAO.dequeueRequest(ServiceProviderDAO.java:48)
                   at com.rwi.wam.ejb.WAMRequestMessageBean.onMessage(WAMRequestMessageBean.java:168)
                   at weblogic.ejb20.internal.MDListener.execute(MDListener.java:425)
                   at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:332)
                   at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:288)
                   at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:3069)
                   at weblogic.jms.client.JMSSession.execute(JMSSession.java:2989)
                   at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:3448)
                   at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
                   at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
                   at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
              • 4. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 clus
                666705
                Thanks Joe for the reply. I've originally configured the Spring to use the WebLogic connection pool using the JNDI lookup. As our application makes an EJB remote call to another Weblogic domain which has not been configured as a trusted domain, we experienced the security exception, invalid username/password after the call returns from the remote server when we're trying to access the database on our side as the InitialContext has been modified by the remote server. So I need to use some other connection pool rather than the WebLogic because of this problem.
                • 5. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 clus
                  3004
                  Ashkan Gholam-Zadeh wrote:

                  Thanks Joe for the reply. I've originally configured the Spring to use the WebLogic connection pool using the JNDI lookup. As our application makes an EJB remote call to another Weblogic domain which has not been configured as a trusted domain, we experienced the security exception, invalid username/password after the call returns from the remote server when we're trying to access the database on our side as the InitialContext has been modified by the remote server. So I need to use some other connection
                  pool rather than the WebLogic because of this problem.
                  Maybe you can make another pool, or give open permissions to the pool. YOu don't
                  need to give a user/password to our DataSources to get a connection from a pool.
                  Just call DataSource.getConnection().
                  Joe
                  • 6. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 clus
                    666705
                    I am not passing userName/password explicitly. The JNDI lookup would fail in Spring because the InitialContext has been modified by the remote server and the principal/credential on it can't be found in the local application server.
                    • 7. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 clus
                      3004
                      Ashkan Gholam-Zadeh wrote:

                      I am not passing userName/password explicitly. The JNDI
                      lookup would fail in Spring because the InitialContext
                      has been modified by the remote server and the principal/credential
                      on it can't be found in the local application server.
                      I see. Have you opened an official support case? You should...
                      Joe
                      • 8. Re: ORA-01017: invalid username/password; logon denied on Weblogic 9.0 clus
                        666705
                        Yes I did. Interesting enough after I switch from JRockit 5.0 to Sun JVM 5.0 the problem has not shown anymore so far.