2つのURLを次のコードとマージします。
String strUrl1 = "http://www.domainname.com/path1/2012/04/25/file.php";
String arg = "?page=2";
URL url1;
try {
url1 = new URL(strUrl1);
URL reconUrl1 = new URL(url1,arg);
System.out.println(" url : " + reconUrl1.toString());
} catch (MalformedURLException ex) {
ex.printStackTrace();
}
結果に驚いています:http://www.domainname.com/path1/2012/04/25/?page = 2
私はそれが(ブラウザが何をするか)であることを期待しています:http://www.domainname.com/path1/2012/04/25/file.php?page = 2
コンストラクターURL(URLコンテキスト、文字列仕様)に関するjavadocは、RFCを尊重する必要があることを説明しています。
私は何か間違ったことをしていますか?
ありがとう
アップデート :
This is the only problem I encountered with the fonction.
The code already works in all others cases, like browser do
"domain.com/folder/sub" + "/test" -> "domain.com/test"
"domain.com/folder/sub/" + "test" -> "domain.com/folder/sub/test"
"domain.com/folder/sub/" + "../test" -> "domain.com/folder/test"
...