List of usage examples for org.apache.wicket.protocol.http WebApplication getHeaderContributorListeners
public final HeaderContributorListenerCollection getHeaderContributorListeners()
From source file:org.wicketstuff.jeeweb.ajax.JEEWebGlobalAjaxHandler.java
License:Apache License
/** * Configures the handler to the given application. * /*from w w w . j av a2 s. c om*/ * @param application * the application to configure the handler to */ public static void configure(WebApplication application) { application.getRequestCycleListeners().add(new PageRequestHandlerTracker()); application.mountResource("/" + JEEWebGlobalAjaxHandler.class.getSimpleName(), new JEEWebGlobalAjaxHandler()); application.getHeaderContributorListeners().add(new IHeaderContributor() { private static final long serialVersionUID = 1644041155625458328L; @Override public void renderHead(IHeaderResponse response) { JavaScriptResourceReference forReference = new JavaScriptResourceReference( JEEWebGlobalAjaxHandler.class, JEEWebGlobalAjaxHandler.class.getSimpleName() + ".js") { private static final long serialVersionUID = -3649384632770480975L; @Override public List<HeaderItem> getDependencies() { return new ArrayList<HeaderItem>() { private static final long serialVersionUID = 1L; { add(JavaScriptHeaderItem.forReference(WicketAjaxJQueryResourceReference.get())); } }; } }; response.render(JavaScriptHeaderItem.forReference(forReference)); addAJaxBaseUrl(response); } private void addAJaxBaseUrl(IHeaderResponse response) { // render ajax base url. It's required by Wicket Ajax support. Url baseUrl = RequestCycle.get().getUrlRenderer().getBaseUrl(); CharSequence ajaxBaseUrl = Strings.escapeMarkup(baseUrl.toString()); response.render(JavaScriptHeaderItem.forScript("Wicket.Ajax.baseUrl=\"" + ajaxBaseUrl + "\";", "wicket-ajax-base-url")); } }); }