However, I have been told that still due to a poor reception of older EJB versions, in practice, people still prefer and mostly use the frameworks rather than EJB. Is that the reality or have I been mislead?
I think that for new applications people will eventually choose for EE6 (or EE7). The existing applications will probably remain coded with Spring, and there is nothing wrong with that.
From what I have read so far, I personally would prefer EE7 over Spring/Struts. But, the market, seems to, prefer Spring/Struts better, as I am told. So, I was thinking of skipping it.
Well, I am just part of one of those companies that shifted last year towards EE6. Personally, I enjoy coding against the API that I have learned during the preparations of my EE6-certifications. Spring 4 has EE6 as a baseline, so if you want to understand how Spring 4 works behind the scenes it will definitely help if you have the EE6-based certifications under your belt. Apart from that: you are not dependent on one company, and all the
maven pom's look nicely empty