Example usage for org.springframework.web.servlet ModelAndView addAllObjects

List of usage examples for org.springframework.web.servlet ModelAndView addAllObjects

Introduction

In this page you can find the example usage for org.springframework.web.servlet ModelAndView addAllObjects.

Prototype

public ModelAndView addAllObjects(@Nullable Map<String, ?> modelMap) 

Source Link

Document

Add all attributes contained in the provided Map to the model.

Usage

From source file:org.sventon.web.ctrl.template.AbstractTemplateController.java

@Override
public final ModelAndView handle(final HttpServletRequest request, final HttpServletResponse response,
        final Object cmd, final BindException errors) {

    final BaseCommand command = (BaseCommand) cmd;
    logger.debug("'command' set to: " + command);

    // If application config is not ok - redirect to config
    if (!application.isConfigured()) {
        logger.debug("sventon not configured, redirecting to '/repos/listconfigs'");
        return new ModelAndView(new RedirectView("/repos/listconfigs", true));
    }/*from w w w .  ja va 2  s  .com*/

    if (command.getName() == null || !application.getRepositoryNames().contains(command.getName())) {
        logger.debug("RepositoryName [" + command.getName() + "] does not exist, redirecting to '/repos/list'");
        return new ModelAndView(new RedirectView("/repos/list", true));
    }

    if (errors.hasErrors()) {
        return prepareExceptionModelAndView(errors, command, getApplicationModel(command));
    }

    SVNConnection connection = null;

    try {
        final RepositoryConfiguration configuration = application.getConfiguration(command.getName());
        final UserRepositoryContext repositoryContext = UserRepositoryContext.getContext(request,
                command.getName());
        final boolean showLatestRevInfo = getBooleanParameter(request, "showlatestrevinfo", false);

        connection = createConnection(configuration, repositoryContext);
        final Long headRevision = getRepositoryService().getLatestRevision(connection);
        command.setRevision(
                getRepositoryService().translateRevision(connection, command.getRevision(), headRevision));

        parseAndUpdateSortParameters(command, repositoryContext);
        parseAndUpdateLatestRevisionsDisplayCount(request, repositoryContext);
        parseAndUpdateCharsetParameter(request, repositoryContext);
        parseAndUpdateSearchModeParameter(request, repositoryContext);

        final ModelAndView modelAndView = svnHandle(connection, command, headRevision, repositoryContext,
                request, response, errors);

        // It's ok for svnHandle to return null in cases like GetFileController.
        if (needModelPopulation(modelAndView)) {
            final Map<String, Object> model = new HashMap<String, Object>(getApplicationModel(command));
            model.put("userRepositoryContext", repositoryContext);
            model.put("useCache", configuration.isCacheUsed());
            model.put("repositoryURL", configuration.getRepositoryDisplayUrl());
            model.put("isEntryTrayEnabled", configuration.isEntryTrayEnabled());
            model.put("isZipDownloadsAllowed", configuration.isZippedDownloadsAllowed());
            model.put("headRevision", headRevision);
            model.put("isHead", command.getRevisionNumber() == headRevision);
            if (showLatestRevInfo) {
                model.put("revisions", getLatestRevisions(command, connection, repositoryContext));
            }
            modelAndView.addAllObjects(model);
        }
        return modelAndView;
    } catch (AuthenticationException ae) {
        logger.debug(ae.getMessage());
        return prepareAuthenticationRequiredView(request, getApplicationModel(command));
    } catch (DiffException ex) {
        logger.warn(ex.getMessage());
        errors.reject(null, ex.getMessage());
        return prepareExceptionModelAndView(errors, command, getApplicationModel(command));
    } catch (Exception ex) {
        logger.error("Exception", ex);
        final Throwable cause = ex.getCause();
        if (cause instanceof NoRouteToHostException || cause instanceof ConnectException) {
            errors.reject("error.message.no-route-to-host");
        } else {
            errors.reject(null, ex.getMessage());
        }
        return prepareExceptionModelAndView(errors, command, getApplicationModel(command));
    } finally {
        if (connection != null) {
            connection.closeSession();
        }
    }
}

From source file:gov.nih.nci.cabig.caaers.web.admin.EditUserController.java

@SuppressWarnings("unchecked")
@Override//from  www  .  j  ava  2  s  . c o m
protected ModelAndView processFinish(HttpServletRequest request, HttpServletResponse response,
        Object userCommand, BindException errors) throws Exception {

    ModelAndView modelAndView = new ModelAndView("admin/user_confirmation");
    UserCommand command = (UserCommand) userCommand;
    String mailSendIssue = "";

    if (!errors.hasErrors()) {

        User user = command.getUser();
        Person person = command.getPerson();

        boolean willCreatePerson = person != null && person.getId() == null;
        boolean willUpdatePerson = person != null && person.getId() != null;
        boolean willCreateUser = user != null && user.getCsmUser().getUserId() == null;
        boolean willUpdateUser = user != null && user.getCsmUser().getUserId() != null;

        if (user != null) {
            try {
                createOrUpdateUser(request, user);
            } catch (MailException e) {
                mailSendIssue = ". But could not send email to the User";
                logger.error("Could not send email to user.", e);
            }
            processRoleMemberships(command.getUser().getCsmUser(), command.getRoleMemberships());
        }

        if (command.getPerson() != null) {
            personRepository.save(command.getPerson());
            getEventFactory().publishEntityModifiedEvent(command.getPerson());
        }

        StringBuilder statusMessage = new StringBuilder();
        if (willCreatePerson || willUpdatePerson) {
            statusMessage.append(willUpdatePerson ? "Updated " : "Created ").append(command.getPersonType());
            if (willCreateUser || willUpdateUser)
                statusMessage.append(" with login capability");
        } else if (willCreateUser || willUpdateUser) {
            statusMessage.append(willUpdateUser ? "Updated " : "Created ").append(" the User");
        }
        statusMessage.append(mailSendIssue);

        modelAndView.getModel().put("flashMessage", statusMessage);
    }
    modelAndView.addAllObjects(errors.getModel());
    return modelAndView;
}

From source file:org.myjerry.evenstar.web.blog.ViewLabeledPostsController.java

@SuppressWarnings("unchecked")
public ModelAndView view(HttpServletRequest request, HttpServletResponse response) throws Exception {
    String label = request.getParameter("label");
    Long older = StringUtils.getLong(request.getParameter("older"));
    Long newer = StringUtils.getLong(request.getParameter("newer"));

    Long blogID = ControllerHelper.convertToBlogID(request, this.blogService);
    Long labelID = this.blogLabelService.getLabelID(blogID, label);

    ModelAndView mav = getModelAndView(request);

    if (blogID == null || labelID == null) {
        mav.setViewName(".evenstar");
    } else {//w ww.  ja v a  2  s . com
        Map<String, Object> model = new HashMap<String, Object>();

        Blog blog = this.blogService.getBlog(blogID);
        String numPostsString = this.blogPreferenceService.getPreference(blogID,
                BlogPreferenceConstants.showNumPosts);
        int numPosts = 10;
        if (StringUtils.isNotEmpty(numPostsString)) {
            numPosts = Integer.valueOf(numPostsString);
        }

        Collection<BlogPost> postsCollection = null;
        postsCollection = this.blogPostService.getBlogPostsForLabel(blogID, labelID, numPosts, older, newer);

        List<BlogPost> posts = new ArrayList<BlogPost>(postsCollection);

        if (posts != null && posts.size() > 0) {
            if (posts.size() > numPosts) {
                int last = posts.size() - 1;
                BlogPost lastPost = posts.get(last);
                model.put("olderPageUrl", "/showPostsForLabel.html?label=" + label + "&older="
                        + ServerUtils.getUniversalDateString(lastPost.getPostedDate()));
                posts.remove(last);
            } else {
                model.put("olderPageUrl", "");
            }

            if (!this.blogPostService.isFirstPost(posts.get(0))) {
                model.put("newerPageUrl", "/showPostsForLabel.html?label=" + label + "&newer="
                        + ServerUtils.getUniversalDateString(posts.get(0).getPostedDate()));
            } else {
                model.put("newerPageUrl", "");
            }
        }

        model.putAll(mav.getModel());
        model = this.viewPostService.getPostsViewModel(blog, posts, false, model);
        String generatedBlogPage = TemplateHelper.generateBlogPage(blogID, model, blogLayoutService,
                velocityEngine);

        mav.addAllObjects(model);
        mav.addObject("generatedBlogPage", generatedBlogPage);
        mav.setViewName(".view.blog.home");
    }

    return mav;
}

From source file:com.lm.lic.manager.controller.AddProductController.java

/**
 *
 *///from  w  w  w .  j  av  a  2s  .  c om

@SuppressWarnings("deprecation")
@Override
protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command,
        BindException errors) throws Exception {
    AddProductForm form = (AddProductForm) command;

    Product product = extractProduct(request, form);
    boolean besidesMe = false; // I don't exist yet
    String isvId = GenUtil.findLoggedinIsv(request, loginService);
    Long storeId = form.getListingStoreId();
    boolean isUnique = checkUniqueness(product, isvId, storeId, errors, besidesMe);

    String destView = getFormView();
    ModelAndView modelAndView = null;

    if (isUnique) {
        IsvLicensePricing isvLicensePricing = isvLicensePricingManager.findIsvLicensePricing(form.getIsvId(),
                product.getLicLifeInDays());
        isvLicensePricing.setProduct(product);
        Isv isv = isvService.findIsvById(form.getIsvId());
        isvLicensePricing.setIsv(isv);
        productService.save(product);
        isvLicensePricingService.save(isvLicensePricing);

        if (product.getLicWithdrawMailConfigs() != null && product.getLicWithdrawMailConfigs().size() > 0)
            licWithdrawMailConfigService
                    .save((LicWithdrawMailConfig) product.getLicWithdrawMailConfigs().toArray()[0]);

        // If the user chose to have "Hashed" License mechanism, then see if he entered a secret key (message).
        // If none was entered, use the product definition key as the secret key. The product definition key can
        // only be visible tot he owner of the product when he logs in to the system and lists his products.
        HashedLicMechConfig hashedLicMechConfig = product.getOwnHashedLicMechConfig();
        if (hashedLicMechConfig != null) {
            useOwnerProductDefKeyForSecretKey(product, hashedLicMechConfig);
            hashedLicMechConfigService.save(hashedLicMechConfig);
        }

        String localeLang = extractLocaleLang(request);
        Integer numOverDraft = 0;
        String deviceId = null;
        int numIntroLics = findNumIntroLics(product);
        licenseAvailabilityAdvisor.generateLicenses(deviceId, localeLang, product, numIntroLics, numOverDraft,
                LicensePaymentStatus.FREE);
        destView = getSuccessView();
        modelAndView = new ModelAndView(destView);
    } else {
        modelAndView = new ModelAndView(destView);
        modelAndView.addObject("command", form);
        modelAndView.addAllObjects(errors.getModel());
        modelAndView.addObject("licMechTypeList", lmxContext.findLicMechTypeList(request));
        modelAndView.addObject("licLifeTypeList", lmxContext.findLicLifeTypeList(request));
        modelAndView.addObject("licKeyLengthList", lmxContext.findLicKeyLengthsList(request));
        modelAndView.addObject("numTrialDownloadsList", lmxContext.findNumTrialDownloadsList(request));
        modelAndView.addObject("participantStoresList", lmxContext.findParticipantStoresList(request));

        List<QuickyProductDef> productDefsList = findProductDefs(isvId);
        modelAndView.addObject("productDefsList", productDefsList);
        modelAndView.addObject("categoriesList", lmxContext.findCategoriesList(request));
        modelAndView.addObject("platformsList", lmxContext.findPlatformsList(request));

        modelAndView.addObject("supportedHashAlgorithmsList",
                lmxContext.findSupportedHashAlgorithmsList(request));
        modelAndView.addObject("supportedHashCharSetsList", lmxContext.findSupportedHashCharSetsList(request));
        modelAndView.addObject("supportedHashKeyFormatsList",
                lmxContext.findSupportedHashKeyFormatsList(request));
        modelAndView.addObject("supportedHashKeyLengthsList",
                lmxContext.findSupportedHashKeyLengthsList(request));
        modelAndView.addObject("supportedHashBasesList", lmxContext.findSupportedHashBasesList(request));
        modelAndView.addObject("supportedHashSegmentsList", lmxContext.findSupportedHashSegmentsList(request));
    }
    return modelAndView;
}

From source file:org.myjerry.evenstar.web.blog.BlogHomeController.java

@SuppressWarnings("unchecked")
public ModelAndView view(HttpServletRequest request, HttpServletResponse response) throws Exception {
    Long older = StringUtils.getLong(request.getParameter("older"));
    Long newer = StringUtils.getLong(request.getParameter("newer"));

    ModelAndView mav = getModelAndView(request);
    Long blogID = ControllerHelper.convertToBlogID(request, this.blogService);

    if (blogID == null) {
        mav.setViewName(".evenstar");
    } else {/*from w  ww .j  a  v a 2 s .c o  m*/
        Map<String, Object> model = new HashMap<String, Object>();

        Blog blog = this.blogService.getBlog(blogID);

        String numPostsString = this.blogPreferenceService.getPreference(blogID,
                BlogPreferenceConstants.showNumPosts);
        int numPosts = 10;
        if (StringUtils.isNotEmpty(numPostsString)) {
            numPosts = Integer.valueOf(numPostsString);
        }

        Collection<BlogPost> postsCollection = null;
        if (older == null && newer == null) {
            postsCollection = this.blogPostService.getBlogPosts(blogID, numPosts);
        } else {
            if (older != null && newer != null) {
                postsCollection = this.blogPostService.getBlogPosts(blogID, numPosts, older, newer);
            } else if (older != null) {
                Date lastUpdatedDate = ServerUtils.getUniversalDate(older);
                postsCollection = this.blogPostService.getOlderBlogPosts(blogID, numPosts, lastUpdatedDate);
            } else if (newer != null) {
                Date lastUpdatedDate = ServerUtils.getUniversalDate(newer);
                postsCollection = this.blogPostService.getNewerBlogPosts(blogID, numPosts, lastUpdatedDate);
            }
        }

        List<BlogPost> posts = null;
        if (postsCollection != null) {
            posts = new ArrayList<BlogPost>(postsCollection);
        } else {
            posts = new ArrayList<BlogPost>();
        }

        if (posts != null && posts.size() > 0) {
            if (posts.size() > numPosts) {
                int last = posts.size() - 1;
                BlogPost lastPost = posts.get(last);
                model.put("olderPageUrl", "/showPosts.html?older="
                        + ServerUtils.getUniversalDateString(lastPost.getPostedDate()));
                posts.remove(last);
            } else {
                model.put("olderPageUrl", "");
            }

            if (!this.blogPostService.isFirstPost(posts.get(0))) {
                model.put("newerPageUrl", "/showPosts.html?newer="
                        + ServerUtils.getUniversalDateString(posts.get(0).getPostedDate()));
            } else {
                model.put("newerPageUrl", "");
            }
        }

        model.putAll(mav.getModel());
        model = this.viewPostService.getPostsViewModel(blog, posts, false, model);
        String generatedBlogPage = TemplateHelper.generateBlogPage(blogID, model, blogLayoutService,
                velocityEngine);

        mav.addAllObjects(model);
        mav.addObject("generatedBlogPage", generatedBlogPage);
        mav.setViewName(".view.blog.home");
    }
    return mav;
}

From source file:org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerHelper.java

@SuppressWarnings({ "unchecked", "rawtypes" })
public ModelAndView handleActionResponse(GroovyObject controller, Object returnValue,
        GrailsWebRequest webRequest, Map chainModel, String closurePropertyName, String viewName) {

    boolean viewNameBlank = !StringUtils.hasLength(viewName);
    ModelAndView explicitModelAndView = (ModelAndView) controller
            .getProperty(ControllerDynamicMethods.MODEL_AND_VIEW_PROPERTY);

    if (!webRequest.isRenderView()) {
        return null;
    }/*from  w  w  w. j  a v  a 2  s.  c  o  m*/

    if (explicitModelAndView != null) {
        return explicitModelAndView;
    }

    if (returnValue == null) {
        if (viewNameBlank) {
            return null;
        }
        return new ModelAndView(viewName, chainModel);
    }

    if (returnValue instanceof Map) {
        // remove any Proxy wrappers and set the adaptee as the value
        Map finalModel = new LinkedHashMap();
        if (!chainModel.isEmpty()) {
            finalModel.putAll(chainModel);
        }
        Map returnModel = (Map) returnValue;
        finalModel.putAll(returnModel);

        removeProxiesFromModelObjects(finalModel);
        return new ModelAndView(viewName, finalModel);
    }

    if (returnValue instanceof ModelAndView) {
        ModelAndView modelAndView = (ModelAndView) returnValue;

        // remove any Proxy wrappers and set the adaptee as the value
        Map modelMap = modelAndView.getModel();
        removeProxiesFromModelObjects(modelMap);

        if (!chainModel.isEmpty()) {
            modelAndView.addAllObjects(chainModel);
        }

        if (modelAndView.getView() == null && modelAndView.getViewName() == null) {
            if (viewNameBlank) {
                throw new NoViewNameDefinedException(
                        "ModelAndView instance returned by and no view name defined by nor for closure on property ["
                                + closurePropertyName + "] in controller [" + controller.getClass() + "]!");
            }

            modelAndView.setViewName(viewName);
        }
        return modelAndView;
    }

    return new ModelAndView(viewName, chainModel);
}

From source file:org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.java

public ModelAndView handleActionResponse(GroovyObject controller, Object returnValue,
        String closurePropertyName, String viewName) {
    boolean viewNameBlank = (viewName == null || viewName.length() == 0);
    // reset the metaclass
    ModelAndView explicityModelAndView = (ModelAndView) controller
            .getProperty(ControllerDynamicMethods.MODEL_AND_VIEW_PROPERTY);

    if (!webRequest.isRenderView()) {
        return null;
    } else if (explicityModelAndView != null) {
        return explicityModelAndView;
    } else if (returnValue == null) {
        if (viewNameBlank) {
            return null;
        } else {//from w w  w.  j  a va2 s.  c o  m
            Map model;
            if (!this.chainModel.isEmpty()) {
                model = new CompositeMap(this.chainModel, new BeanMap(controller));
            } else {
                model = new BeanMap(controller);
            }

            return new ModelAndView(viewName, model);
        }
    } else if (returnValue instanceof Map) {
        // remove any Proxy wrappers and set the adaptee as the value
        Map finalModel = new LinkedHashMap();
        if (!this.chainModel.isEmpty()) {
            finalModel.putAll(this.chainModel);
        }
        Map returnModel = (Map) returnValue;
        finalModel.putAll(returnModel);

        removeProxiesFromModelObjects(finalModel);
        return new ModelAndView(viewName, finalModel);

    } else if (returnValue instanceof ModelAndView) {
        ModelAndView modelAndView = (ModelAndView) returnValue;

        // remove any Proxy wrappers and set the adaptee as the value
        Map modelMap = modelAndView.getModel();
        removeProxiesFromModelObjects(modelMap);

        if (!this.chainModel.isEmpty()) {
            modelAndView.addAllObjects(this.chainModel);
        }

        if (modelAndView.getView() == null && modelAndView.getViewName() == null) {
            if (viewNameBlank) {
                throw new NoViewNameDefinedException(
                        "ModelAndView instance returned by and no view name defined by nor for closure on property ["
                                + closurePropertyName + "] in controller [" + controller.getClass() + "]!");
            } else {
                modelAndView.setViewName(viewName);
            }
        }
        return modelAndView;
    } else {
        Map model;
        if (!this.chainModel.isEmpty()) {
            model = new CompositeMap(this.chainModel, new BeanMap(controller));
        } else {
            model = new BeanMap(controller);
        }
        return new ModelAndView(viewName, model);
    }
}

From source file:org.gbif.portal.web.controller.download.DownloadController.java

/**
 * Add file properties to Model//from w  w w . j a  va  2 s  .c  o m
 * 
 * @param mav
 * @param fileName
 * @param file nullable
 */
public void addFilePropertiesToRequest(ModelAndView mav, String fileName, File file) throws Exception {
    Map<String, Object> fileProperties = getFileProperties(fileName, file);
    mav.addAllObjects(fileProperties);
}

From source file:org.gbif.portal.web.controller.registration.RegistrationController.java

/**
 * Refreshes the details for the supplied dataset using the latest available for its metadata
 * request./*  w  ww  .  ja v a 2  s.  com*/
 * 
 * @return
 */
public ModelAndView refreshMetadataDetails(HttpServletRequest request, HttpServletResponse response)
        throws Exception {

    // get the provider from UDDI if necessary
    ProviderDetail provider = retrieveProviderFromUDDI(request);
    if (provider == null) {
        return new ModelAndView("registrationBadBusinessKey");
    }

    // retrieve resource details
    ResourceDetail resource = retrieveDataResource(request, provider);

    // retrieve resources from access point
    List<ResourceDetail> resources = null;
    try {
        resources = contactProviderForMetadata(resource.getAccessPoint());
    } catch (Exception e) {
        logger.error(e.getMessage(), e);
        ModelAndView mav = new ModelAndView("refreshMetadataFailure");
        mav.addObject("resource", resource);
        return mav;
    }

    ResourceDetail metadataResource = null;
    if (resources.size() == 1) {
        logger.debug("Only one resource found at end point. Assuming same resource.");
        metadataResource = resources.get(0);
    } else {
        // use name to retrieve the properties
        for (ResourceDetail retrievedResource : resources) {
            if (resource.getName().equals(retrievedResource.getName())) {
                metadataResource = retrievedResource;
                break;
            }
        }
    }

    // store the updated properties
    List<String> updatedProperties = new ArrayList<String>();

    // find the list of metadata supplied properties
    List<String> readonlyProperties = null;

    boolean refreshFailure = false;

    // if not null, update properties available from metadata
    if (metadataResource != null) {
        readonlyProperties = retrieveReadonlyPropertiesForResource(metadataResource);
        for (String readonlyProperty : readonlyProperties) {
            Object newValue = PropertyUtils.getProperty(metadataResource, readonlyProperty);
            Object oldValue = PropertyUtils.getProperty(resource, readonlyProperty);
            if (newValue != null && !newValue.equals(oldValue)) {
                PropertyUtils.setProperty(resource, readonlyProperty, newValue);
                updatedProperties.add(readonlyProperty);
            }
        }
    } else {
        refreshFailure = true;
    }

    // uddiUtils.updateResource(resource, provider.getBusinessKey());

    ModelAndView mav = new ModelAndView("registrationResourceDetail");
    mav.addAllObjects(referenceDataForResource(request, resource));
    mav.addObject(RegistrationController.REQUEST_PROVIDER_DETAIL, provider);
    mav.addObject(RegistrationController.REQUEST_RESOURCE, resource);
    mav.addObject("readonlyProperties", readonlyProperties);
    mav.addObject("updatedProperties", updatedProperties);
    mav.addObject("refreshFailure", refreshFailure);
    mav.addObject("metadataRefresh", true);
    return mav;
}

From source file:org.gbif.portal.web.controller.registration.RegistrationController.java

/**
 * Populates the page model for the resources within the provider given
 *//*ww  w  .  j av  a 2  s.  c om*/
public ModelAndView registerDataResources(HttpServletRequest request, HttpServletResponse response)
        throws Exception {

    logger.debug("Entering the register data resources page");
    Map<String, Object> data = new HashMap<String, Object>();
    ProviderDetail provider = retrieveProviderFromUDDI(request);
    if (provider == null) {
        return new ModelAndView("registrationBadBusinessKey");
    }

    List<ResourceDetail> resources = null;

    logger.debug("Provider has resource count: " + provider.getBusinessResources().size());
    data.put(RegistrationController.REQUEST_PROVIDER_DETAIL, provider);
    if (StringUtils.isNotEmpty(request.getParameter(REQUEST_RESOURCE_URL))) {
        // retrieve resource list from provider
        resources = contactProviderForMetadata(request.getParameter(REQUEST_RESOURCE_URL));
        replaceKnownResourcesWithUDDICopy(provider, resources);
        data.put(REQUEST_RESOURCES, resources);
    }

    ModelAndView mav = new ModelAndView("registrationResourceLookup", data);

    // add readonly settings
    if (resources != null && resources.size() > 0) {
        ResourceDetail rd = resources.get(0);
        String namespace = resourceType2namespaceList.get(rd.getResourceType());
        List<String> namespaces = new ArrayList<String>();
        namespaces.add(namespace);
        mav.addObject("readonlyProperties",
                resourceExtractionUtils.getMappedBeanPropertiesForNamespace(namespaces));
    }

    data.putAll(referenceDataForResourceList(request));
    mav.addObject(REQUEST_RESOURCE_TYPES, resourceTypes);
    mav.addAllObjects(data);
    return mav;
}