3

Java コードから WSDL の URL が有効かどうかを確認したかったのです。それに基づいて別のURLを使用できるようにします。

だから私はこのようなコードをチェックしています。

private boolean isValidWsdlURL(String wsdlUrl) 
{
    UrlValidator urlValidator = new UrlValidator();
    if(urlValidator.isValid(wsdlUrl)) 
    {
        return true;
    }
    logger.info("WSDL URL is not valid...");
    return false;
}

しかし、有効な URL があっても常に false を返します。 WSDL URL 例: http://www.sample.com/MyWsdlService?wsdl

URLが?wsdlで終わっているのでコードの確認方法は? UrlValidator を渡すには、 " http://www.sample.com "だけが必要なようです。

4

3 に答える 3

3

WSDL URL を検証しようとしていますか? java.net.URL クラスを使用しないのはなぜですか?
そして、次のようなことをしてください:

String urlStr = "http://www.example.com/helloService?wsdl";
URL url = null;
try {
  url = new URL(urlStr);
  URLConnection urlConnection = url.openConnection()
} catch (MalformedURLException ex) {
   System.out.println("bad URL");
} catch (IOException ex) {
   System.out.println("Failed opening connection. Perhaps WS is not up?");
}

http の代わりに htt2p のような不適切な URL を挿入すると、"bad url" と出力されました。

于 2013-02-12T16:04:58.490 に答える
0
import org.apache.commons.validator.UrlValidator;

パブリッククラス ValidateUrlExample{

public static void main(String[] args) {

    UrlValidator urlValidator = new UrlValidator();

    //valid URL
    if (urlValidator.isValid("http://www.mkyong.com")) {
       System.out.println("url is valid");
    } else {
       System.out.println("url is invalid");
    }

    //invalid URL
    if (urlValidator.isValid("http://invalidURL^$&%$&^")) {
        System.out.println("url is valid");
    } else {
        System.out.println("url is invalid");
    }}

}

詳細については: https://www.mkyong.com/java/how-to-validate-url-in-java/

于 2016-11-29T10:24:47.763 に答える