List of usage examples for org.apache.wicket.request IRequestParameters getParameterValues
List<StringValue> getParameterValues(String name);
From source file:org.efaps.ui.wicket.components.gridx.behaviors.SubmitModalBehavior.java
License:Apache License
@Override protected void onSubmit(final AjaxRequestTarget _target) { super.onSubmit(_target); try {// ww w .j a va 2 s .c o m final IRequestParameters para = getComponent().getRequest().getRequestParameters(); final StringValue rid = para.getParameterValue("rid"); final UIGrid uiGrid = (UIGrid) getComponent().getPage().getDefaultModelObject(); final Long cmdId = uiGrid.getID4Random(rid.toString()); final Command cmd = Command.get(cmdId); final List<StringValue> oidValues = para.getParameterValues("selectedRow"); boolean check = false; if (cmd.getSubmitSelectedRows() > -1) { if (cmd.getSubmitSelectedRows() > 0) { check = oidValues == null ? false : oidValues.size() == cmd.getSubmitSelectedRows(); } else { check = oidValues == null ? false : !oidValues.isEmpty(); } } else { check = true; } if (check) { final ModalWindowContainer modal = getComponent().getPage() .visitChildren(ModalWindowContainer.class, new ModalVisitor()); modal.show(_target); } else { getComponent().getPage().visitChildren(ModalWindowContainer.class, new IVisitor<ModalWindowContainer, Void>() { @Override public void component(final ModalWindowContainer _modal, final IVisit<Void> _visit) { _modal.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = 1L; @Override public Page createPage() { return new DialogPage(getComponent().getPage().getPageReference(), "SubmitSelectedRows.fail" + cmd.getSubmitSelectedRows(), false, false); } }); _modal.setInitialHeight(150); _modal.setInitialWidth(350); _modal.show(_target); _visit.stop(); } }); } } catch (final Exception e) { SubmitModalBehavior.LOG.error("Catched", e); } }
From source file:org.efaps.ui.wicket.EFapsSession.java
License:Apache License
/** * Method that opens a new Context in eFaps, setting the User, the Locale, * the Attributes of this Session {@link #sessionAttributes} and the * RequestParameters for the Context./*from w w w. ja va2 s . c om*/ * * @see #attach() */ public void openContext() { if (isLogedIn()) { try { if (!Context.isTMActive()) { final ServletWebRequest request = (ServletWebRequest) RequestCycle.get().getRequest(); if (request instanceof EFapsRequest || request instanceof EFapsMultipartRequest) { final Map<String, String[]> parameters = new HashMap<>(); final IRequestParameters reqPara = request.getRequestParameters(); for (final String name : reqPara.getParameterNames()) { final List<StringValue> values = reqPara.getParameterValues(name); final String[] valArray; if (values == null) { valArray = ArrayUtils.EMPTY_STRING_ARRAY; } else { valArray = new String[values.size()]; int i = 0; for (final StringValue value : values) { valArray[i] = value.toString(); i++; } } parameters.put(name, valArray); } Context.begin(this.userName, super.getLocale(), this.sessionAttributes, parameters, null, Context.Inheritance.Inheritable); // set the locale in the context and in the session setLocale(Context.getThreadContext().getLocale()); setAttribute(UserAttributesSet.CONTEXTMAPKEY, Context.getThreadContext().getUserAttributes()); Context.getThreadContext().setPath(request.getContextPath()); } } } catch (final EFapsException e) { EFapsSession.LOG.error("could not initialise the context", e); throw new RestartResponseException(new ErrorPage(e)); } } }
From source file:org.efaps.ui.wicket.request.EFapsRequestParametersAdapter.java
License:Apache License
/** * @param _parameters paramters to work on *///from ww w. j a va 2s . c o m public EFapsRequestParametersAdapter(final IRequestParameters... _parameters) { for (final IRequestParameters p : _parameters) { for (final String name : p.getParameterNames()) { final List<StringValue> values = p.getParameterValues(name); this.parameters.put(name, values); EFapsRequestParametersAdapter.LOG.trace("adding parameter from request. Name: '{}', value: {}", name, values); } } }
From source file:org.efaps.ui.wicket.util.ParameterUtil.java
License:Apache License
/** * Get an array for the StringValues./*from w ww . jav a 2s .c o m*/ * * @param _parameters IRequestParameters * @param _parameterName name of the Paramaters * @return always StringArray, if parameter does not exist an empty * StringArray */ public static String[] parameter2Array(final IRequestParameters _parameters, final String _parameterName) { final List<StringValue> values = _parameters.getParameterValues(_parameterName); return ParameterUtil.stringValues2Array(values); }
From source file:org.hippoecm.frontend.Main.java
License:Apache License
@Override protected void init() { super.init(); addRequestCycleListeners();//from w w w . java 2s. com registerSessionListeners(); getPageSettings().setVersionPagesByDefault(false); // getPageSettings().setAutomaticMultiWindowSupport(false); // getSessionSettings().setPageMapEvictionStrategy(new LeastRecentlyAccessedEvictionStrategy(1)); getApplicationSettings().setPageExpiredErrorPage(PageExpiredErrorPage.class); try { String cfgParam = getConfigurationParameter(MAXUPLOAD_PARAM, null); if (cfgParam != null && cfgParam.trim().length() > 0) { getApplicationSettings().setDefaultMaximumUploadSize(Bytes.valueOf(cfgParam)); } } catch (StringValueConversionException ex) { log.warn("Unable to parse number as specified by " + MAXUPLOAD_PARAM, ex); } final IClassResolver originalResolver = getApplicationSettings().getClassResolver(); getApplicationSettings().setClassResolver(new IClassResolver() { @Override public Class resolveClass(String name) throws ClassNotFoundException { if (Session.exists()) { UserSession session = UserSession.get(); ClassLoader loader = session.getClassLoader(); if (loader != null) { return session.getClassLoader().loadClass(name); } } return originalResolver.resolveClass(name); } @Override public Iterator<URL> getResources(String name) { List<URL> resources = new LinkedList<>(); for (Iterator<URL> iter = originalResolver.getResources(name); iter.hasNext();) { resources.add(iter.next()); } if (Session.exists()) { UserSession session = UserSession.get(); ClassLoader loader = session.getClassLoader(); if (loader != null) { try { for (Enumeration<URL> resourceEnum = session.getClassLoader() .getResources(name); resourceEnum.hasMoreElements();) { resources.add(resourceEnum.nextElement()); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } return resources.iterator(); } @Override public ClassLoader getClassLoader() { return Main.class.getClassLoader(); } }); final IResourceSettings resourceSettings = getResourceSettings(); // replace current loaders with own list, starting with component-specific List<IStringResourceLoader> loaders = resourceSettings.getStringResourceLoaders(); loaders.add(new ClassFromKeyStringResourceLoader()); loaders.add(new IStringResourceLoader() { @Override public String loadStringResource(final Class<?> clazz, final String key, final Locale locale, final String style, final String variation) { return null; } @Override public String loadStringResource(final Component component, String key, final Locale locale, final String style, final String variation) { if (key.contains(",")) { key = key.substring(0, key.lastIndexOf(',')); return resourceSettings.getLocalizer().getStringIgnoreSettings(key, component, null, locale, style, variation); } return null; } }); if (RuntimeConfigurationType.DEVELOPMENT.equals(getConfigurationType())) { resourceSettings.setCachingStrategy(new NoOpResourceCachingStrategy()); } else { resourceSettings.setCachingStrategy( new FilenameWithVersionResourceCachingStrategy(new LastModifiedResourceVersion())); } mount(new MountMapper("binaries", new IMountedRequestMapper() { @Override public IRequestHandler mapRequest(final Request request, final MountParameters mountParams) { String path = Strings.join("/", request.getUrl().getSegments()); try { javax.jcr.Session subSession = UserSession.get().getJcrSession(); Node node = ((HippoWorkspace) subSession.getWorkspace()).getHierarchyResolver() .getNode(subSession.getRootNode(), path); // YUCK: no exception! if (node == null) { log.info("no binary found at " + path); } else { if (node.isNodeType(HippoNodeType.NT_DOCUMENT)) { node = (Node) JcrHelper.getPrimaryItem(node); } return new JcrResourceRequestHandler(node); } } catch (PathNotFoundException e) { log.info("binary not found " + e.getMessage()); } catch (javax.jcr.LoginException ex) { log.warn(ex.getMessage()); } catch (RepositoryException ex) { log.error(ex.getMessage()); } return null; } @Override public int getCompatibilityScore(final Request request) { return 1; } @Override public Mount mapHandler(final IRequestHandler requestHandler) { return null; } })); String applicationName = getPluginApplicationName(); if (PLUGIN_APPLICATION_VALUE_CMS.equals(applicationName)) { // the following is only applicable and needed for the CMS application, not the Console /* * HST SAML kind of authentication handler needed for Template Composer integration * */ cmsContextService = (CmsInternalCmsContextService) HippoServiceRegistry .getService(CmsContextService.class); if (cmsContextService == null) { cmsContextServiceImpl = new CmsContextServiceImpl(); cmsContextService = cmsContextServiceImpl; HippoServiceRegistry.registerService(cmsContextServiceImpl, new Class[] { CmsContextService.class, CmsInternalCmsContextService.class }); } mount(new MountMapper("auth", new IMountedRequestMapper() { @Override public IRequestHandler mapRequest(final Request request, final MountParameters mountParams) { IRequestHandler requestTarget = new RenderPageRequestHandler( new PageProvider(getHomePage(), null), RedirectPolicy.AUTO_REDIRECT); IRequestParameters requestParameters = request.getRequestParameters(); final List<StringValue> cmsCSIDParams = requestParameters.getParameterValues("cmsCSID"); final List<StringValue> destinationPathParams = requestParameters .getParameterValues("destinationPath"); final String destinationPath = destinationPathParams != null && !destinationPathParams.isEmpty() ? destinationPathParams.get(0).toString() : null; PluginUserSession userSession = (PluginUserSession) Session.get(); final UserCredentials userCredentials = userSession.getUserCredentials(); HttpSession httpSession = ((ServletWebRequest) request).getContainerRequest().getSession(); final CmsSessionContext cmsSessionContext = CmsSessionContext.getContext(httpSession); if (destinationPath != null && destinationPath.startsWith("/") && (cmsSessionContext != null || userCredentials != null)) { requestTarget = new IRequestHandler() { @Override public void respond(IRequestCycle requestCycle) { String destinationUrl = RequestUtils.getFarthestUrlPrefix(request) + destinationPath; WebResponse response = (WebResponse) RequestCycle.get().getResponse(); String cmsCSID = cmsCSIDParams == null ? null : cmsCSIDParams.get(0) == null ? null : cmsCSIDParams.get(0).toString(); if (!cmsContextService.getId().equals(cmsCSID)) { // redirect to destinationURL and include marker that it is a retry. This way // the destination can choose to not redirect for SSO handshake again if it still does not // have a key if (destinationUrl.contains("?")) { response.sendRedirect(destinationUrl + "&retry"); } else { response.sendRedirect(destinationUrl + "?retry"); } return; } String cmsSessionContextId = cmsSessionContext != null ? cmsSessionContext.getId() : null; if (cmsSessionContextId == null) { CmsSessionContext newCmsSessionContext = cmsContextService.create(httpSession); CmsSessionUtil.populateCmsSessionContext(cmsContextService, newCmsSessionContext, userSession); cmsSessionContextId = newCmsSessionContext.getId(); } if (destinationUrl.contains("?")) { response.sendRedirect(destinationUrl + "&cmsCSID=" + cmsContextService.getId() + "&cmsSCID=" + cmsSessionContextId); } else { response.sendRedirect(destinationUrl + "?cmsCSID=" + cmsContextService.getId() + "&cmsSCID=" + cmsSessionContextId); } } @Override public void detach(IRequestCycle requestCycle) { //Nothing to detach. } }; } return requestTarget; } @Override public int getCompatibilityScore(final Request request) { return 0; } @Override public Mount mapHandler(final IRequestHandler requestHandler) { return null; } })); } // caching resource stream locator implementation that allows the class argument to be null. final IResourceStreamLocator resourceStreamLocator = resourceSettings.getResourceStreamLocator(); resourceSettings.setResourceStreamLocator(new IResourceStreamLocator() { @Override public IResourceStream locate(Class<?> clazz, final String path) { if (clazz == null) { clazz = CACHING_RESOURCE_STREAM_LOCATOR_CLASS; } return resourceStreamLocator.locate(clazz, path); } @Override public IResourceStream locate(Class<?> clazz, final String path, final String style, final String variation, final Locale locale, final String extension, final boolean strict) { if (clazz == null) { clazz = CACHING_RESOURCE_STREAM_LOCATOR_CLASS; } return resourceStreamLocator.locate(clazz, path, style, variation, locale, extension, strict); } @Override public IResourceNameIterator newResourceNameIterator(final String path, final Locale locale, final String style, final String variation, final String extension, final boolean strict) { return resourceStreamLocator.newResourceNameIterator(path, locale, style, variation, extension, strict); } }); if (RuntimeConfigurationType.DEVELOPMENT.equals(getConfigurationType())) { // disable cache resourceSettings.getLocalizer().setEnableCache(false); final long timeout = NumberUtils.toLong( getConfigurationParameter(DEVELOPMENT_REQUEST_TIMEOUT_PARAM, null), DEFAULT_DEVELOPMENT_REQUEST_TIMEOUT_MS); if (timeout > 0L) { log.info("Setting wicket request timeout to {} ms.", timeout); getRequestCycleSettings().setTimeout(Duration.milliseconds(timeout)); } // render comments with component class names getDebugSettings().setOutputMarkupContainerClassName(true); // do not render Wicket-specific markup since it can break CSS getMarkupSettings().setStripWicketTags(true); } else { // don't serialize pages for performance setPageManagerProvider(new DefaultPageManagerProvider(this) { @Override protected IPageStore newPageStore(final IDataStore dataStore) { return new AmnesicPageStore(); } }); // don't throw on missing resource resourceSettings.setThrowExceptionOnMissingResource(false); // don't show exception page getExceptionSettings().setUnexpectedExceptionDisplay(IExceptionSettings.SHOW_NO_EXCEPTION_PAGE); final long timeout = NumberUtils .toLong(getConfigurationParameter(DEPLOYMENT_REQUEST_TIMEOUT_PARAM, null)); if (timeout > 0L) { log.info("Setting wicket request timeout to {} ms.", timeout); getRequestCycleSettings().setTimeout(Duration.milliseconds(timeout)); } } String outputWicketpaths = obtainOutputWicketPathsParameter(); if (outputWicketpaths != null && "true".equalsIgnoreCase(outputWicketpaths)) { getDebugSettings().setOutputComponentPath(true); } final IContextProvider<AjaxRequestTarget, Page> ajaxRequestTargetProvider = getAjaxRequestTargetProvider(); setAjaxRequestTargetProvider(context -> new PluginRequestTarget(ajaxRequestTargetProvider.get(context))); setPageRendererProvider(new IPageRendererProvider() { @Override public PageRenderer get(final RenderPageRequestHandler context) { return new WebPageRenderer(context) { @Override protected BufferedWebResponse renderPage(final Url targetUrl, final RequestCycle requestCycle) { IRequestHandler scheduled = requestCycle.getRequestHandlerScheduledAfterCurrent(); if (scheduled == null) { IRequestablePage page = getPage(); if (page instanceof Home) { Home home = (Home) page; home.processEvents(); home.render(null); } } return super.renderPage(targetUrl, requestCycle); } }; } }); // don't allow public access to any package resource (empty whitelist) by default resourceSettings.setPackageResourceGuard(new WhitelistedClassesResourceGuard()); if (log.isInfoEnabled()) { log.info("Hippo CMS application " + applicationName + " has started"); } }
From source file:org.jaulp.wicket.base.util.parameter.PageParametersUtils.java
License:Apache License
/** * Gets a map with all parameters. Looks in the query and post parameters. Migration method from * 1.4.* to 1.5.*./* w w w . j a v a2s . c o m*/ * * @param request * the request * @return a map with all parameters. */ public static Map<String, String[]> getParameterMap(Request request) { IRequestParameters parameters = request.getRequestParameters(); final Map<String, String[]> map = new HashMap<>(); Set<String> parameterNames = parameters.getParameterNames(); for (String parameterName : parameterNames) { List<StringValue> parameterValues = parameters.getParameterValues(parameterName); String[] stringArray = {}; if (parameterValues != null && !parameterValues.isEmpty()) { stringArray = new String[parameterValues.size()]; for (int i = 0; i < parameterValues.size(); i++) { stringArray[i] = parameterValues.get(i).toString(); } } map.put(parameterName, stringArray); } return map; }
From source file:org.openengsb.ui.admin.xlink.ToolChooserPage.java
License:Apache License
/** * Returns the Requestparameter as a Map. *//* w ww . j a v a 2s .c o m*/ private Map<String, String[]> getRequestParametersAsAMap() { Map<String, String[]> parameterMap = new HashMap<String, String[]>(); IRequestParameters parameters = getRequest().getQueryParameters(); for (String key : parameters.getParameterNames()) { List<StringValue> values = parameters.getParameterValues(key); List<String> valuesAsString = new ArrayList<String>(); for (StringValue stringvalue : values) { valuesAsString.add(stringvalue.toString()); } parameterMap.put(key, (String[]) valuesAsString.toArray(new String[0])); } return parameterMap; }
From source file:org.wicketstuff.js.ext.ExtEventAjaxBehavior.java
License:Apache License
@Override protected final void respond(AjaxRequestTarget target) { String[] parameters = getParameters(); IRequestParameters parameterMap = RequestCycle.get().getRequest().getQueryParameters(); Map<String, JSONArray> filtered = new HashMap<String, JSONArray>(); for (String parameter : parameters) { List<StringValue> values = parameterMap.getParameterValues(parameter); if (values == null) { continue; }/*from w w w .j a va2 s. c om*/ JSONArray jsonObjects = new JSONArray(); try { for (StringValue stringValue : values) { String value = stringValue.toString(); if (value.startsWith("[")) { JSONTokener tokener = new JSONTokener(value); JSONArray subVals = new JSONArray(tokener); for (int i = 0; i < subVals.length(); i++) { jsonObjects.put(subVals.get(i)); } } else if (value.startsWith("{")) { JSONTokener tokener = new JSONTokener(value); jsonObjects.put(new JSONObject(tokener)); } else if ("null".equals(value)) { jsonObjects.put(JSONObject.NULL); } else { jsonObjects.put(value); } } } catch (JSONException e) { log.error("Could not parse request parameters", e); } filtered.put(parameter, jsonObjects); } handle(target, filtered); }