Opened 13 years ago

Last modified 13 years ago

#1583 closed defect

NullPointerException in ProjectKey.getPermissions(Project) and ItemKey.getPermissions(Group/User) — at Version 2

Reported by: Nicklas Nordborg Owned by: everyone
Priority: major Milestone: BASE 2.17.1
Component: core Version:
Keywords: Cc:

Description (last modified by Nicklas Nordborg)

Calling one of the above methods with a Project/Group/User that hasn't been assigned any permissions result in a NullPointerException:

java.lang.NullPointerException
	at net.sf.basedb.core.ProjectKey.getPermissions(ProjectKey.java:275)
	at net.sf.basedb.reggie.servlet.InstallServlet$PermissionOptions.checkPermissions(InstallServlet.java:435)
	at net.sf.basedb.reggie.servlet.InstallServlet.checkAnnotationType(InstallServlet.java:218)
	at net.sf.basedb.reggie.servlet.InstallServlet.doGet(InstallServlet.java:107)

The reason is that an Integer (which is null) is auto-unboxed to an int in a call to Permission.fromInt(int).

Change History (2)

comment:1 by Nicklas Nordborg, 13 years ago

ItemKey.getPermissions(Group) and ItemKey.getPermissions(Uses) have the same problem.

The workaround is to use a try { .. } catch (NullPointerException npe) and treat that as if an empty set had been returned.

comment:2 by Nicklas Nordborg, 13 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.