Showing posts with label solution. Show all posts
Showing posts with label solution. Show all posts

Wednesday, March 28, 2012

Continuing problem - "Access is denied" client error

I have struggled with this problem for a couple of months now with no solution yet.

I am migrating an existing web site to a newer user-friendly web using AJAX and the AJAX Toolkit controls. I am using a couple of the tab controls on a couple of pages, including the default page. I am using VB 2005 along with SQL Server 2005. The production server is running IIS 5.1 (and yes, I have installed AJAX and the toolkit on it and yes, the dll files are in the bin directory).

Everything works fine on the development machine, but after copying the files to the production server and then viewing the site in IE (6 or 7) on any machine, there are "Access is Denied" errors when trying to use one of the tab controls.

I have searched the internet and did come across and article about this error, but it pertains to using IFRAME and I am not using any. I have uninstalled and reinstalled IIS on the production server, I have uninstalled and reinstalled both AJAX and the toolkit.

I am at a loss - is there anything that I am overlooking? I would like to have this newer website up and running by June 1, however if there is still these errors, I will have to revert back to the older non-AJAX enabled site.

Thanks for any information.

Anybody?

Here is a thought too and I don't know if this has anything to do with it, but my site is run locally at home using a static IP address. The URL is registered through Yahoo Small Business.

Would that have anything to do with it for any reason?


And to add to it, the error points tohttp://<the ip address>/thewebpage

Consuming services from another application with Cassini

I have two projects in a solution: a Web Application (UI) project and a Web Service project. I can't get the UI to consume a web service if the projects are running using the built-in web server. My OnCompleted or OnError callbacks never get called. However, it works if I use IIS.

So the client ishttp://localhost:4312/default.aspx and it references the service using:

<atlas:ServiceReferencePath="http://localhost:1234/Service1.asmx"/>

If all I do is make them both IIS apps then change the reference as follows, it works a treat:

<atlas:ServiceReferencePath="/ServiceApp/Service1.asmx"/>

Is this because Cassini's use of different port numbers makes this appear as a forbidden cross-domain call?

BTW, I obviously made sure that Cassini was listening on both ports.

If the port's not the same yes you will get a crossdomain error.

But I don't think that's the only issue. Cassini listens to a specific port and sets up the ASP.NET runtime for a specific virtual directory. 1 port, 1 Virtual directory, 1 instance of Cassini.So unless youhave two separate instenaces of Cassini running the call won't work because it's effectively only servicing a single application. You'll need two instances of VS or Cassini to make this happen and I don't think you can do that either because only one instance can listen on a given port.

So, no you probably can't do that <s>... Use IIS and separate virtuals.

+++ Rick --


Yeah, thanks Rick. That's pretty much the conclusion I've come to. But I find it strange that the port is considered part of the domain. Cool blog by the way.

Stu