I have worked on different projects in Java application development with the involvement of Struts framework. But as Spring framework is emerging as a strong competitor of Struts. In future might be some other frameworks could exist. I am not very much aware about Spring framework.
Would Struts remain as a strong foundation of frameworks in future as it is now? Should a developer continously learn about emerging frameworks with time, leaving behind knowledge of Struts?
Struts doesn't compete with Spring except for the presentation layer. Spring is A-Z framework (from persistence to web framework) while Struts is only a web framework. SpringMVC is much more better than Struts 1.X which it is now an EOL project , but this isn't the case for Struts 2. I think learning new framework is a must even if you don't use them in your daily job, because each framework tackle the problem it tries to solve from a difference view. Try to learn a MVC framework, component-based framework, scripting framework...