I am a newbie to tapestry, i am getting NullPointerException when i access
authManager.
How do i inject AuthManager?

Chandra



ChandraB wrote:
> 
> Service id 'authenticationProvider' is not defined by any module
> 
> 
> My appModule.java is as below 
> 
> public class AppModule
> {
>     public static void bind(ServiceBinder binder)
>     {
>        
>     
> binder.bind(com.eveo.edetail.reporting.service.UserDetailsService.class,
> UserDetailsServiceImpl.class).withId("UserDetailsServiceImpl");
>       binder.bind(SaltSourceService.class,
> SaltSourceImpl.class).withId("SaltSourceImpl");
> 
>     }
>     public static SaltSourceService buildMySaltSource() throws Exception {
>         SaltSourceImpl saltSource = new SaltSourceImpl();
>         saltSource.setSystemWideSalt("DEADBEEF");
>         saltSource.afterPropertiesSet();
>         return saltSource;
>     }
>     
>     public static UserDetailsService buildUserDetailsService(UserDao
> userDao) {
>         return new
> com.eveo.edetail.reporting.service.impl.UserDetailsServiceImpl(userDao);
>     }
>    
>    public static void contributeProviderManager(
>             OrderedConfiguration<AuthenticationProvider> configuration,
>             @InjectService("DaoAuthenticationProvider")
>             AuthenticationProvider daoAuthenticationProvider) {
>          
>          
>          
>               System.out.println("AppModule: contributeProviderManager" +
> configuration);          
>               System.out.println("-------->>"+daoAuthenticationProvider);     
>    
>         configuration.add("daoAuthenticationProvider",
> daoAuthenticationProvider);
>         
>         
>     }
>     public static AuthenticationProcessingFilter
> buildMyAuthenticationProcessingFilter(
>             @AcegiServices final AuthenticationManager manager,
>             @AcegiServices final RememberMeServices rememberMeServices,
>             @Inject @Value("${acegi.check.url}") final String authUrl,
>             @Inject @Value("${acegi.target.url}") final String targetUrl,
>             @Inject @Value("${acegi.failure.url}") final String
> failureUrl)
>                                                                               
>                                         throws Exception {
>       
>       
>       System.out.println("Auth URL"+ authUrl );
>           AuthenticationProcessingFilter filter = new
> AuthenticationProcessingFilter();
>           filter.setAuthenticationManager(manager);
>           filter.setAuthenticationFailureUrl(failureUrl);
>           filter.setDefaultTargetUrl(targetUrl);
>           filter.setFilterProcessesUrl(authUrl);
>           filter.setRememberMeServices(rememberMeServices);
>           filter.afterPropertiesSet();
>           return filter;
>       }
> 
>       public static void contributeAliasOverrides(
>                   @InjectService("MySaltSource")
>                   SaltSourceService saltSource,
>                   @InjectService("MyAuthenticationProcessingFilter")
>                   AuthenticationProcessingFilter
> authenticationProcessingFilter,
>                   Configuration<AliasContribution> configuration) {
>               
>               System.out.println("AppModule: contributeAliasOverrides" +
> configuration);          
>          
> configuration.add(AliasContribution.create(SaltSourceService.class,saltSource));
>          
> configuration.add(AliasContribution.create(AuthenticationProcessingFilter.class,authenticationProcessingFilter));
>       } 
>       
>       
>     public static LoginHelper
> buildLoginHelper(@InjectService("MySaltSource") SaltSourceService
>                                       saltSource, PasswordEncoder encrypter , 
> AuthenticationManager
> authManager) {
>             return new AcegiLoginHelper(authManager,saltSource,encrypter);
>       //return new AcegiLoginHelper(authManager);
>     } 
>     
>     
>     public static void
> contributeApplicationDefaults(MappedConfiguration<String, String>
> configuration){      
>         configuration.add(SymbolConstants.SUPPORTED_LOCALES, "en");
>         configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
>         configuration.add("acegi.failure.url", "/error");
>         configuration.add("acegi.password.encoder",
> "org.acegisecurity.providers.encoding.PlaintextPasswordEncoder");
>         configuration.add("acegi.target.url", "/Program");        
>     }
>     
> 
>     /**
>      * This is a service definition, the service will be named
> "TimingFilter". The interface,
>      * RequestFilter, is used within the RequestHandler service pipeline,
> which is built from the
>      * RequestHandler service configuration. Tapestry IoC is responsible
> for passing in an
>      * appropriate Logger instance. Requests for static resources are
> handled at a higher level, so
>      * this filter will only be invoked for Tapestry related requests.
>      * 
>      * <p>
>      * Service builder methods are useful when the implementation is
> inline as an inner class
>      * (as here) or require some other kind of special initialization. In
> most cases,
>      * use the static bind() method instead. 
>      * 
>      * <p>
>      * If this method was named "build", then the service id would be
> taken from the 
>      * service interface and would be "RequestFilter".  Since Tapestry
> already defines
>      * a service named "RequestFilter" we use an explicit service id that
> we can reference
>      * inside the contribution method.
>      */    
>     public RequestFilter buildTimingFilter(final Logger log)
>     {
>         return new RequestFilter()
>         {
>             public boolean service(Request request, Response response,
> RequestHandler handler)
>                     throws IOException
>             {
>                 long startTime = System.currentTimeMillis();
> 
>                 try
>                 {
>                     // The responsibility of a filter is to invoke the
> corresponding method
>                     // in the handler. When you chain multiple filters
> together, each filter
>                     // received a handler that is a bridge to the next
> filter.
>                     
>                     return handler.service(request, response);
>                 }
>                 finally
>                 {
>                     long elapsed = System.currentTimeMillis() - startTime;
> 
>                     log.info(String.format("Request time: %d ms",
> elapsed));
>                 }
>             }
>         };
>     }
>     
>    
> 

-- 
View this message in context: 
http://www.nabble.com/Error-while-launching-Login-page-tp23164519p23165434.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

Reply via email to