// lowest level execute that can be subclassed if required
 public void executeEJBQLQuery() throws Exception {
   if (hasArguments()) {
     addArgumentNamesToQuery();
     setReturnedObjects(getSession().executeQuery(getQuery(), getArguments()));
   } else {
     setReturnedObjects(getSession().executeQuery(getQuery()));
   }
 }