Bonjour,
Je débute en apache shiro et pour ma première expérience j'ai utilisé The BalusC.
voici mon fichier web.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <listener>
<listener-class>org.apache.shiro.web.env.EnvironmentLoaderListener</listener-class>
</listener>
<filter>
<filter-name>ShiroFilter</filter-name>
<filter-class>org.apache.shiro.web.servlet.ShiroFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ShiroFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping> |
mon fichier shiro.ini
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| [main]
user = com.talbus.data.shiroConnexion.FacesAjaxAwareUserFilter
user.loginUrl = /login.xhtml
# Configure JDBC realm password hashing.
credentialsMatcher = org.apache.shiro.authc.credential.HashedCredentialsMatcher
credentialsMatcher.hashAlgorithmName = SHA-256
jdbcRealm.credentialsMatcher = $credentialsMatcher
# Create JDBC realm.
jdbcRealm = org.apache.shiro.realm.jdbc.JdbcRealm
# Configure JDBC realm datasource.
ds = org.postgresql.ds.PGSimpleDataSource
ds.user = postgres
ds.password = nana
ds.databaseName = gestionstock
ds.serverName = localhost
ds.portNumber = 5432
jdbcRealm.dataSource = $ds
securityManager.realms = $jdbcRealm
# Configure JDBC realm SQL queries.
jdbcRealm.authenticationQuery = SELECT password FROM User WHERE login = ?
jdbcRealm.userRolesQuery = SELECT userrole FROM Role WHERE userid = (SELECT nummat FROM User WHERE login = ?)
[urls]
/login.xhtml = user
/app/** = user
/** = user |
L'application se lance sans problème mais quand je clique sur "se connecter" de login.xhtml une erreur se produit
1 2
| GRAVE: There was a SQL error while authenticating user [admin]
org.postgresql.util.PSQLException: ERREUR: la colonne « password » n'existe pas |
indiquant la ligne
SecurityUtils.getSubject().login(new UsernamePasswordToken(username, password, remember));
pourtant la colonne « password » existe bien dans la table user dans postgres.
Quelqu'un aurait-il une solution à mon problème svp?
Partager