There is no such thing as "not selected" in an HTML SELECTITEM (which is what backs the selectOneMenu). Something
will be selected. And in the case of
JSF, if the something isn't one of the SelectItem values, you'll fail with a Validation Exception.
My usual approach is this:
HTML is a text protocol, so if this control is submitted, it will be set to a non-null value. By setting "required=true", I told JSF to fail cases where no item was selected. If I had not added that constraint, the myBean selection value would be the empty
string ("") if no selection had been made. Outbound, a null value will cause the first item on the list to be selected, so the value would go out as null and come back as "". Which is dicey, so you're better off pre-initializing the selection value to "", instead.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.