@Override public GetDataAvailabilityResponse getDataAvailability(GetDataAvailabilityRequest req) throws OwsExceptionReport { Session session = sessionHolder.getSession(); try { List<?> dataAvailabilityValues = queryDataAvailabilityValues(req, session); GetDataAvailabilityResponse response = new GetDataAvailabilityResponse(); response.setService(req.getService()); response.setVersion(req.getVersion()); response.setNamespace(req.getNamespace()); for (Object o : dataAvailabilityValues) { if (o != null) { response.addDataAvailability((DataAvailability) o); } } return response; } catch (HibernateException he) { throw new NoApplicableCodeException() .causedBy(he) .withMessage("Error while querying data for GetDataAvailability!"); } finally { sessionHolder.returnSession(session); } }