if (requester.hasRole(RoleType.STUDENT) || requester.hasRole(RoleType.GRANT_OWNER)) {
if (!(person.hasRole(RoleType.STUDENT) && requester.hasRole(RoleType.TEACHER))) {
    public ActionForward retrieveByID(ActionMapping mapping, ActionForm form,            HttpServletRequest request, HttpServletResponse response) throws FenixFilterException,            FenixServiceException {        IUserView userView = SessionUtils.getUserView(request);        Integer personID = new Integer(request.getParameter("personCode"));        Object[] args = { Person.class, personID };        IPerson person = (IPerson) ServiceUtils.executeService(userView, "ReadDomainObject", args);        IFileEntry personalPhoto = person.getPersonalPhoto();        if (personalPhoto != null) {            if (!person.getAvailablePhoto()) {                IPerson requester = userView.getPerson();                if (requester.hasRole(RoleType.STUDENT) || requester.hasRole(RoleType.GRANT_OWNER)) {                    return null;                }            }            try {                response.setContentType(personalPhoto.getContentType().getMimeType());                DataOutputStream dos = new DataOutputStream(response.getOutputStream());                dos.write(personalPhoto.getContents());                dos.close();            } catch (IOException e) {            }        }        return null;    }