Why doesn the logged in user have the right roles?
If you are not using the DominoRoleView, make sure the roles database is full text indexed. Also make sure that the username you specify in the role database matches the first entry in the User Name field in the Domino Directory; if you use the button in the J2EERoles.nsf database to select a person, this should be taken care of automatically.