History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: UP-2041
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Critical Critical
Assignee: Nick Bolton
Reporter: Nick Bolton
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
uPortal

NPE from template user change after a user has previously logged in

Created: 05/May/08 04:22 PM   Updated: 12/May/08 01:48 PM
Component/s: Framework
Affects Version/s: 2.6.1, 2.6.0 GA, 3.0.0-M5, 3.0.0-RC2, 3.0.0-RC3, 3.0.0
Fix Version/s: 2.6.2, 3.0.1, 3.1.0-M1

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
This results from a change in template user after a user has previously logged in.

java.lang.NullPointerException
    at org.apache.tomcat.dbcp.dbcp.PoolingConnection.normalizeSQL(PoolingConnection.java:173)
    at org.apache.tomcat.dbcp.dbcp.PoolingConnection.createKey(PoolingConnection.java:165)
    at org.apache.tomcat.dbcp.dbcp.PoolingConnection.prepareStatement(PoolingConnection.java:87)
    at org.apache.tomcat.dbcp.dbcp.DelegatingConnection.prepareStatement(DelegatingConnection.java:185)
    at org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepareStatement(PoolingD
    at org.jasig.portal.RDBMUserIdentityStore.updateUser(RDBMUserIdentityStore.java:647)
    at org.jasig.portal.RDBMUserIdentityStore.__getPortalUID(RDBMUserIdentityStore.java:318)
    at org.jasig.portal.RDBMUserIdentityStore.getPortalUID(RDBMUserIdentityStore.java:291)
    at net.unicon.portal.common.PortalIdentityStoreImpl.getUserId(PortalIdentityStoreImpl.java:58)
    at net.unicon.academus.domain.lms.UserFactory.getUserId(UserFactory.java:1412)
    at net.unicon.portal.common.PersonDirectoryServiceImpl.getPerson(PersonDirectoryServiceImpl.java:124)
    at net.unicon.portal.common.PersonDirectoryServiceImpl.getPerson(PersonDirectoryServiceImpl.java:140)

The culprit is the creation of an emtpy prepared statement on line 647. The insert statement hasn't yet been defined at that point. The fix is to move the insert variable declaration just above line 647.

 All   Comments   Work Log   Change History   FishEye      Sort Order:
Nick Bolton [08/May/08 03:01 PM]
The insert sql was rearranged such that it would occur prior to the prepared statement creation.

Eric Dalquist [12/May/08 01:48 PM]
Changing fix-for and leaving as resolved until it is actually included in a release