Почему вы хотите использовать свойство version, чтобы найти сущность? Если вы используете поле суррогатного первичного ключа (в соответствии с рекомендациями Hibernate), вы сможете идентифицировать строку только по идентификатору.
Поле Version используется hibernate, чтобы гарантировать, что загруженный объект не изменяется между загрузкой и сохранением.
Если вы действительно хотите использовать идентификатор и версию, вам потребуется запрос:
Query query = session.createQuery("select from MyTable where id = ? and version =?");
query.setParameter(0, myId);
query.setParameter(1, myVersion);
query.uniqueResult();