Problem mit java.net.ConnectException



  • Ich benutze jakarta.commons.httpclient um über HTTP einige Dateien von einem Server herunterzuladen.
    Dies klappt auch solange ich das ganze über Port 80 mache, aber wenn ich nun auf port 10000 wechsel,
    dann klappts nicht mehr, und ich bekomme eine java.net.ConnectException.
    Auf Port 10000 läuft aber definitiv der apache, ich hab das in der httpd.conf so eingestellt,
    und über den Browser bekomme ich auch problemlos zugriff.

    Hier mein Code:

    public class HTTPGet
    {
    	private String useragent;
    	private static String username,password,proxy;
    	private static int port;
    	HttpClient http; 
    	//private HttpMethod method;
    	public  HTTPGet(Crawler cr,String useragent){
    		http = new HttpClient();
    		http.setState(new HttpState());
    		ConfigReader config = ConfigReader.instance();
                    // config mit startaddresse und mainport anlegen
    		HostConfiguration hostconfig= new HostConfiguration();
    		hostconfig.setHost(config.Getstart(),config.Getmainport());
    		http.setHostConfiguration(hostconfig);
    	}
    
    	public String GetRequest(String request){
    		HttpMethod method=null;
    		if(request == null)
    			return "";
    		try
    		{
    			{
    				ConfigReader config = ConfigReader.instance();
    
    				System.out.println("Port: "+ http.getPort());
    				System.out.println("GetRequest: "+ request);
    				method = new GetMethod(request);
    				method.addRequestHeader("User-Agent:",config.Getuseragent());
    	    	int status = http.executeMethod(method);
    			if(status !=HttpStatus.SC_OK)
    			{
    				System.out.println(status + " " + HttpStatus.getStatusText(status));
    				ErrorFilter.filterRequestError(status,HttpStatus.getStatusText(status),cr.Getactual());
    				cr.Getactual().SetTime(System.currentTimeMillis()+cr.Getactual().GetTime());
    				cr.notify(cr.Getactual());
    			}
    			String str = method.getResponseBodyAsString();
    			method.releaseConnection();
    			method = null;
    			return str;
    		}
    		catch(...)
    		return null;
    	}
    

    Jemand eine Idee, woran das liegen könnte?
    Bzw. ob irgendwas an dem Code falsch ist? Wie stell ich korrekt den Port z.b. ein?

    Hm, ich hab jetzt noch mal was rumgespielt, und es scheint so, das er sich an die Einstellungen garnicht hält,
    sondern einfach über Port 80 geht, welches somit dann in die Exception führt.
    Kennt sich jemand mit jakarta.commons.httpclient aus, und weiss wie ich den Port korrekt setze?

    phlox


Anmelden zum Antworten