Hi i have the following problem. I have set the following code. public void contributeWebSecurityManager( final Configuration<Realm> configuration //, @InjectService("myDataSource")final DataSource dataSource ) { final JdbcRealm realm = new JdbcSaltedRealm(); realm.setDataSource(getJndiDataSource()); // realm.setDataSource(dataSource); -- does not work realm.setAuthenticationQuery(AppModule.AUTHENTICATION_QUERY); realm.setUserRolesQuery(AppModule.USER_ROLES_QUERY); realm.setPermissionsQuery(AppModule.PERMISSION_QUERY); realm.setPermissionsLookupEnabled(true); realm.setCredentialsMatcher(this.credentialsMatcher); configuration.add(realm); }
In the same AppModule class I have this public static void bind(final ServiceBinder binder) { binder.bind(DataSource.class, AppModule.getJndiDataSource().getClass()) .withId("blog.dataSource"); } When i run my app it seems the datasource is not injected. How am I able to inject the datasource binded into ContributeWebSecurityManager. This is error i am getting when using service injection instead of just manually getting the datasource. NFO: Cannot create JDBC driver of class '' for connect URL 'null' java.lang.NullPointerException at sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:524) at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:493) at sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307) at java.sql.DriverManager.getDriver(DriverManager.java:273) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) at $DataSource_210503fddf1.getConnection(Unknown Source) at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111) at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77) at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:573) at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:637) at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:666) at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:674) at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:729) at org.apache.shiro.realm.JdbcSaltedRealm.getPasswordForUser(JdbcSaltedRealm.java:242) at org.apache.shiro.realm.JdbcSaltedRealm.doGetAuthenticationInfo(JdbcSaltedRealm.java:170) at org.apache.shiro.realm.JdbcSaltedRealm.doGetAuthenticationInfo(JdbcSaltedRealm.java:61) -- View this message in context: http://tapestry.1045711.n5.nabble.com/AppModule-using-injected-service-in-ContributeWebSecurityManager-tp5713989.html Sent from the Tapestry - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org