List of usage examples for org.apache.wicket.util.string AppendingStringBuffer append
public AppendingStringBuffer append(final double d)
double argument to this string buffer. From source file:au.org.theark.core.web.component.wizard.AjaxWizardButtonBar.java
License:Open Source License
private void addAjax(final WizardButton button) { button.add(new AjaxFormSubmitBehavior("onclick") { private static final long serialVersionUID = 1L; @Override//from w ww . j a va2 s.com protected CharSequence getEventHandler() { AppendingStringBuffer handler = new AppendingStringBuffer(); handler.append(super.getEventHandler()); handler.append("; return false;"); return handler; } @Override protected IAjaxCallDecorator getAjaxCallDecorator() { return AjaxWizardButtonBar.this.getAjaxCallDecorator(); } @Override protected void onSubmit(AjaxRequestTarget target) { target.add(wizard); } @Override protected void onError(AjaxRequestTarget target) { target.add(wizard); } }); add(button); }
From source file:au.org.theark.core.web.component.wizard.AjaxWizardButtonBar.java
License:Open Source License
private void addAjaxCancel(final WizardButton button) { button.add(new AjaxFormSubmitBehavior("onclick") { private static final long serialVersionUID = 1L; @Override//from w w w.j av a 2 s . c o m protected CharSequence getEventHandler() { AppendingStringBuffer handler = new AppendingStringBuffer(); handler.append(super.getEventHandler()); handler.append("; return false;"); return handler; } @Override protected IAjaxCallDecorator getAjaxCallDecorator() { return AjaxWizardButtonBar.this.getAjaxCallDecorator(); } @Override protected void onSubmit(AjaxRequestTarget target) { wizard.getWizardModel().cancel(); wizard = new ArkCommonWizard(wizard.getId(), wizard.getWizardSteps(), wizard.getResultListContainer(), wizard.getWizardPanelContainer(), wizard.getWizardPanelFormContainer(), wizard.getSearchPanelContainer(), wizard.getTarget()); wizard.getSearchPanelContainer().setVisible(true); wizard.getResultListContainer().setVisible(true); wizard.getWizardPanelContainer().setVisible(true); cancelWizard(target); target.add(wizard.getSearchPanelContainer()); target.add(wizard.getResultListContainer()); target.add(wizard.getWizardPanelContainer()); target.add(wizard); } @Override protected void onError(AjaxRequestTarget target) { target.add(wizard); } }); add(button); }
From source file:au.org.theark.core.web.component.wizard.AjaxWizardButtonBar.java
License:Open Source License
private void addAjaxFinish(final WizardButton button) { button.add(new AjaxFormSubmitBehavior("onclick") { private static final long serialVersionUID = 1L; @Override/* w ww .j a va2 s.c o m*/ protected CharSequence getEventHandler() { AppendingStringBuffer handler = new AppendingStringBuffer(); handler.append(super.getEventHandler()); handler.append("; return false;"); return handler; } @Override protected IAjaxCallDecorator getAjaxCallDecorator() { return AjaxWizardButtonBar.this.getAjaxCallDecorator(); } @Override protected void onSubmit(AjaxRequestTarget target) { wizard.getSearchPanelContainer().setVisible(true); wizard.getResultListContainer().setVisible(true); wizard.getWizardPanelContainer().setVisible(true); wizard.getWizardModel().finish(); target.add(wizard.getSearchPanelContainer()); target.add(wizard.getResultListContainer()); target.add(wizard.getWizardPanelContainer()); target.add(wizard); } @Override protected void onError(AjaxRequestTarget target) { target.add(wizard); } }); add(button); }
From source file:com.antilia.web.field.impl.TableRadioChoice.java
License:Apache License
/** * @see org.apache.wicket.Component#onComponentTagBody(MarkupStream, ComponentTag) *//*from w w w. j ava 2s . co m*/ @Override protected final void onComponentTagBody(final MarkupStream markupStream, final ComponentTag openTag) { // Iterate through choices final List<? extends T> choices = getChoices(); // Buffer to hold generated body final AppendingStringBuffer buffer = new AppendingStringBuffer((choices.size() + 1) * 70); // The selected value final String selected = getValue(); buffer.append("<table style=\"width: 100%;\" cellpadding=\"0\" cellspacing=\"5\">"); // Loop through choices for (int index = 0; index < choices.size(); index++) { // Get next choice final T choice = choices.get(index); Object displayValue = getChoiceRenderer().getDisplayValue(choice); Class<?> objectClass = (displayValue == null ? null : displayValue.getClass()); // Get label for choice String label = ""; if (objectClass != null && objectClass != String.class) { final IConverter converter = (IConverter) getConverter(objectClass); if (!converter.getClass().isAssignableFrom(objectClass)) { throw new IllegalArgumentException( "converter can not convert " + objectClass.getName() + " to string"); } label = converter.convertToString(displayValue, getLocale()); } else if (displayValue != null) { label = displayValue.toString(); } // If there is a display value for the choice, then we know that the // choice is automatic in some way. If label is /null/ then we know // that the choice is a manually created radio tag at some random // location in the page markup! if (label != null) { // Append option suffix buffer.append(getPrefix()); String id = getChoiceRenderer().getIdValue(choice, index); final String idAttr = getMarkupId() + "_" + id; buffer.append("<tr>"); buffer.append("<td style=\"width: 15px; vertical-align: top;\">"); // Add radio tag buffer.append("<input name=\"").append(getInputName()).append("\"").append(" type=\"radio\"") .append((isSelected(choice, index, selected) ? " checked=\"checked\"" : "")) .append((isEnabled() ? "" : " disabled=\"disabled\"")).append(" value=\"").append(id) .append("\" id=\"").append(idAttr).append("\""); // Should a roundtrip be made (have onSelectionChanged called) // when the option is clicked? if (wantOnSelectionChangedNotifications()) { CharSequence url = urlFor(IOnChangeListener.INTERFACE); Form<?> form = findParent(Form.class); if (form != null) { RequestContext rc = RequestContext.get(); if (rc.isPortletRequest()) { // restore url back to real wicket path as its going to be interpreted // by the form itself url = ((PortletRequestContext) rc).getLastEncodedPath(); } buffer.append(" onclick=\"").append(form.getJsForInterfaceUrl(url)).append(";\""); } else { // TODO: following doesn't work with portlets, should be posted to a dynamic // hidden form // with an ActionURL or something // NOTE: do not encode the url as that would give // invalid JavaScript buffer.append(" onclick=\"window.location.href='").append(url) .append((url.toString().indexOf('?') > -1 ? "&" : "?") + getInputName()) .append("=").append(id).append("';\""); } } buffer.append("/>"); buffer.append("</td>"); buffer.append("<td nowrap=\"nowrap\" style=\"width: 300px;\">"); // Add label for radio button String display = label; if (localizeDisplayValues()) { display = getLocalizer().getString(label, this, label); } CharSequence escaped = Strings.escapeMarkup(display, false, true); buffer.append(escaped); // Append option suffix buffer.append(getSuffix()); buffer.append("</td>"); buffer.append("</tr>"); } } buffer.append("</table>"); // Replace body replaceComponentTagBody(markupStream, openTag, buffer); }
From source file:com.doculibre.constellio.wicket.application.ConstellioApplication.java
License:Open Source License
@SuppressWarnings("rawtypes") protected void init() { Objects.setObjectStreamFactory(new IObjectStreamFactory() { @Override//from www .j a v a2 s . com public ObjectInputStream newObjectInputStream(InputStream in) throws IOException { return new ObjectInputStream(in) { @Override protected Class<?> resolveClass(ObjectStreamClass desc) throws IOException, ClassNotFoundException { String className = desc.getName(); try { return Class.forName(className); } catch (ClassNotFoundException e) { for (ClassLoader pluginClassLoader : PluginFactory.getClassLoaders()) { try { return pluginClassLoader.loadClass(className); } catch (ClassNotFoundException e2) { } } throw e; } } }; } @Override public ObjectOutputStream newObjectOutputStream(OutputStream out) throws IOException { return new ObjectOutputStream(out); } }); getApplicationSettings().setPageExpiredErrorPage(getHomePage()); // getApplicationSettings().setPageExpiredErrorPage(SearchExceptionHandlingPage.class); // getApplicationSettings().setInternalErrorPage(SearchExceptionHandlingPage.class); getDebugSettings().setAjaxDebugModeEnabled(false); getMarkupSettings().setStripWicketTags(true); dictionaries = getServletContext().getRealPath(ConstellioSpringUtils.getDictionaries()); PageFactoryPlugin pageFactoryPlugin = PluginFactory.getPlugin(PageFactoryPlugin.class); mount(new QueryStringUrlCodingStrategy("/form", pageFactoryPlugin.getSearchFormPage()) { @Override protected void appendParameters(AppendingStringBuffer url, Map parameters) { super.appendParameters(url, parameters); String params = getExternalParams(url); url.append(params); } }); // mount(new QueryStringUrlCodingStrategy("/search", test.TestPage.class) { // @Override // protected void appendParameters(AppendingStringBuffer url, Map parameters) { // super.appendParameters(url, parameters); // String params = getExternalParams(url); // url.append(params); // } // }); mount(new QueryStringUrlCodingStrategy("/search", pageFactoryPlugin.getSearchResultsPage()) { @Override protected void appendParameters(AppendingStringBuffer url, Map parameters) { super.appendParameters(url, parameters); String params = getExternalParams(url); url.append(params); } }); mount(new QueryStringUrlCodingStrategy("/history", pageFactoryPlugin.getSearchHistoryPage()) { @Override protected void appendParameters(AppendingStringBuffer url, Map parameters) { super.appendParameters(url, parameters); String params = getExternalParams(url); url.append(params); } }); mount(new QueryStringUrlCodingStrategy("/admin", pageFactoryPlugin.getAdminPage()) { @Override protected void appendParameters(AppendingStringBuffer url, Map parameters) { super.appendParameters(url, parameters); String params = getExternalParams(url); url.append(params); } }); mount(new QueryStringUrlCodingStrategy("/login", pageFactoryPlugin.getLoginPage()) { @Override protected void appendParameters(AppendingStringBuffer url, Map parameters) { super.appendParameters(url, parameters); String params = getExternalParams(url); url.append(params); } }); mount(new QueryStringUrlCodingStrategy("/responsive", ResponsivePage.class) { @Override protected void appendParameters(AppendingStringBuffer url, Map parameters) { super.appendParameters(url, parameters); String params = getExternalParams(url); url.append(params); } }); mountBookmarkablePage("/solr", SolrServletPage.class); mountBookmarkablePage("/select", SolrServletPage.class); mountBookmarkablePage("/getSmbFile", SmbServletPage.class); initializeIfRequired(); //getRequestCycleSettings().addResponseFilter(new EmptySrcAttributeCheckFilter()); super.init(); }
From source file:com.doculibre.constellio.wicket.components.modal.NonAjaxModalWindow.java
License:Apache License
/** * Returns the javascript used to open the window. * /*w ww. j a va 2 s .co m*/ * @return javascript that opens the window */ private String getWindowOpenJavascript() { AppendingStringBuffer buffer = new AppendingStringBuffer(); if (isCustomComponent() == true) { buffer.append("var element = document.getElementById(\"" + getContentMarkupId() + "\");\n"); } buffer.append("var settings = new Object();\n"); buffer.append("settings.minWidth=" + getMinimalWidth() + ";\n"); buffer.append("settings.minHeight=" + getMinimalHeight() + ";\n"); buffer.append("settings.className=\"" + getCssClassName() + "\";\n"); buffer.append("settings.width=\"" + getInitialWidth() + "\";\n"); if (isUseInitialHeight() == true || isCustomComponent() == false) buffer.append("settings.height=\"" + getInitialHeight() + "\";\n"); else buffer.append("settings.height=null;\n"); buffer.append("settings.resizable=" + Boolean.toString(isResizable()) + ";\n"); if (isResizable() == false) { buffer.append("settings.widthUnit=\"" + getWidthUnit() + "\";\n"); buffer.append("settings.heightUnit=\"" + getHeightUnit() + "\";\n"); } if (isCustomComponent() == false) { Page page = createPage(); if (page == null) { throw new WicketRuntimeException("Error creating page for modal dialog."); } RequestCycle.get().setUrlForNewWindowEncoding(); buffer.append("settings.src=\"" + RequestCycle.get().urlFor(page) + "\";\n"); if (getPageMapName() != null) { buffer.append("settings.iframeName=\"" + getPageMapName() + "\";\n"); } } else { buffer.append("settings.element = element;\n"); } if (getCookieName() != null) { buffer.append("settings.cookieId=\"" + getCookieName() + "\";\n"); } Object title = getTitle() != null ? getTitle().getObject() : null; if (title != null) { buffer.append("settings.title=\"" + escapeQuotes(title.toString()) + "\";\n"); } if (getMaskType() == MaskType.TRANSPARENT) { buffer.append("settings.mask=\"transparent\";\n"); } else if (getMaskType() == MaskType.SEMI_TRANSPARENT) { buffer.append("settings.mask=\"semi-transparent\";\n"); } // set true if we set a windowclosedcallback boolean haveCloseCallback = false; // in case user is interested in window close callback or we have a // pagemap to clean // attach notification request if ((isCustomComponent() == false && deletePageMap) || windowClosedCallback != null) { WindowClosedBehavior behavior = (WindowClosedBehavior) getBehaviors(WindowClosedBehavior.class).get(0); buffer.append("settings.onClose = function() { " + /*behavior.getCallbackScript() +*/ " };\n"); haveCloseCallback = true; } // in case we didn't set windowclosecallback, we need at least callback // on close button, // to close window property (thus cleaning the shown flag) if (closeButtonCallback != null || haveCloseCallback == false) { CloseButtonBehavior behavior = (CloseButtonBehavior) getBehaviors(CloseButtonBehavior.class).get(0); buffer.append("settings.onCloseButton = function() { " + /*behavior.getCallbackScript() +*/ "};\n"); } postProcessSettings(buffer); buffer.append("Wicket.Window.create(settings).show();\n"); return buffer.toString(); }
From source file:com.francetelecom.clara.cloud.presentation.tools.ServerPageMetaFilter.java
License:Apache License
/** * @see org.apache.wicket.IResponseFilter#filter(AppendingStringBuffer) *//*from w w w . ja v a2 s. c o m*/ public AppendingStringBuffer filter(AppendingStringBuffer responseBuffer) { String responseHtmlTagUsed = "</html>"; int index = responseBuffer.indexOf(responseHtmlTagUsed); long timeTaken = System.currentTimeMillis() - RequestCycle.get().getStartTime(); if (index != -1) { AppendingStringBuffer script = new AppendingStringBuffer(125); script.append("\n<!--"); // server time used script.append("\n window.pagemeta.serverPageRenderingTime=' "); script.append(((double) timeTaken) / 1000); script.append("s';\n"); // server ip script.append("\n window.pagemeta.serverIP='"); script.append(retrieveServerIP()); script.append("';\n"); // rendering date script.append("\n window.pagemeta.renderingDate='"); script.append(retrieveRenderingDateStr()); script.append("';\n"); script.append(" -->\n"); responseBuffer.insert(index, script); } log.debug(timeTaken + "ms server time taken for request " + RequestCycle.get().getRequest().getUrl() + " response size: " + responseBuffer.length()); return responseBuffer; }
From source file:com.gitblit.wicket.GitblitParamUrlCodingStrategy.java
License:Apache License
/** * @see org.apache.wicket.request.target.coding.AbstractRequestTargetUrlCodingStrategy#appendParameters(org.apache.wicket.util.string.AppendingStringBuffer, * java.util.Map)//from w ww .j a v a 2s . c om */ @Override protected void appendParameters(AppendingStringBuffer url, Map<String, ?> parameters) { if (!url.endsWith("/")) { url.append("/"); } Set<String> parameterNamesToAdd = new HashSet<String>(parameters.keySet()); // Find index of last specified parameter boolean foundParameter = false; int lastSpecifiedParameter = parameterNames.length; while (lastSpecifiedParameter != 0 && !foundParameter) { foundParameter = parameters.containsKey(parameterNames[--lastSpecifiedParameter]); } if (foundParameter) { for (int i = 0; i <= lastSpecifiedParameter; i++) { String parameterName = parameterNames[i]; final Object param = parameters.get(parameterName); String value = param instanceof String[] ? ((String[]) param)[0] : ((param == null) ? null : param.toString()); if (value == null) { value = ""; } if (!url.endsWith("/")) { url.append("/"); } url.append(urlEncodePathComponent(value)); parameterNamesToAdd.remove(parameterName); } } if (!parameterNamesToAdd.isEmpty()) { boolean first = true; for (String parameterName : parameterNamesToAdd) { final Object param = parameters.get(parameterName); if (param instanceof String[]) { String[] values = (String[]) param; for (String value : values) { url.append(first ? '?' : '&'); url.append(urlEncodeQueryComponent(parameterName)).append("=") .append(urlEncodeQueryComponent(value)); first = false; } } else { url.append(first ? '?' : '&'); String value = String.valueOf(param); url.append(urlEncodeQueryComponent(parameterName)).append("=") .append(urlEncodeQueryComponent(value)); } first = false; } } }
From source file:com.gitblit.wicket.SessionlessForm.java
License:Apache License
/** * Append an additional hidden input tag that forces Wicket to correctly * determine the destination page class even after a session expiration or * a server restart.//www. ja va 2s .com * * @param markupStream * The markup stream * @param openTag * The open tag for the body */ @Override public void onComponentTagBody(final MarkupStream markupStream, final ComponentTag openTag) { // render the hidden bookmarkable page field AppendingStringBuffer buffer = new AppendingStringBuffer(HIDDEN_DIV_START); buffer.append("<input type=\"hidden\" name=\"").append("wicket:bookmarkablePage").append("\" value=\":") .append(pageClass.getName()).append("\" />"); // insert the page parameters, if any, as hidden fields as long as they // do not collide with any child wicket:id of the form. if (pageParameters != null) { for (String key : pageParameters.getNamedKeys()) { Component c = get(key); if (c != null) { // this form has a field id which matches the // parameter name, skip embedding a hidden value log.warn(MessageFormat.format( "Skipping page parameter \"{0}\" from sessionless form hidden fields because it collides with a form child wicket:id", key)); continue; } String value = pageParameters.get(key).toString(); buffer.append("<input type=\"hidden\" name=\"").append(recode(key)).append("\" value=\"") .append(recode(value)).append("\" />"); } } buffer.append("</div>"); getResponse().write(buffer); super.onComponentTagBody(markupStream, openTag); }
From source file:com.googlecode.ounit.HtmlFile.java
License:Open Source License
@Override public Markup getAssociatedMarkup() { File f = getFile();/*ww w. ja va 2s . c o m*/ if (!getFile().canRead()) { //return Markup.NO_MARKUP; return Markup.of("<wicket:panel></wicket:panel>"); } final AppendingStringBuffer sb = new AppendingStringBuffer("<wicket:panel>"); try { sb.append(f.readString()); } catch (IOException e) { throw new RuntimeException(e); } sb.append("</wicket:panel>"); InvalidMarkupFilter.removeInvalidMarkup(sb); return MarkupFactory.get().loadMarkup(this, new MarkupResourceStream(new StringResourceStream(sb)), false); }