http://nagoya.apache.org/bugzilla/show_bug.cgi?id=337 *** shadow/337 Fri Feb 2 16:29:02 2001 --- shadow/337.tmp.17850 Fri Feb 2 16:29:02 2001 *************** *** 0 **** --- 1,58 ---- + +============================================================================+ + | Tomcat JDBCRealm authentication BugRat Report#606 | + +----------------------------------------------------------------------------+ + | Bug #: 337 Product: Tomcat 3 | + | Status: UNCONFIRMED Version: 3.1 Final | + | Resolution: Platform: All | + | Severity: Normal OS/Version: All | + | Priority: High Component: Config | + +----------------------------------------------------------------------------+ + | Assigned To: [EMAIL PROTECTED] | + | Reported By: [EMAIL PROTECTED] | + | CC list: Cc: | + +----------------------------------------------------------------------------+ + | URL: | + +============================================================================+ + | DESCRIPTION | + Hi there, + I encountered a problem when authenticate user by JdbcRealm.My work envirement +is Linux7 + jdk1.3 + and Tomcat 3.2,I use freetds jdbc driver to connecting o ms sql database.The problem +is --the first time I use Ie 5 to ask some jsp file("/run/index.jsp",I have confiured +/run/*.jsp for authentication) ,the authentication dialoge box is NOT appear like +SimpleReam do,and the following is the message on the screen: + //////////////////////////////// + at +com.internetcds.jdbc.tds.PreparedStatement_base.setString(PreparedStatement_base.java:694) + at org.apache.tomcat.request.JDBCRealm.authenticate(JDBCRealm.java:306) + at org.apache.tomcat.request.JDBCRealm.authenticate(JDBCRealm.java:480) + at org.apache.tomcat.core.ContextManager.doAuthenticate(ContextManager.java:837) + at org.apache.tomcat.core.RequestImpl.getRemoteUser(RequestImpl.java:341) + at org.apache.tomcat.request.JDBCRealm.authorize(JDBCRealm.java:501) + at org.apache.tomcat.core.ContextManager.doAuthorize(ContextManager.java:855) + at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:789) + at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743) + at +org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnection(Ajp12ConnectionHandler.java:166) + at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) + at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498) + //////////////////////////////// + And the second time ,I used SimpleReam for authentication and typed "test","test" as +user name and password when authentication dialoge appears.Then I modified server.xml +to authenticate user by JdbcReam.After shut down and restart tomcat(but keep Ie +open),reload the jsp file,some times the page is correctly returned but sometimes the +following message appear: + /////////////////////////////////////////// + 2000-12-18 10:01:34 - ContextManager: JDBCRealm: Controled access for test R( /r + un + /wh_member_yhfk.jsp + null) Ct (jsp(org.apache.jasper.servlet.JspServlet/nu + ll) ) + 2000-12-18 10:01:34 - Ctx( /run ): Exception in: R( /run + /wh_member_yhfk.jsp + + null) - java.lang.NullPointerException + at com.internetcds.jdbc.tds.Tds.executeProcedure(Tds.java:2561) + at +com.internetcds.jdbc.tds.PreparedStatement_base.executeCall(PreparedStatement_base.java:199) + at +com.internetcds.jdbc.tds.PreparedStatement_base.execute(PreparedStatement_base.java:175) + at +com.internetcds.jdbc.tds.PreparedStatement_base.executeQuery(PreparedStatement_base.java:320) + at org.apache.tomcat.request.JDBCRealm.getUserRoles(JDBCRealm.java:375) + at org.apache.tomcat.request.JDBCRealm.authorize(JDBCRealm.java:509) + at org.apache.tomcat.core.ContextManager.doAuthorize(ContextManager.java:855) + at +org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:789) + at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743) + at +org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnectionAjp12ConnectionHandler.java:166) + at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) + at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498) + at java.lang.Thread.run(Thread.java:484) + ////////////////////////////// + I have read the JdbcRealm.java,maybe you forgot verify whether the userName is null +before database query(not just after the request.getRemoteUser() called)? + If you can inform me soon after finish the bug fixing,I will be very thankful. + mail to :[EMAIL PROTECTED] + --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]