Hi,
@Transient fields are not persisted into the database hence I believe you cannot use a criteria on this field. The sort by functionality tries to write a sql query adding a 'order by' clause. Ordering occurs in the db.
In your case I would recommend to have a look at the @Sort annotation together with a custom comparator.
Alternatively you could try using a SQL function. Provided that you have a function which returns the week number given the date it should work as well. See
http://www.hibernate.org/hib_docs/v3/reference/en/html_single/#queryhql-ordering.
--Hardy