¿Has intentado convertir la columna en enumeración?
// Setup stuff up here.
sql = "INSERT INTO foo (suit) VALUES (?::card_suit)";
st.setString(1, 'spades');
st.executeUpdate(sql);
Explicado en Convertir entre enumeraciones de Java y enumeraciones de PostgreSQL artículo de 'Un blog de codificación web' con ejemplos:
INSERT INTO pet (pet_id, pet_type, name)
VALUES (?, CAST(? AS animal_type), ?);
--or
INSERT INTO pet (pet_id, pet_type, name)
VALUES (?, ?::animal_type, ?);