Welcome to the JavaRanch, Lalit!
The first thing I always have to ask when I see JSF-specific code is "why". What is this complex platform-specific construct supposed to do that something simpler and less JSF-specific could not?
In this particular case, especially I don't understand. Attributes are the named properties of
JSF tags and they're not something that
you should be meddling with directly under virtually any scenario I can hallucinate.
Did you mean "backing bean properties"? If so, you've taken the Inversion of Control mechanism and re-inverted it.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.