2012-03-26 5 views
0

私はこのエラーが発生しているので、なぜ私は本当に知りません。私は別のURLを試しましたが、私はまだ同じエラーが発生します。java.net.MalformedURLException java.net.URL。 <init>(不明な情報源)

java.net.MalformedURLException のjava.net.URL。(不明なソース)

public class ProxyServlet extends HttpServlet { 

private String PostUrl = "http://localhost:8080/myProxy/myServlet"; 

private static final long serialVersionUID = 1L; 

public ProxyServlet() { 
    super(); 
    } 

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

    System.out.println("Parameters retreived..."); 
    // map parameters to properties in config file and set response 
    Map(); 
    } 

private void Map() throws IOException{ 


     String urlParameters = "topic="+topic+"&item="+item+"&period="+period+"; 
     URL url = new URL(PostUrl); 
     HttpURLConnection conn = (HttpURLConnection)url.openConnection(); 
     System.out.println("Connection made to " + PostUrl); 
     conn.setDoOutput(true); 
     conn.setInstanceFollowRedirects(true); 
     conn.setRequestMethod("POST"); 
     conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); 
     conn.setRequestProperty("charset", "utf-8"); 

     OutputStream out = null; 

     try{ 
      System.out.println("Writing data to output stream..."); 
      out = conn.getOutputStream(); 
      out.write(urlParameters.getBytes()); 
      out.close(); 
      System.out.println("All done!!!"); 
     } 

     catch(IOException e){ 
      e.printStackTrace(); 
     } 
    } 
} 

任意の助けいただければ幸いです!

ありがとうございます!

答えて

1

このコードはコンパイルされません。

お客様のURLは無効です。上の理由でそれが示されていると仮定することはできません。

また、パラメータの名前と値をURLエンコードする必要があります。

+0

ありがとうございました。私はURLEncodedパラメータを持っています。なぜあなたはURLが無効だと思いますか?私はかなりURLが存在すると確信しています。 [http://yahoo.com](http://yahoo.com)のようなものを試しても、同じエラーが表示されます。 – user1192724

+0

@ user1192724例外がそう言っているので無効です。存在していないだけでなく、不正な形式です。慎重に確認してください。 – EJP

+0

ありがとう!私は、私のコードのどこか別のURL変数を変更していて、nullに設定しているのを見ました。それを修正し、それは完全に動作します。ありがとう! – user1192724

関連する問題