Link to home
Start Free TrialLog in
Avatar of triplebd69
triplebd69

asked on

ASP.NET

"Server Response Error: 'Unknown Server error'"

Get this when trying to use Ajax AsyncFileUpload.

Have adjusted the web.config, checked the control name and events.  Registered the Ajax assembly.
Avatar of cefranklin
cefranklin
Flag of United States of America image

Write access to the directory?
Avatar of triplebd69
triplebd69

ASKER

I am not getting past the clientsideupload.
<ajax:AsyncFileUpload ID="fuSlides" Width="400px" runat="server"
				OnClientUploadError="uploadError" 
				OnClientUploadStarted="StartUpload" 
				OnClientUploadComplete="UploadComplete" 
				CompleteBackColor="Lime"
				UploaderStyle="Modern" 
				ErrorBackColor="Red" 
				onuploadedcomplete="fuSlides_UploadedComplete" 
				UploadingBackColor="#66CCFF" />


 <script type="text/javascript" language="javascript">
	     function uploadError(sender, args) {
//	         alert("[" + lblStatus + "]"); return false;
	         document.getElementById('<%= lblStatus.ClientID %>').innerHTML = args.get_errorMessage();
	         alert(args.get_fileName() + ' could not be uploaded. ' + args.get_errorMessage());
		 }
	     function StartUpload(sender, args) {
//	         alert("[" + fuSlides + "]"); return false;
			 var filename = args.get_fileName();
			 var filext = filename.substring(filename.lastIndexOf(".") + 1);
			 if (filext == "doc" || filext == "docx" || filext == "pdf" || filext == "pages" || filext == "pptx" || filext == "ppt") {
				 return true;
			 }
			 else {
				 var err = new Error();
				 err.name = 'My API Input Error';
				 err.message = 'Only .ppt, .pptx, .doc, .docx, or .pdf  files';
				 throw (err);

				 return false;
			 }
		 }
	    function UploadComplete(sender, args) {
			var filename = args.get_fileName();
			var contentType = args.get_contentType();
			var text = "Size of " + filename + " is " + args.get_length() + " bytes";
			if (contentType.length > 0) {
			    text += " and content type is '" + contentType + "'.";
			    __doPostBack('UploadPostback', '');
			}
		}

Open in new window

I haven't messed around with that control much but, still, make sure the IWAM and IUSR have write access to the folder, also check this out:
http://blog.mrt-web.com/2010/12/ajax-control-toolkit-asyncfileupload.html

If you're sure about those two steps and still you get the same error, the simple workaround is to change the value of "ClientIDMode" to "AutoID".
I have tried to insert ClientIDMode="AutoID" nut i get this error

'ClientIDMode' is not a member of 'AjaxControlToolkit.AsyncFileUpload'.
Eww, sorry about that. I am reading also that other developers are using Fiddler to see the exact error.  Maybe that can help your narrow it down.

Sorry I don't have any solutions, just trying to help you work through this :)
ASKER CERTIFIED SOLUTION
Avatar of triplebd69
triplebd69

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Check to see if 3.5 is installed in C:\Windows\Microsoft.NET\Framework.  If there is a v3.5 folder, it is installed.  If it is installed and the website is set to 2, then it is also using 3.5.
Oh, also, if you have access to the web server itself, make sure the v2 asp.net extension is enabled.
Currently I am running this on my local machine.  In the C:\Windows\Microsoft.NET\Framework folder I have v2, v3.0, v3.5, v4.0
Yeah, so asp.net 3.5 should be good to go, you could run C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -r to reinstall and will set all websites to use that version.

I think after that if it still doesn't work your best bet would be to get fiddler.  FireFox also has Firebug so you can see the XHR requests.
What framework did you need? 4?
2.0
Using wrong framework