Ik kan dit antwoord niet waarderen omdat je het al hebt opgelost, maar ik zal uitleggen waarom het werkt.
PostgreSQL geeft het antwoord als er staat
De Java-code creëert een letterlijke tekenreekswaarde die het geslachtstype Java enum vertegenwoordigt.
Het casten van een letterlijke naar een PostgreSQL-geslachtstype wordt gedaan door een casting-achtervoegsel toe te voegen aan de waarde ::gender
.
Dus geldige invoer zou zijn
'F'::gender
of
'M'::gender
Dit werkt omdat alle PostgreSQL-typen een invoermethode hebben die een tekstrepresentatie neemt en die omzet naar de interne vorm.