It is if (vo.getEmailAddress().trim().equalsIgnoreCase(voRetrieved.getEmailAddress(). trim())) voRetrieved is null because LogonDAO return a null. In the DAO, RegistryVOBean retrieved = (RegistryVOBean)broker.getObjectByQuery(query); return a null(retrieved), that is, OJB can not get any data from database. But, the related data is there. On the other hand, the log message, SQL:SELECT DISTINCT A0.locale,A0.password,A0.submission_date,A0.answer,A0.email,A0.birth_day,A0. last_name,A0.account_id,A0.question,A0.first_name FROM T_ACCOUNT A0 WHERE A0.email = ?, shows the filed of email does not have value. Could it be the point of the problem?
Regards Leon ----- Original Message ----- From: "McCaffrey, John G." <[EMAIL PROTECTED]> To: "'OJB Users List'" <[EMAIL PROTECTED]> Sent: Tuesday, June 03, 2003 4:32 PM Subject: RE: why does it return null? > what call gets made at LogonManagerBD.java:36 ? > > > -----Original Message----- > From: Leon [mailto:[EMAIL PROTECTED] > Sent: Tuesday, June 03, 2003 3:18 PM > To: OJB Users List > Subject: why does it return null? > > > Hi, > > I saw some post about this question and solutions on the mail list and > follow the suggestions and put code into my class. but it seems not working. > This is the code. > broker = ServiceLocator.getInstance().findBroker(); > Criteria criteria =new Criteria(); > criteria.addEqualTo("email", primaryKey.trim()); > Query query = new QueryByCriteria(RegistryVOBean.class, criteria, true); > InitialContext ctx = new InitialContext(); > tx.begin(); > RegistryVOBean retrieved = (RegistryVOBean)broker.getObjectByQuery(query); > if (retrieved == null){ > UserNotExistingException ex = new UserNotExistingException(primaryKey + "is > not existing!"); > throw new DataAccessException(primaryKey + "is not existing.", ex); > } > logonVo = new LogonVOBean(); > logonVo.setEmailAddress(retrieved.getEmail()); > logonVo.setPassword(retrieved.getPassword()); > tx.commit(); > > I got the following loggin and exceptions. > > [org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl] INFO: > Create PersistenceBroker instance pool, pool configuration was > {whenExhaustedAction=0, maxIdle=-1, maxActive=100, maxWait=2000, > removeAbandoned=false, numTestsPerEvictionRun=10, testWhileIdle=false, > minEvictableIdleTimeMillis=1000000, testOnReturn=false, logAbandoned=false, > removeAbandonedTimeout=300, timeBetweenEvictionRunsMillis=-1, > testOnBorrow=false} > [org.apache.ojb.broker.metadata.RepositoryPersistor] INFO: OJB Descriptor > Repository: > zip:D:/bea/user_projects/mydomain/myserver/stage/_appsdir_WebContent_war/Web > Content.war!/WEB-INF/classes/repository.xml > [org.apache.ojb.broker.metadata.RepositoryPersistor] INFO: Read class > descriptors took 234 ms > [org.apache.ojb.broker.metadata.RepositoryPersistor] INFO: OJB Descriptor > Repository: > zip:D:/bea/user_projects/mydomain/myserver/stage/_appsdir_WebContent_war/Web > Content.war!/WEB-INF/classes/repository.xml > [org.apache.ojb.broker.metadata.RepositoryPersistor] INFO: Read connection > repository took 109 ms > [org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl] INFO: Set > default PBKey: org.apache.ojb.broker.PBKey: jcdAlias=xegledbconn, > user=system, password=***** > [org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl] DEBUG: > createPersistenceBroker(key) called > [org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl] INFO: > Create new PB instance for PBKey org.apache.ojb.broker.PBKey: > jcdAlias=xegledbconn, user=system, password=*****, already created > persistence broker instances: 0 > [org.apache.ojb.broker.core.PersistenceBrokerImpl] DEBUG: > getCollectionByQuery (class > org.apache.ojb.broker.util.collections.RemovalAwareCollection, class > com.xegle.systems.registry.RegistryVOBean, Query from class > com.xegle.systems.registry.RegistryVOBean where > [EMAIL PROTECTED]) > [org.apache.ojb.broker.core.PersistenceBrokerImpl] DEBUG: Creating > RsIterator for class [com.xegle.systems.registry.RegistryVOBean] > [org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: > SQL:SELECT DISTINCT > A0.locale,A0.password,A0.submission_date,A0.answer,A0.email,A0.birth_day,A0. > last_name,A0.account_id,A0.question,A0.first_name FROM T_ACCOUNT A0 WHERE > A0.email = ? > An exception has been caused by: > java.lang.NullPointerException > at > com.xegle.systems.logon.LogonManagerBD.authenticateUser(LogonManagerBD.java: > 36) > at > com.xegle.systems.logon.LogonManagerBD.validateSignOn(LogonManagerBD.java:27 > ) > at com.xegle.systems.logon.struts.LogonAction.logon(LogonAction.java:38) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 > ) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl > .java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java: > 280) > at > org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216) > at > org.apache.struts.action.RequestProcessor.processActionPerform(RequestProces > sor.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.doPost(ActionServlet.java:520) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle > tStubImpl.java:1058) > at > weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java > :401) > at > weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java > :306) > at > weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W > ebAppServletContext.java:5445) > at > weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage > r.java:780) > at > weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo > ntext.java:3105) > at > weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java > :2588) > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213) > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189) > [org.apache.ojb.broker.core.PersistenceBrokerImpl] DEBUG: PB.close was > called: [EMAIL PROTECTED] > [org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl] ERROR: > Closing connection failed > Could not release connection to pool: > java.lang.NullPointerException > java.sql.SQLException: Could not release connection to pool: > java.lang.NullPointerException > at weblogic.jdbc.pool.Connection.close(Connection.java:213) > at weblogic.jdbc.rmi.internal.ConnectionImpl.close(ConnectionImpl.java:198) > at weblogic.jdbc.rmi.SerialConnection.close(SerialConnection.java:211) > at > org.apache.ojb.broker.util.WrappedConnection.close(WrappedConnection.java:16 > 7) > at > org.apache.ojb.broker.util.pooling.ByPassConnection.close(ByPassConnection.j > ava:55) > at > org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.releaseConne > ction(ConnectionFactoryAbstractImpl.java:64) > at > org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.releaseConnection(Co > nnectionManagerImpl.java:302) > at > org.apache.ojb.broker.core.PersistenceBrokerImpl.close(PersistenceBrokerImpl > .java:320) > at > org.apache.ojb.broker.core.PersistenceBrokerImpl.finalize(PersistenceBrokerI > mpl.java:2402) > at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method) > at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83) > at java.lang.ref.Finalizer.access$100(Finalizer.java:14) > at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160) > > Could you help me out? > > Cheers > Leon > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
