Search in sources :

Example 26 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class PageProviderTest method testStalePageExceptionOnAjaxRequest.

/**
 * Request an old URL in an AJAX request and assert that we have an AJAX response.
 *
 * @see <a href="https://issues.apache.org/jira/browse/WICKET-3252">WICKET-3252</a>
 * @throws ParseException
 * @throws ResourceStreamNotFoundException
 * @throws IOException
 */
@Test
public void testStalePageExceptionOnAjaxRequest() throws IOException, ResourceStreamNotFoundException, ParseException {
    tester.startPage(TestPage.class);
    TestPage testPage = (TestPage) tester.getLastRenderedPage();
    // cache the old URL
    Url firstAjaxLinkUrl = tester.urlFor(testPage.ajaxLink);
    // request a new page
    tester.clickLink("link");
    tester.setExposeExceptions(false);
    tester.setFollowRedirects(false);
    tester.setUseRequestUrlAsBase(false);
    // execute the old URL
    executeAjaxUrlWithLastBaseUrl(firstAjaxLinkUrl);
    assertTrue(tester.getLastResponseAsString().startsWith("<ajax-response>"));
    assertTrue(tester.getLastResponse().isRedirect());
}
Also used : Url(org.apache.wicket.request.Url) Test(org.junit.Test)

Example 27 with Url

use of org.apache.wicket.request.Url in project wicket-orientdb by OrienteerBAP.

the class WicketOrientDbTester method executeUrl.

public String executeUrl(String _url, final String method, final String content, String username, String password) throws Exception {
    MockHttpServletRequest request = new MockHttpServletRequest(getApplication(), getHttpSession(), getServletContext()) {

        {
            setMethod(method);
        }

        @Override
        public ServletInputStream getInputStream() throws IOException {
            if (content == null)
                return super.getInputStream();
            else {
                final StringReader sr = new StringReader(content);
                return new ServletInputStream() {

                    @Override
                    public int read() throws IOException {
                        return sr.read();
                    }
                };
            }
        }
    };
    Url url = Url.parse(_url, Charset.forName(request.getCharacterEncoding()));
    request.setUrl(url);
    request.setMethod(method);
    if (username != null && password != null) {
        request.setHeader(LazyAuthorizationRequestCycleListener.AUTHORIZATION_HEADER, "Basic " + Base64.getEncoder().encodeToString((username + ":" + password).getBytes()));
    }
    if (!processRequest(request)) {
        throw new IOException("Request was not sucessfully sent");
    }
    MockHttpServletResponse response = getLastResponse();
    int status = response.getStatus();
    if (status >= HttpServletResponse.SC_OK + 100) {
        throw new IOException("Code: " + response.getStatus() + " Message: " + response.getErrorMessage() + " Content: " + response.getDocument());
    } else {
        return response.getDocument();
    }
}
Also used : ServletInputStream(javax.servlet.ServletInputStream) MockHttpServletRequest(org.apache.wicket.protocol.http.mock.MockHttpServletRequest) StringReader(java.io.StringReader) IOException(java.io.IOException) Url(org.apache.wicket.request.Url) MockHttpServletResponse(org.apache.wicket.protocol.http.mock.MockHttpServletResponse)

Example 28 with Url

use of org.apache.wicket.request.Url in project wicket-orientdb by OrienteerBAP.

the class ReverseProxyResource method mapUrl.

protected HttpUrl mapUrl(Attributes attributes) {
    HttpUrl.Builder builder = getBaseUrl(attributes).newBuilder();
    WebRequest webRequest = (WebRequest) attributes.getRequest();
    Url url = webRequest.getUrl();
    PageParameters pageParameters = attributes.getParameters();
    for (int i = 0; i < pageParameters.getIndexedCount(); i++) {
        builder.addPathSegment(pageParameters.get(i).toString());
    }
    // builder.addEncodedPathSegments(url.getPath());
    builder.fragment(url.getFragment());
    builder.encodedQuery(webRequest.asHttpServletRequest().getQueryString());
    onMapUrl(attributes, builder);
    return builder.build();
}
Also used : WebRequest(org.apache.wicket.request.http.WebRequest) PageParameters(org.apache.wicket.request.mapper.parameter.PageParameters) HttpUrl(okhttp3.HttpUrl) Url(org.apache.wicket.request.Url) HttpUrl(okhttp3.HttpUrl)

Example 29 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class UrlResourceReferenceMapper method mapHandler.

@Override
public Url mapHandler(IRequestHandler requestHandler) {
    Url url = null;
    if (requestHandler instanceof ResourceReferenceRequestHandler) {
        ResourceReferenceRequestHandler resourceReferenceRequestHandler = (ResourceReferenceRequestHandler) requestHandler;
        ResourceReference resourceReference = resourceReferenceRequestHandler.getResourceReference();
        while (resourceReference instanceof ResourceBundleReference) {
            // unwrap the bundle to render the url for the actual reference
            resourceReference = ((ResourceBundleReference) resourceReference).getBundleReference();
        }
        if (resourceReference instanceof UrlResourceReference) {
            UrlResourceReference urlResourceReference = (UrlResourceReference) resourceReference;
            url = urlResourceReference.getUrl();
        }
    }
    return url;
}
Also used : ResourceReferenceRequestHandler(org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler) UrlResourceReference(org.apache.wicket.request.resource.UrlResourceReference) ResourceBundleReference(org.apache.wicket.resource.bundles.ResourceBundleReference) UrlResourceReference(org.apache.wicket.request.resource.UrlResourceReference) ResourceReference(org.apache.wicket.request.resource.ResourceReference) Url(org.apache.wicket.request.Url)

Example 30 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class RestartResponseAtInterceptPageException method getOriginalUrl.

/**
 * @return the url of the request when the interception happened or {@code null}
 * or {@code null} if there was no interception yet
 */
public static Url getOriginalUrl() {
    Url originalUrl = null;
    InterceptData data = InterceptData.get();
    if (data != null) {
        originalUrl = data.getOriginalUrl();
    }
    return originalUrl;
}
Also used : Url(org.apache.wicket.request.Url)

Aggregations

Url (org.apache.wicket.request.Url)347 Test (org.junit.jupiter.api.Test)220 IRequestHandler (org.apache.wicket.request.IRequestHandler)143 MockWebRequest (org.apache.wicket.mock.MockWebRequest)57 UrlRenderer (org.apache.wicket.request.UrlRenderer)57 PageParameters (org.apache.wicket.request.mapper.parameter.PageParameters)56 RenderPageRequestHandler (org.apache.wicket.core.request.handler.RenderPageRequestHandler)50 IRequestablePage (org.apache.wicket.request.component.IRequestablePage)50 Test (org.junit.Test)46 PageProvider (org.apache.wicket.core.request.handler.PageProvider)40 IPageProvider (org.apache.wicket.core.request.handler.IPageProvider)34 ResourceReferenceRequestHandler (org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler)34 ResourceUrl (org.apache.wicket.request.resource.caching.ResourceUrl)33 BookmarkableListenerRequestHandler (org.apache.wicket.core.request.handler.BookmarkableListenerRequestHandler)26 ListenerRequestHandler (org.apache.wicket.core.request.handler.ListenerRequestHandler)25 Request (org.apache.wicket.request.Request)24 MockPage (org.apache.wicket.MockPage)22 BookmarkablePageRequestHandler (org.apache.wicket.core.request.handler.BookmarkablePageRequestHandler)17 BufferedWebResponse (org.apache.wicket.protocol.http.BufferedWebResponse)16 PageAndComponentProvider (org.apache.wicket.core.request.handler.PageAndComponentProvider)15