Solved

Getting Ajax call to work in IIS7 web site

Posted on 2008-09-30
1
2,291 Views
Last Modified: 2012-05-05
I am trying to get a web site (.NET 2.0)  I inherited to run in IIS7.  I am stuck trying to get an Ajax call to work.  It is supposed to do an UPDATE  in the database but it doesnt.  It runs fine in IIS6.  In IIS7 it doesnt throw an error to the screen, it just doesnt update the database.  I believe that my problem is that I dont have a Handler set up properly to handle the Ajax call.
                              
The call is made from a web page code behind file like this (vb.net)   (of course a javascript calls this.)
      <Ajax.AjaxMethod()> Function MyDbUpdate(blah, blah, blah, this works fine on existing site)
            blah, blah, works fine
            Return "Good"
      End Function
                              
I have created a few handlers and turned off/on the Inherited handlers, but I am really shootin in the dark.   The two Inherited handlers  handle .ashx files and have
      1. a type of System.Web.UI.SimpleHandlerFactory and
      2. an Executable of %windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll
                                    
When I create a "Managed Handler" using the gui there is nothing that appears more Ajax related than the above items in the Type drop down.  Maybe I need to install something on the server in order to get the right "Type" to appear in that drop down(?)
                              
One of the handlers that I created, was a "Script Map" and it wrote a <system.webServer> node with children nodes in my web site web.config,  but the Ajax call still didnt work.  In that handler I tried to make it use the Ajax dll (Ajax.dll) that is in the web site directory structure, so the node in the web config looked like this.
      <system.webServer>    
           <handlers>                        
                <add name="AJAX.NET" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="D:\PriorityPost\bin\Ajax.dll" resourceType="Unspecified" />      
           </handlers>                                
      </system.webServer>
                                    
How can I get the Ajax call to work?  Thanks.
0
Comment
Question by:pdschuller
1 Comment
 

Accepted Solution

by:
pdschuller earned 0 total points
ID: 22624520
SOLUTION:  I had to create a Handler in IIS7 that was configured properly.  Based on my inputs, the IIS7 Create Handler wizard wrote an entry to the <Handlers> node of the web site web.config file that looked like this:
<add name="MrAjax" path="Ajax/*.ashx" verb="POST,GET" type="Ajax.PageHandlerFactory, Ajax" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode" />
You can make the name value anything you want.  I got the rest of the values from the similar node in the web.config of the site that was running in IIS6.  IMPORTANT:  in the IIS7 Create Handler wizard there is a dropdown for the type values.  The value that I wanted was not in the drop down, but it let me type anything I wanted in there so I banged in the value from the IIS web.config and it worked.

Can anyone tell me why I got no responses to this question?  If it was the way I wrote it - too much detail/ not enough - I'd like to know so that I dont make the same mistake again.  Or maybe its just that  IIS7 is as poorly documented as it seems to me it is ... or isn't.  Happy coding.
0

Featured Post

Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
401 - Error 6 33
Creating csr file for SSL 4 48
IIS8 IP Address and Domain Restrictions 17 43
jQuery AJAX Redirects Without Response/Error 10 42
jQuery is a JavaScript library that greatly simplifies JavaScript programming. AJAX is an acronym formed from "Asynchronous JavaScript and XML."  AJAX refers to any communication between client and server, when the human client does not observe a…
I found this questions asking how to do this in many different forums, so I will describe here how to implement a solution using PHP and AJAX. The logical flow for the problem should be: Write an event handler for the first drop down box to get …
I designed this idea while studying technology in the classroom.  This is a semester long project.  Students are asked to take photographs on a specific topic which they find meaningful, it can be a place or situation such as travel or homelessness.…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now