resolve(String): This method is available in the java.net.URI class of Java.
Syntax:
URI java.net.URI.resolve(String str)
This method takes one argument. This method constructs a new URI by parsing the given string and then resolving it against this URI.
Parameters: One parameter is required for this method.
str: The string to be parsed into a URI.
Returns: The resulting URI.
Throws:
1. NullPointerException - If str is null.
2. IllegalArgumentException - If the given string violates RFC 2396
Approach 1: When no exception
Java
package com.URI;import java.net.URI;import java.net.URISyntaxException;public class URIresolve {public static void main(String[] args) throws URISyntaxException {String scheme = "https", userInfo = "userInfo", host = "localhost", path = "/hello", query = "param=value",fragment = "fragment";int port = 8080;URI uri = new URI(scheme, userInfo, host, port, path, query, fragment);String str = "str";System.out.println(uri.resolve(str));}}
Output:
https://userInfo@localhost:8080/str
Approach 2: NullPointerException
Java
package com.URI;import java.net.URI;import java.net.URISyntaxException;public class URIresolve {public static void main(String[] args) throws URISyntaxException {String scheme = "https", userInfo = "userInfo", host = "localhost", path = "/hello", query = "param=value",fragment = "fragment";int port = 8080;URI uri = new URI(scheme, userInfo, host, port, path, query, fragment);String str = null;System.out.println(uri.resolve(str));}}
Output:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "String.length()" because "this.input" is null at java.base/java.net.URI$Parser.parse(URI.java:3154) at java.base/java.net.URI.<init>(URI.java:623) at java.base/java.net.URI.create(URI.java:904) at java.base/java.net.URI.resolve(URI.java:1089) at com.URI.URIresolve.main(URIresolve.java:16)
Approach 3: IllegalArgumentException
Java
package com.URI;import java.net.URI;import java.net.URISyntaxException;public class URIresolve {public static void main(String[] args) throws URISyntaxException {String scheme = "https", userInfo = "userInfo", host = "localhost", path = "/hello", query = "param=value",fragment = "fragment";int port = 8080;URI uri = new URI(scheme, userInfo, host, port, path, query, fragment);String str = "\\str";System.out.println(uri.resolve(str));}}
Output:
Exception in thread "main" java.lang.IllegalArgumentException: Illegal character in path at index 0: \str at java.base/java.net.URI.create(URI.java:906) at java.base/java.net.URI.resolve(URI.java:1089) at com.URI.URIresolve.main(URIresolve.java:16) Caused by: java.net.URISyntaxException: Illegal character in path at index 0: \str at java.base/java.net.URI$Parser.fail(URI.java:2963) at java.base/java.net.URI$Parser.checkChars(URI.java:3134) at java.base/java.net.URI$Parser.parseHierarchical(URI.java:3216) at java.base/java.net.URI$Parser.parse(URI.java:3175) at java.base/java.net.URI.<init>(URI.java:623) at java.base/java.net.URI.create(URI.java:904) ... 2 more
Some other methods of URI class
URI(String): This method constructs a URI by parsing the given string.
URI(String, String, String): This method constructs a URI from the given components. A component may be left undefined by passing null.
URI(String, String, String, String): This method constructs a hierarchical URI from the given components.
URI(String, String, String, String, String): This method constructs a hierarchical URI from the given components. If a scheme is given then the path, if also given, must either be empty or begin with a slash character ('/'). Otherwise, a component of the new URI may be left undefined by passing null for the corresponding parameter.
URI(String, String, String, int, String, String, String): This method constructs a hierarchical URI from the given components. If a scheme is given then the path, if also given, must either be empty or begin with a slash character ('/'). Otherwise, a component of the new URI may be left undefined by passing null for the corresponding parameter or, in the case of the port parameter, bypassing -1.
compareTo(URI): This method compares this URI to another object, which must be a URI.
URI.create(String): This method creates a URI by parsing the given string.
equals(Object): This method tests this URI for equality with another object.
getAuthority(): This method returns the decoded authority component of this URI.
getFragment(): This method returns the decoded fragment component of this URI.
getHost(): This method returns the host component of this URI.
getPath(): This method returns the decoded path component of this URI.
getPort(): This method returns the port number of this URI.
getQuery(): This method returns the decoded query component of this URI.
getRawAuthority(): This method returns the raw authority component of this URI.
getRawFragment(): This method returns the raw fragment component of this URI.
getRawPath(): This method returns the raw path component of this URI.
getRawQuery(): This method returns the raw query component of this URI.
getRawSchemeSpecificPart(): This method returns the raw scheme-specific part of this URI. The scheme-specific part is never undefined, though it may be empty.
getRawUserInfo(): This method returns the raw user-information component of this URI.
getScheme(): This method returns the scheme component of this URI.
hashCode(): This method returns a hash code value for this URI.
isAbsolute(): This method tells whether or not this URI is absolute.
isOpaque(): This method tells whether or not this URI is opaque.
normalize(): This method normalizes this URI's path.
parseServerAuthority(): This method attempts to parse this URI's authority component if defined, into user information, host, and port components.
relativize(URI): This method relativizes the given URI against this URI.
resolve(String): This method constructs a new URI by parsing the given string and then resolving it against this URI.
resolve(URI): This method resolves the given URI against this URI
toASCIIString(): This method returns the content of this URI as a US-ASCII string.
toString(): This method returns the content of this URI as a string.
toURL(): This method constructs a URL from this URI.
No comments:
Post a Comment