Надявам се/мисля, че можете да използвате анонимен PL/SQL блок:
begin:myresult =copy_entity(:id);end;
Сега имате „име на колона“ myresult с резултата.
Никога не съм използвал хибернация, така че се надявам да работи. Не знам колко е гъвкав Hibernate.