Thanks!

But this you meen I need to check for every parameter that could be
excepted.

@SuppressWarnings( "unchecked" )
        public ItemInterceptor( PageParameters parameters ){
                
                filters = new LinkedList<ItemFilter>();
                
                Sort sort = null;
                Translator translator = new Translator(  getStore()  );
                Iterator iter = parameters.keySet().iterator();
                while( iter.hasNext() ){
                        String key = (String)iter.next();
                        if( key.equalsIgnoreCase( "brand" )){
                                String id = parameters.getString( key, "" );
                                try{
                                        Long brandId = Long.parseLong( id );
                                        
                                        Brand brand = getBrandDao().getBrand( 
brandId );
                                        if( brand == null )
                                                throw new 
RestartResponseAtInterceptPageException(Base.class);
                                        
                                        removeFilter( BrandFilter.class );
                                        filters.add( new BrandFilter( brand ));
                                        
                                }catch( NumberFormatException  nex ){
                                        throw new 
RestartResponseAtInterceptPageException(Base.class);
                                }
                        }
                        
                        if( key.equalsIgnoreCase( "category" )){
                                String id = parameters.getString( key, "" );
                                try{
                                        Long categoryId = Long.parseLong( id );
                                        
                                        Category category = 
getCategoryDao().getById( categoryId );
                                        if( category == null )
                                                throw new 
RestartResponseAtInterceptPageException(Base.class);
                                        
                                        translator.translate( category );
                                        removeFilter( CategoryFilter.class );
                                        filters.add( new CategoryFilter( 
category ));
                                        
                                }catch( NumberFormatException  nex ){
                                        throw new 
RestartResponseAtInterceptPageException(Base.class);
                                }
                        }
                        
                        if( key.equalsIgnoreCase( "department" )){
                                String id = parameters.getString( key, "" );
                                try{
                                        Long departmentId = Long.parseLong( id 
);
                                        
                                        Department department = 
getDepartmentDao().getDepartment(departmentId);
                                        if( department == null )
                                                throw new 
RestartResponseAtInterceptPageException(Base.class);
                                        
                                        translator.translate( department );
                                        removeFilter( DepartmentFilter.class );
                                        filters.add( new DepartmentFilter( 
department ));
                                        
                                }catch( NumberFormatException  nex ){
                                        throw new 
RestartResponseAtInterceptPageException(Base.class);
                                }
                        }
                        
                        if( key.equalsIgnoreCase( "refills" )){
                                filters.add( new RefilledFilter());
                                sort = Sort.REFILLED ;
                        }
                        
                        if( key.equalsIgnoreCase( "latest" )){
                                filters.add( new LatestAddedFilter());
                                sort = Sort.NEW_COMING ;
                        }
                        if( key.equalsIgnoreCase( "outlet" )){
                                filters.add( new OutletFilter( true ));
                        }
                        if( key.equalsIgnoreCase( "female" )){
                                removeFilter( GenderFilter.class );
                                filters.add( new GenderFilter( Gender.FEMALE ));
                        }
                        if( key.equalsIgnoreCase( "male" )){
                                removeFilter( GenderFilter.class );
                                filters.add( new GenderFilter( Gender.MALE ));
                        }
                        if( key.equalsIgnoreCase( "junior" )){
                                removeFilter( GenderFilter.class );
                                filters.add( new GenderFilter( Gender.JUNIOR ));
                        }
                        
                }

                if( ! filters.isEmpty() ){
                        
                        filters.add( new BalanceFilter( new Long( 1 ) ));
                        filters.add( new StoreFilter( getStore() ));
                        Integer count = getItemDao().getItemCount(filters);
                        
                        if( count == 0 )
                                throw new 
RestartResponseAtInterceptPageException(Base.class);
                        
                        if( sort != null ){
                                setResponsePage( new ItemListPage( filters , 
sort)  );
                        }else{
                                setResponsePage( new ItemListPage( filters )  );
                        }
                }
                
        }
-- 
View this message in context: 
http://www.nabble.com/Google-friendly-urls-tp18079064p18079799.html
Sent from the Wicket - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to