B.I.N.G.O!!! I didnt have any exception about it, just make it implement serializable and it works!!
you make my day, thanka again Brian my best regards Simeo Reig > Is your 'User' object serializable ? Do you have any exceptions in your log > related to that? > > On Wed, Feb 22, 2017 at 3:12 PM, Simeó Reig <[email protected]> > wrote: > > If I choose "remember me" in login form it's true, and viceversa, as it > should be. > > As I've just said before implementing custom realm I could see "shiroTest" > cookie when I activated remember me > > Nothing has changed, besides shiro.ini > > Thanks > > --------------------------- > > original shiro.ini It works > > --------------------------- > > [main] > authc.loginUrl = /faces/login.xhtml > user.loginUrl = /faces/login.xhtml > authc = org.apache.shiro.web.filter.authc.PassThruAuthenticationFilter > > [users] > admin = secret,admin > simeo = secret2,user > > [roles] > admin = * > user = usuaris:* , ventes:edicio, ventes:delete > user_grant = ventes:canvi > > [urls] > /faces/admin/index.xhtml=user > /faces/admin/protected.xhtml = user,roles[admin] > > --------------------------------- > New shiro.ini (does not work rememberMe functionallity) > --------------------------------- > > [main] > authc.loginUrl = /faces/login.xhtml > user.loginUrl = /faces/login.xhtml > > adronicaRealm = com.mycompany.shirofaces.myRealm > > authc = org.apache.shiro.web.filter.authc.PassThruAuthenticationFilter > securityManager.rememberMeManager.cookie.name [1] = shiroTest > securityManager.realms = $adronicaRealm > > [roles] > admin = * > user = usuaris:* , ventes:edicio, ventes:delete > user_grant = ventes:canvi > > [urls] > /faces/admin/index.xhtml=user > /faces/admin/protected.xhtml = user,roles[admin] > > A 22-02-2017 20:46, Brian Demers escrigué: > > You don't need to do anything in your realm. Has something else changed > other then your realm? > > What does your "System.out.println("isRememberMe Activated ===> " + > upToken.isRememberMe());" line print? > > On Wed, Feb 22, 2017 at 2:16 PM, Simeó Reig <[email protected]> > wrote: > > Hello All > > We had a shiro web JSF app working smoothless, but we need to have an own > Realm, therefore we extended AuthorizingRealm. The system works but now > rememberMe function does not work, shiro does not create the cookie. > > Must we implement rememberMe function too if we implemented our Realm?? how? > > Many thanks in advance > > ---------------- > > Our custom realm > > ----------------- > > public class myRealm extends AuthorizingRealm { > > @Override > protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection > principals) { > Set<String> roles = new HashSet<>(); > Collection<User> principalsList = principals.byType(User.class); > > if (principalsList.isEmpty()) throw new AuthorizationException("Empty > principals list!"); > > for (User userPrincipal : principalsList) { > try { > User user = new > User(userPrincipal.getId(),userPrincipal.getName(),userPrincipal.getPassword()); > List<Role> userRoles = user.getRoles(); > for (Role r : userRoles) {roles.add(r.getName()); > } > } catch (Exception rEx) { > throw new AuthorizationException(rEx); > } > } > > SimpleAuthorizationInfo info = new SimpleAuthorizationInfo(roles); > info.setRoles(roles); //fill in roles > return info; > } > > @Override > protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken > token) throws AuthenticationException { > > UsernamePasswordToken upToken = (UsernamePasswordToken) token; > > System.out.println("isRememberMe Activated ===> " + upToken.isRememberMe()); > > User user = new User(1,upToken.getUsername(),"password"); > > if (user == null) {throw new AuthenticationException("Login name [" + > upToken.getUsername() + "] not found!");} > > return new SimpleAuthenticationInfo(user, user.getPassword(), > ByteSource.Util.bytes(user.getSalt()), getName()); > } > > } > > --------- > > shiro.ini > > --------- > > [main] > authc.loginUrl = /faces/login.xhtml > user.loginUrl = /faces/login.xhtml > > adronicaRealm = com.adronica.shirofaces.myRealm > > authc = org.apache.shiro.web.filter.au [2]thc.PassThruAuthenticationFilter > securityManager.rememberMeManager.cookie.name [1] = shiroTest > securityManager.realms = $adronicaRealm > > [urls] > /faces/admin/index.xhtml=user > /faces/admin/protected.xhtml = user,roles[admin] > > ------ > > pom.xml > > --------- > > <dependencies> > > <dependency> > <groupId>javax</groupId> > <artifactId>javaee-web-api</artifactId> > <version>7.0</version> > <scope>provided</scope> > </dependency> > > <dependency> > <groupId>org.apache.shiro</groupId> > <artifactId>shiro-core</artifactId> > <version>1.4.0-RC2</version> > </dependency> > > <dependency> > <groupId>org.apache.shiro</groupId> > <artifactId>shiro-web</artifactId> > <version>1.4.0-RC2</version> > </dependency> > > <dependency> > <groupId>org.apache.shiro</groupId> > <artifactId>shiro-faces</artifactId> > <version>2.0</version> > </dependency> > > <dependency> > <groupId>org.omnifaces</groupId> > <artifactId>omnifaces</artifactId> > <version>2.6</version> > </dependency> > > <dependency> > <groupId>commons-logging</groupId> > <artifactId>commons-logging</artifactId> > <version>1.2</version> > </dependency> > > <dependency> > <groupId>org.primefaces</groupId> > <artifactId>primefaces</artifactId> > <version>6.0</version> > </dependency> > > </dependencies> Links: ------ [1] http://securityManager.rememberMeManager.cookie.name [2] http://org.apache.shiro.web.filter.au
