Hi
Here I'm Using upload control in MultiFileuploadControl (UserControl) and then i use UserControl in My Page.When I Click Upload in Main Page,it displays window and then i browse the files ,click upload all ,it displays error code of 302 which i've attached sceenshot earlier post.
Plz resolve this problem.
FileUploadMain.aspx
<form id="form1" runat="server">
<ext:ResourceManager ID="rsrcmngr" runat="server" Theme="Neptune" DirectMethodNamespace="KolmeERP" />
<ext:Viewport ID="vwprtMaster" runat="server" AutoScroll="true" Layout="BorderLayout" IDMode="Explicit"
IsDynamic="False" Namespace="App" RenderXType="True">
<Items>
<ext:FormPanel ID="frmpnlDepartment" runat="server" Region="Center" AutoScroll="true" Border="false" ButtonAlign="Left">
<Items>
<ext:Button ID="btnStage1Files" Text="Upload" runat="server">
<Listeners>
<Click Handler="#{wndFileUpload}.show();" />
</Listeners>
</ext:Button>
</Items>
</ext:FormPanel>
<ext:Window ID="wndFiles" runat="server" Hidden="true" CloseAction="Hide" Width="700"
Closable="true" ButtonAlign="Center" Title="Files" AnimCollapse="true"
Modal="true" AutoHeight="true" Layout="FitLayout" Height="400" AutoScroll="true">
<Content>
<uc:multifileupload id="CRMultiFileUpload" runat="server" />
</Content>
</ext:Window>
</Items>
</ext:Viewport>
MultiFileUpload.ascx
<script>
var loadFailed = function () {
alert("Something went wrong while loading SWFUpload. If this were a real application we'd clean up and then give you an alternative");
};
var statusIconRenderer = function (value) {
switch (value) {
default: return value;
case 'Pending':
return '<img src="' + Ext.net.ResourceMgr.getIconUrl("Hourglass") + '" width=16 height=16>';
case 'Sending':
return '<div src="x-loading-indicator" width=16 height=16>';
case 'Error':
return '<img src="' + Ext.net.ResourceMgr.getIconUrl("Decline") + '" width=16 height=16>';
case 'Cancelled':
case 'Aborted':
return '<img src="' + Ext.net.ResourceMgr.getIconUrl("Decline") + '" width=16 height=16>';
case 'Uploaded':
return '<img src="' + Ext.net.ResourceMgr.getIconUrl("Tick") + '" width=16 height=16>';
}
};
var updateRecord = function (id, field, value) {
var rec = App.CRMultiFileUpload_UploadGrid.store.getById(id);
rec.set(field, value);
rec.commit();
};
var abortUpload = function (btn) {
var selModel = btn.up('grid').getSelectionModel(),
records;
if (!selModel.hasSelection()) {
Ext.Msg.alert('Error', 'Please select an upload to cancel');
return true;
}
records = selModel.getSelection();
App.CRMultiFileUpload_MultiUpload1.abortUpload(records[0].getId());
};
var removeUpload = function (btn) {
var selModel = btn.up('grid').getSelectionModel(),
records;
if (!selModel.hasSelection()) {
Ext.Msg.alert('Error', 'Please select an upload to remove');
return true;
}
records = selModel.getSelection();
App.CRMultiFileUpload_MultiUpload1.removeUpload(records[0].getId());
};
var fileSelected = function (item, file) {
if (file.name == 'image.jpg') {
Ext.Msg.alert('Error', 'You cannot upload the file named "image.jpg"');
return false;
}
this.up('grid').store.add({
id: file.id,
name: file.name,
size: file.size,
status: 'Pending',
progress: 0
});
};
var uploadError = function (item, file, errorCode, message) {
updateRecord(file.id, 'progress', 0);
updateRecord(file.id, 'status', 'Error');
switch (errorCode) {
case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:
alert("Error Code: HTTP Error, File name: " + file.name + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:
alert("Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.IO_ERROR:
alert("Error Code: IO Error, File name: " + file.name + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:
alert("Error Code: Security Error, File name: " + file.name + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
alert("Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:
alert("Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:
updateRecord(file.id, 'status', 'Cancelled');
break;
case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:
updateRecord(file.id, 'status', 'Stopped');
break;
default:
updateRecord(file.id, 'status', "Unhandled Error: " + errorCode);
alert("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
}
};
var fileSelectionError = function (item, file, errorCode, message) {
if (errorCode === SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED) {
alert("You have attempted to queue too many files.\n" + (message === 0 ? "You have reached the upload limit." : "You may select " + (message > 1 ? "up to " + message + " files." : "one file.")));
return;
}
switch (errorCode) {
case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:
alert("Error Code: File too big, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:
alert("Error Code: Zero byte file, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:
alert("Error Code: Invalid File Type, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
default:
alert("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
}
};
</script>
<ext:GridPanel ID="UploadGrid" runat="server" Width="520" Height="300" Frame="true">
<Store>
<ext:Store ID="Store1" runat="server">
<Model>
<ext:Model ID="Model1" runat="server" IDProperty="id">
<Fields>
<ext:ModelField Name="id" />
<ext:ModelField Name="name" />
<ext:ModelField Name="size" />
<ext:ModelField Name="status" />
<ext:ModelField Name="progress" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<ColumnModel>
<Columns>
<ext:Column ID="Column1" runat="server" Text="File Name" DataIndex="name" Width="150" />
<ext:Column ID="Column2" runat="server" Text="Size" DataIndex="size" Width="60">
<Renderer Format="FileSize" />
</ext:Column>
<ext:Column ID="Column3" runat="server" Text=" " DataIndex="status" Width="30">
<Renderer Fn="statusIconRenderer" />
</ext:Column>
<ext:Column ID="Column4" runat="server" Text="Status" DataIndex="status" Width="60" />
<ext:ProgressBarColumn ID="ProgressBarColumn1" runat="server" Text="Progress" DataIndex="progress" />
</Columns>
</ColumnModel>
<SelectionModel>
<ext:RowSelectionModel runat="server" ID="rowSelection">
<Listeners>
<Select Handler="#{hdnfile}.setValue(record.data.name);"></Select>
</Listeners>
</ext:RowSelectionModel>
</SelectionModel>
<TopBar>
<ext:Toolbar ID="Toolbar1" runat="server">
<Items>
<ext:MultiUpload ID="MultiUpload1" runat="server" OnFileUpload="MultiUpload1_FileUpload"
FileDropAnywhere="true" FileSizeLimit="15 MB" FileTypes="*.*" FileTypesDescription="All Files"
FileUploadLimit="100" FileQueueLimit="0">
<Listeners>
<SwfUploadLoadFailed Fn="loadFailed" />
<FileSelected Fn="fileSelected" />
<UploadError Fn="uploadError" />
<FileSelectionError Fn="fileSelectionError" />
</Listeners>
</ext:MultiUpload>
<ext:ToolbarSeparator />
<ext:Button ID="Button1" runat="server" Text="Start Upload" Icon="Tick" Handler="#{MultiUpload1}.startUpload();" />
</Items>
</ext:Toolbar>
</TopBar>
</ext:GridPanel>
<ext:Hidden ID="hdnfile" runat="server" />