You need to take into account that Eclipse is a free
IDE developed by a professional team, which has at least two consequences:
- resources are quite constrained, and
- the project needs to be sponsored - currently by tool vendors like IBM and Together
The Sponsors are using Eclipse as a foundation for their own products. As they need to make money to continue to exist, there needs to be functionality they can add to Eclipse. On the other hand, Eclipse needs to be usefull enough to be attractive to a large user base.
I think it's a quite reasonable choice to concentrate on fundamental functionality like debugging, refactoring,
testing etc. instead of more focused tools like GUI builders,
EJB or Web-Support. The latter are also rather complex projects for itself, and being able to choose between a range of free and commercial solutions isn't the worst thing, in my humble opinion.