Sorry about the foul language in the subject but I am very frustrated. No matter how much I read I can't seem to get a good definition of what a java bean is. The only thing that I know is that a java bean is some kind of class written to some specification but it's not clear on how to determine whether a class can be considered a bean or not. I'm starting to feel like a real idiot. If there's anyone out there who can give me a definition of what a Java bean is, I would really appreciate it.
I think you can find a precise definition at http://java.sun.com - but essentially, a JavaBean is a class that has a no-argument constructor and properties that can be set and retrieved via setXxxx() and getXxxx() methods given a property named "xxxx" - please note the change in capitalization, a process known as "introspection" works in conjunction with this convention. A JavaBean may or may not be associated with a GUI element, depending on what it's intended to be used for. An ENTERPRISE JavaBean (EJB) carries the whole thing to a much higher degree of complexity, and there are several good books written on that topic.
Customer surveys are for companies who didn't pay proper attention to begin with.