upload works on dev server, not on production server

Last post 06-04-2010, 5:49 PM by rberman. 7 replies.
Sort Posts: Previous Next
  •  06-04-2010, 1:03 PM 61569

    upload works on dev server, not on production server

    Hello,

    NOTE: There are a bunch of later messages here with additional information and updates to this one - please read them all before responding!

     
    UPDATE:
    THIS HAS BEEN SOLVED  -- see me final message
     
     
     I’m using the trial version. VS2008, .NET 3.5, C#.

     We are loading to a temp directory and then saving to a final directory. This all works fine on the development system. The production server is a hosted server, and the file does appear in its temp location as a .resx, but the FileUploaded event never fires, and thus our code to store the file is never called.

     Here are the web server log entries from the time we request our upload page, through the end of whatever occurs when we upload a file:

     2010-06-04 17:13:03 GET /admin/ScenarioImport/Upload.aspx - 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/User/Profile.aspx 200 55386 654

    2010-06-04 17:13:03 GET /CuteWebUI_Uploader_Resource.axd type=file&file=continuous.gif 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 398 718

    2010-06-04 17:13:04 GET /CuteWebUI_Uploader_Resource.axd type=script&_ver=634112466467229976 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 116024 644

    2010-06-04 17:13:04 GET /DXR.axd r=4_1 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 304 213 655

    2010-06-04 17:13:05 GET /CuteWebUI_Uploader_Resource.axd type=file&file=silverlight.xap&_ver=634112466467229976 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 - 200 15391 653

    2010-06-04 17:13:06 GET /CuteWebUI_Uploader_Resource.axd type=emptyhtml 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 0 683

    2010-06-04 17:13:11 GET /CuteWebUI_Uploader_Resource.axd type=file&file=circle.png&_ver=634112466467229976 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 608 688

    2010-06-04 17:13:11 GET /CuteWebUI_Uploader_Resource.axd type=file&file=stop.png&_ver=634112466467229976 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 643 686

    2010-06-04 17:13:13 GET /CuteWebUI_Uploader_Resource.axd type=emptyhtml 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 0 683

    2010-06-04 17:13:13 GET /CuteWebUI_Uploader_Resource.axd type=file&file=continuous.gif&_ver=634112466467229976 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 438 692

    2010-06-04 17:13:14 POST /admin/ScenarioImport/Upload.aspx UseUploadModule=Dynamic&_Namespace=CuteWebUI&_UploadID=ctl00_BodyPlaceholder_Uploader1Image_1275671600953_1&_UploadControlID=ctl00$BodyPlaceholder$Uploader1&ContextValue=!3wEWAQUbfi9hZG1pbi9TY2VuYXJpb0ltcG9ydC9UZW1wZJa8YwEmcrNLxl8h7tuhy8t5uH0!2&_Addon=upload&_AddonGuid=8f798714-0138-4778-8e66-09e25dab7b45&_NoCache=634112432031373130 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 - 200 220 67275

    2010-06-04 17:13:14 POST /admin/ScenarioImport/Upload.aspx UseUploadModule=Dynamic&_Namespace=CuteWebUI&_UploadID=ctl00_BodyPlaceholder_Uploader1Image_1275671600953_1&_UploadControlID=ctl00$BodyPlaceholder$Uploader1&ContextValue=!3wEWAQUbfi9hZG1pbi9TY2VuYXJpb0ltcG9ydC9UZW1wZJa8YwEmcrNLxl8h7tuhy8t5uH0!2&_Addon=upload&_AddonGuid=8f798714-0138-4778-8e66-09e25dab7b45&_NoCache=634112432040053627 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 - 200 220 76802

    2010-06-04 17:13:15 POST /admin/ScenarioImport/Upload.aspx UseUploadModule=Dynamic&_Namespace=CuteWebUI&_UploadID=ctl00_BodyPlaceholder_Uploader1Image_1275671600953_1&_UploadControlID=ctl00$BodyPlaceholder$Uploader1&ContextValue=!3wEWAQUbfi9hZG1pbi9TY2VuYXJpb0ltcG9ydC9UZW1wZJa8YwEmcrNLxl8h7tuhy8t5uH0!2&_Addon=upload&_AddonGuid=8f798714-0138-4778-8e66-09e25dab7b45&_NoCache=634112432047394047 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 - 200 220 49552

    2010-06-04 17:13:15 POST /admin/ScenarioImport/Upload.aspx UseUploadModule=Dynamic&_Namespace=CuteWebUI&_UploadID=ctl00_BodyPlaceholder_Uploader1Image_1275671600953_1&_UploadControlID=ctl00$BodyPlaceholder$Uploader1&ContextValue=!3wEWAQUbfi9hZG1pbi9TY2VuYXJpb0ltcG9ydC9UZW1wZJa8YwEmcrNLxl8h7tuhy8t5uH0!2&_Addon=verify&_AddonGuid=8f798714-0138-4778-8e66-09e25dab7b45 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 425 19510

    2010-06-04 17:13:15 GET /CuteWebUI_Uploader_Resource.axd type=emptyhtml 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 0 683

    2010-06-04 17:13:15 GET /CuteWebUI_Uploader_Resource.axd type=file&file=uploadok.png&_ver=634112466467229976 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 610 690

    2010-06-04 17:13:16 POST /admin/ScenarioImport/Upload.aspx - 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 288 24298

    2010-06-04 17:13:16 GET /CuteWebUI_Uploader_Resource.axd type=emptyhtml 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 0 683

    2010-06-04 17:13:18 GET /CuteWebUI_Uploader_Resource.axd type=emptyhtml 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 0 683

     

     There are no error messages – I can’t tell what the problem is. Could there be permissions or trust issues? If so, I would need to see this in the web log at least, and preferably would actually get a .NET exception for it.

     I’ve added logging to indicate whether FileValidating or UploadCompleted events are fired, as well as FileUploaded – NONE of these events are ever called, even though the UI indicates the upload does complete, and there is a .resx file in our temporary directory, and the file IS the correct size.

     It appears then that upload works but upon completion of file upload, AjaxUploader doesn’t fire any events.

     Here are the web.config settings related to the uploader:

      <appSettings>

        <add key="CuteWebUI.AjaxUploader.TempDirectory" value="~/admin/ScenarioImport/Temp"/>

     </appSettings>

     

        <httpModules>

          <add name="CuteWebUI.UploadModule" type="CuteWebUI.UploadModule,CuteWebUI.AjaxUploader"/>

        </httpModules>

     

    I am using the latest build of the control.

     Here is the markup for the upload control:

                         <CuteWebUI:UploadAttachments runat="server" ManualStartUpload="true" ID="Uploader1"

                            InsertText="Select GPCM Database (Access MDB or ZIP)" OnFileUploaded="Uploader_FileUploaded"

                            DialogFilter="Access Databases (*.mdb)|*.mdb|Zipped Access Database (*.zip)|*.zip"

                            FileTypeNotSupportMsg="Only MDB and ZIP files may be uploaded." MaxFilesLimit="1"

                            MultipleFilesUpload="False" NumFilesShowCancelAll="0" NumFilesShowQueueUI="0"

                            TempDirectory="~/admin/ScenarioImport/Temp" UploadingMsg="Uploading..."

                            AutoUseSystemTempFolder="False" HideNoItemTable="False" ShowCheckBoxes="False"

                            ShowRemoveButtons="False" ShowTableHeader="False">

                            <ValidateOption AllowedFileExtensions="mdb,zip" />

                        </CuteWebUI:UploadAttachments>

     

     

  •  06-04-2010, 1:07 PM 61571 in reply to 61569

    Re: upload works on dev server, not on production server

    Additional - here's the script and button markups for submit:
     
     
                        <asp:Button runat="server" ID="SubmitButton" OnClientClick="return submitbutton_click()"
                            Text="Submit" OnClick="SubmitButton_Click" />
     
        <script type="text/javascript">
    function submitbutton_click() {
        var submitbutton = document.getElementById('<%=SubmitButton.ClientID %>');
        var uploadobj = document.getElementById('<%=Uploader1.ClientID %>');
        if (!window.filesuploaded) {
            if (uploadobj.getqueuecount() > 0) {
                uploadobj.startupload();
            }
            else {
                var uploadedcount = parseInt(submitbutton.getAttribute("itemcount")) || 0;
                if (uploadedcount > 0) {
                    return true;
                }
                alert("Please select the GPCM database to upload.");
            }
            return false;
        }
        window.filesuploaded = false;
        return true;
    }

    function CuteWebUI_AjaxUploader_OnPostback() {
        window.filesuploaded = true;
        var submitbutton = document.getElementById('<%=SubmitButton.ClientID %>');
        submitbutton.click();
        return false;
    }
        </script>
     
  •  06-04-2010, 1:12 PM 61572 in reply to 61571

    Re: upload works on dev server, not on production server

    And just to emphasize this is not some module incompatibility - the ONLY difference in my entire web.config for the development and production server is the ConnectStrings section for database connection info. This should not matter to the uploader.
  •  06-04-2010, 1:18 PM 61574 in reply to 61572

    Re: upload works on dev server, not on production server

    And here's the full markup of the upload page:
     
    <%@ Page Title="" Language="C#" MasterPageFile="~/Main.master" AutoEventWireup="true" CodeFile="Upload.aspx.cs" Inherits="Viewpoints.admin_ScenarioImport_Upload" %>

    <%@ Register  TagPrefix="CuteWebUI" Namespace="CuteWebUI" Assembly="CuteWebUI.AjaxUploader" %>
    <%@ Register assembly="DevExpress.Web.ASPxEditors.v9.3, Version=9.3.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" namespace="DevExpress.Web.ASPxEditors" tagprefix="dx" %>
    <%@ Import Namespace="System.IO" %>

    <asp:Content ID="Content1" ContentPlaceHolderID="TitlePlaceholder" Runat="Server">
    Upload GPCM (Access) Database
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="HeadingRightPlaceholder" Runat="Server">
        Upload GPCM (Access) Database
    </asp:Content>
    <asp:Content ID="Content3" ContentPlaceHolderID="BodyPlaceholder" Runat="Server">
        <asp:ScriptManager ID="Scriptmanager1" runat="server">
        </asp:ScriptManager>

        <script type="text/javascript">
    function submitbutton_click() {
        var submitbutton = document.getElementById('<%=SubmitButton.ClientID %>');
        var uploadobj = document.getElementById('<%=Uploader1.ClientID %>');
        if (!window.filesuploaded) {
            if (uploadobj.getqueuecount() > 0) {
                uploadobj.startupload();
            }
            else {
                var uploadedcount = parseInt(submitbutton.getAttribute("itemcount")) || 0;
                if (uploadedcount > 0) {
                    return true;
                }
                alert("Please select the GPCM database to upload.");
            }
            return false;
        }
        window.filesuploaded = false;
        return true;
    }

    function CuteWebUI_AjaxUploader_OnPostback() {
        window.filesuploaded = true;
        var submitbutton = document.getElementById('<%=SubmitButton.ClientID %>');
        submitbutton.click();
        return false;
    }
        </script>

                        Enter any textual information about this database:<br />
        <asp:TextBox ID="txtNote"
            runat="server" Rows="5" TextMode="MultiLine" Height="97px" Width="531px"></asp:TextBox>
    <p></p>
                <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                    <ContentTemplate>
                       
                        <CuteWebUI:UploadAttachments runat="server" ManualStartUpload="true" ID="Uploader1"
                            InsertText="Select GPCM Database (Access MDB or ZIP)" OnFileUploaded="Uploader_FileUploaded"
                            DialogFilter="Access Databases (*.mdb)|*.mdb|Zipped Access Database (*.zip)|*.zip"
                            FileTypeNotSupportMsg="Only MDB and ZIP files may be uploaded." MaxFilesLimit="1"
                            MultipleFilesUpload="False" NumFilesShowCancelAll="0" NumFilesShowQueueUI="0"
                            TempDirectory="~/admin/ScenarioImport/Temp" UploadingMsg="Uploading..."
                            AutoUseSystemTempFolder="False" HideNoItemTable="False" ShowCheckBoxes="False"
                            ShowRemoveButtons="False" ShowTableHeader="False" HeaderRowStyle-BorderStyle="None">
                            <ValidateOption AllowedFileExtensions="mdb,zip" />
                        </CuteWebUI:UploadAttachments>
                        <br />
                        <br />
                        <asp:Button runat="server" ID="SubmitButton" OnClientClick="return submitbutton_click()"
                            Text="Submit" OnClick="SubmitButton_Click" />
                        <br />
                        <br />
                        Status/Progress<br />
                        <div>
                            <dx:ASPxListBox ID="lbEvents" runat="server" ReadOnly="True" ShowLoadingPanelImage="False"
                                Width="618px">
                            </dx:ASPxListBox>
                        </div>
                        <br />

                    </ContentTemplate>
                </asp:UpdatePanel>
    </asp:Content>
     
  •  06-04-2010, 2:06 PM 61575 in reply to 61574

    Re: upload works on dev server, not on production server

    More info:
     
    Tested on latest FireFox and IE8 - same result.
     
    Debugged the submitbutton_click function using FireBug... here's something interesting - and again, remember, this is only when the page is served from the production server:
     
     
    function submitbutton_click() {
        var submitbutton = document.getElementById('<%=SubmitButton.ClientID %>');
        var uploadobj = document.getElementById('<%=Uploader1.ClientID %>');
        if (!window.filesuploaded) {
            if (uploadobj.getqueuecount() > 0) {
                uploadobj.startupload();
            }

            else {
                var uploadedcount = parseInt(submitbutton.getAttribute("itemcount")) || 0;
                if (uploadedcount > 0) {
                    return true;
                }
                alert("Please select the GPCM database to upload.");
            }
            return false;
        }
        window.filesuploaded = false;
        return true;
    }
     
    I put breakpoints on each of the red lines above -- one on the call to uploadobj.startupload(), and the next one on the end of the condition. Thus I can see when the call starts, and when it completes. However, even though the file is uploaded, the second breakpoint is never reached. I also breakpointed the third red line above, in case somehow it got there, but it never does.
     
    FireBug also did not register any javascript error, which makes little sense. And IE did not report any page error, which it usually does if javascript fails.
     
    This appears to be entirely between this call of "startupload" and your HTML module on the web server.
     
     
  •  06-04-2010, 2:15 PM 61577 in reply to 61575

    Re: upload works on dev server, not on production server

    A bit more:
     
    Also have the function for OnPostback, as shown in the earlier message:
     
    function CuteWebUI_AjaxUploader_OnPostback() {
        window.filesuploaded = true;
        var submitbutton = document.getElementById('<%=SubmitButton.ClientID %>');
        submitbutton.click();
        return false;
    }
     
    This function never gets called.
  •  06-04-2010, 3:30 PM 61579 in reply to 61577

    Re: upload works on dev server, not on production server

    I decided not to trust FireBug 100%, so I put alerts in the javascript code to see where it was going.
     
    startupload IS being called returns immediately, then the upload completes, and CuteWebUI_AjaxUploader_OnPostback() is then called. It completes - that is, submitbutton.click is called and returns immediately.
     
    I also changed my scripts:
     
    function submitbutton_click() {
        var submitbutton = document.getElementById('<%=SubmitButton.ClientID %>');
        var uploadobj = document.getElementById('<%=Uploader1.ClientID %>');
        if (!window.filesuploaded) {
            if (uploadobj.getqueuecount() > 0) {
                uploadobj.startupload();
            }
            else {
                var uploadedcount = parseInt(submitbutton.getAttribute("itemcount")) || 0;
                if (uploadedcount > 0) {
                    return true;
                }
                alert("Please select the GPCM database to upload.");
            }
            return false;
        }
        window.filesuploaded = false;
        return true;
    }

    function CuteWebUI_AjaxUploader_OnStop() {
        var hidden = this;
        hidden.internalobject.insertBtn.style.display = ''
    }

    function CuteWebUI_AjaxUploader_OnPostback() {
        var hidden = this;
        hidden.internalobject.insertBtn.style.display = ''

        window.filesuploaded = true;
    }
     
    The important part is that I got rid of the explicit call to the buttonclick event inOnPostback, which somebody else wrote and never made sense. Web logs show a GET and POST operation done after the file is uploaded -- here's the web log, showing the monitor of the short upload, followed by the these:
     
    2010-06-04 20:57:32 POST /admin/ScenarioImport/Upload.aspx UseUploadModule=Dynamic&_Namespace=CuteWebUI&_UploadID=ctl00_BodyPlaceholder_Uploader1Image_1275685058013_1&_UploadControlID=ctl00$BodyPlaceholder$Uploader1&ContextValue=!3wEWAQUbfi9hZG1pbi9TY2VuYXJpb0ltcG9ydC9UZW1wZJa8YwEmcrNLxl8h7tuhy8t5uH0!2&_Addon=upload&_AddonGuid=4b3f2536-5f62-4a37-8b62-dcb094af3c5d&_NoCache=634112566607380438 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 - 200 220 90896
    2010-06-04 20:57:32 POST /admin/ScenarioImport/Upload.aspx UseUploadModule=Dynamic&_Namespace=CuteWebUI&_UploadID=ctl00_BodyPlaceholder_Uploader1Image_1275685058013_1&_UploadControlID=ctl00$BodyPlaceholder$Uploader1&ContextValue=!3wEWAQUbfi9hZG1pbi9TY2VuYXJpb0ltcG9ydC9UZW1wZJa8YwEmcrNLxl8h7tuhy8t5uH0!2&_Addon=upload&_AddonGuid=4b3f2536-5f62-4a37-8b62-dcb094af3c5d&_NoCache=634112566616470958 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 - 200 220 35458
    2010-06-04 20:57:33 POST /admin/ScenarioImport/Upload.aspx UseUploadModule=Dynamic&_Namespace=CuteWebUI&_UploadID=ctl00_BodyPlaceholder_Uploader1Image_1275685058013_1&_UploadControlID=ctl00$BodyPlaceholder$Uploader1&ContextValue=!3wEWAQUbfi9hZG1pbi9TY2VuYXJpb0ltcG9ydC9UZW1wZJa8YwEmcrNLxl8h7tuhy8t5uH0!2&_Addon=verify&_AddonGuid=4b3f2536-5f62-4a37-8b62-dcb094af3c5d 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 425 19555
    2010-06-04 20:57:33 GET /CuteWebUI_Uploader_Resource.axd type=file&file=uploadok.png&_ver=634112602042073726 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 610 690
    2010-06-04 20:57:33 POST /admin/ScenarioImport/Upload.aspx - 76.79.206.115 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 http://viewpoints.rbac.com/admin/ScenarioImport/Upload.aspx 200 288 24330
    Both the GET and POST are in fact received at the code-behind - I put some logging into its Page_Load to indicate when it gets a callback or postback, and it's getting two postbacks.
     
     
  •  06-04-2010, 5:49 PM 61586 in reply to 61569

    Re: upload works on dev server, not on production server [SOLVED]

    The whole problem was caused because the license file wasn't in the BIN.
     
    Normally you'd get an ASP.NET error message about this, but if you'll note the page markup, there's an UpdatePanel wrapped around the upload control. This makes it so the asp.net error isn't actually rendered. I got suspicious, removed the panel, and then saw the error.
     
    I THINK however you should check the license file BEFORE the postback, if possible, such as in the HTML module. To wait until an upload is complete isn't too good. Could actually even check it when rendering the control - then I'd not have wasted 2 days on this nonsense.
     
    My development system has its license file in the bin directory, so when I published the website, I assumed it was moving it... ... wrong. It doesn't move those.
View as RSS news feed in XML