When working with current system, the previous developers just use the Struts2 Action to deal with all the logical things in the system. Then, it becomes a problem. It introduce huge duplicated codes which made me just like a robot to fix one issue 3 or 4 times. One solution could be move those kind of common methods to the super action, which is just a bit bad smell :) This is why we need BO(Business Logic Object) in the system architecture design phase
The reason for doing the work is to create something useful that helps people. Please click the ads if my articles are useful for you. Definitely, that's not enough. My target is working at some great organizations, such that one day, all the people with internet access can benefit from the service I contributed.