Java URL is Absolute getAbsoluteURL(String baseUrl, String url)

Here you can find the source of getAbsoluteURL(String baseUrl, String url)

Description

get Absolute URL

License

Open Source License

Parameter

Parameter Description
baseUrl base application URL (including protocol, hostname and port)
url absolute or relative URL

Exception

Parameter Description
MalformedURLException if a valid URL could not be constructed from the parameters

Return

URL object representing the absolute URL

Declaration

public static URL getAbsoluteURL(String baseUrl, String url) throws MalformedURLException 

Method Source Code


//package com.java2s;
/*/*from   w ww . j  a v a  2s.  com*/
 * MIT License
 * Copyright (c) 2016 Estonian Information System Authority (RIA)
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

import java.net.MalformedURLException;
import java.net.URL;

public class Main {
    /**
     * @param baseUrl base application URL (including protocol, hostname and port)
     * @param url     absolute or relative URL
     * @return URL object representing the absolute URL
     * @throws MalformedURLException if a valid URL could not be constructed from the parameters
     */
    public static URL getAbsoluteURL(String baseUrl, String url) throws MalformedURLException {
        try {
            return new URL(url);
        } catch (MalformedURLException e) {
            try {
                return new URL(appendPath(baseUrl, url));
            } catch (MalformedURLException e1) {
                throw e;
            }
        }
    }

    private static String appendPath(String base, String path) {
        if (path.startsWith("/")) {
            return base + path;
        }
        return base + '/' + path;
    }
}

Related

  1. getAbsoluteUrl(String base_url, String rel_url)
  2. getAbsoluteURL(String baseURLString, String relURlString)
  3. getAbsoluteURL(String relativeURL, String baseURL)
  4. getAbsoluteURL(String url, URL base)
  5. getAbsoluteUrl(URL baseUrl, String relativeUrl)