留言板

File Upload : UploadPortletRequest getFileName returns null

thumbnail
manu vasista,修改在9 年前。

File Upload : UploadPortletRequest getFileName returns null

New Member 发布: 1 加入日期: 14-4-29 最近的帖子
Hi,

In JSP

<portlet:defineObjects /> <portlet:resourceURL var="resourceURL"> </portlet:resourceURL>
<div id="service-element" data-url="<%=resourceURL%>" data-namespace="<portlet:namespace />"></div>
<form id="upload-form" enctype="multipart/form-data" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<input name="file" id="filetobeUploaded" type="file" />
<input type="submit" value="Upload File" />
</form>

In JS
_fileUploader: function(ev){
var serviceNode = Y.Node.one('#service-element');
var uri = serviceNode .getAttribute('data-url');
var namespace = serviceNode .getAttribute('data-namespace');

YUI().use('io-upload-iframe', 'json-parse', function (Y) {

ev.preventDefault();
var cfg={
method: 'POST',
form: {
id: Y.one('#upload-form'),
upload: true
},
data:_createData({
keyAction: "upload_file"
}, namespace),
on: {
complete: function(id, response) {
var file = Y.JSON.parse(response.responseText),
msg = 'Uploaded: ' + file.name + ' (' + file.size + ' bytes)';
console.log(msg);
// Y.one('#uploaded').setHTML(msg);
}
}
};
var request = Y.io(uri, cfg);
});
function _createData(data, namespace){
var alteredData = {};
for (var key in data) {
alteredData[namespace + key] = data[key];
}
//console.log(alteredData);
return alteredData;
};
}
In Controller
public void serveResource(ResourceRequest req, ResourceResponse rsp)throws IOException, PortletException {

try{
UploadPortletRequest uploadrequest = PortalUtil.getUploadPortletRequest(req);
String sourceFileName = uploadrequest.getFileName("filetobeUploaded");
log.info("Source FileName: "+sourceFileName);
}


Source File NULL
Am i doing anything wrong ?