the fact that you ask this question suggests that you dont know what each of those technologies does. I suggest you find out more but here is a quick summary:
custom tags are used within JSPs only and just enable you to get rid of
jsp scripts in your code.
EJBs are Heavyweight business components. they can be used to model business logic - i.e. the actual work behind serious applications - and other
java code uses them to make that logic available to users.
beans are just java classes that conform to certain constraints that allow them to be manipulated using reflection. I suggest that to save me typing out an explanation yuo do a search on google "definition javabeans" as there is a fair amuont to learn there.