Connection Problem

Jul 22, 2010 at 9:36 PM

Im using Cradiator to connect to CruiseControl.Net V 1.5.*, which has more than 20 projects.

 

Is there a limitation with the number of projects which can be displayed/handled?

 

I get the connection problem error and when I see the logs below is the exception. I try to find the xml file which xmlstatusReport.aspx page access, but couldn't find the file in the hard disk.

 

2010-07-22 16:26:59,928 ERROR FetchExceptionHandler - Unable to contact http://localhost/ccnet/XmlStatusReport.aspx
Cradiator.Model.FetchException: Unable to contact http://localhost/ccnet/XmlStatusReport.aspx ---> System.Net.WebException: The remote server returned an error: (401) Unauthorized.
   at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
   at System.Net.WebClient.DownloadString(Uri address)
   at Cradiator.Services.HttpWebClient.DownloadString(Uri uri)
   at Cradiator.Model.BuildDataFetcher.Fetch()
   --- End of inner exception stack trace ---
   at Cradiator.Model.BuildDataFetcher.Fetch()
   at Cradiator.Model.ScreenUpdater.FetchData(Object sender, DoWorkEventArgs e)

 

Please advise

Coordinator
Jul 22, 2010 at 11:57 PM
Edited Jul 23, 2010 at 1:10 AM
Hi, No, there's no limitation of projects. It's just that you don't have a CCnet server configured or running properly to server up the URL: http://localhost/ccnet/XmlStatusReport.aspx Type that URL into a browser and see what you get back - it will make the same request as Cradiator. Until that URL works in your browser, it won't work in Cradiator.
Jul 23, 2010 at 2:25 PM

Thanks for the reply. URL works perfectly in the browser - But something doesn't seem right for Cradiator.

 

Is the xml page rendered on the go or fetched from a physical location ? may be the file doesn't have access rights for Cradiator to read? Thanks for you time. Appreciate it.

Coordinator
Jul 23, 2010 at 5:39 PM
Edited Jul 23, 2010 at 5:58 PM

Cradiator just uses System.Net.WebClient.DownloadString() to download the XML that is rendered at the given URL.

If yours is returning 401 - Unauthorized then you've obviously got some sort of security setup on your server - Cradiator doesn't handle passing credentials.

I'm no expert on that subject, but I'd be interested if any browser would work - I'm guessing you're using IE only? In that case. maybe I need to rephrase my original statement, if it doesn't work in Firefox without a login prompt, it won't work in Cradiator ;-)

 

Jul 23, 2010 at 6:43 PM

Found something interesting - Does anyone have CCNet setup in a IIS5.1 setting and got Cradiator working?

I did some litmus test to see if Cradiator is able to read an xml file located in a virtual directory - fails. (But works when given the complete physical path) - Windows XP professional , IIS5.1

Did the same test in a webserver which has Windows Server 2003, IIS 6.0 and the test pass.

Does this prove that if I setup CCNet in a Windows Server 2003/II6.0, Cradiator would work?

 

Coordinator
Jul 24, 2010 at 12:48 AM
Edited Jul 24, 2010 at 12:54 AM

Just incase you didn't read the last post:

 

Cradiator just uses System.Net.WebClient.DownloadString() to download the XML that is rendered at the given URL.

If yours is returning 401 - Unauthorized then you've obviously got some sort of security setup on your server - Cradiator doesn't handle passing credentials.

 

The relevant code is in the BuildDataFetcher class. There's nothing complicated about it. DownloadString() will read any URL on the internet. It's just a method to read a web page, that's it.

I think the rest is up to you.


Jul 26, 2010 at 4:49 PM

Ah ok.

Got it working when I set the Anonymous access in IIS. The Firefox permission trick worked.

Thanks for your help