Fórum

file Uploading in liferay using ajax

Mohammed Arif, modificado 11 Anos atrás.

file Uploading in liferay using ajax

New Member Postagens: 2 Data de Entrada: 06/03/13 Postagens Recentes
view.jsp

<%@ taglib uri="http://liferay.com/tld/aui" prefix="aui"%>
<%@ taglib uri="http://liferay.com/tld/portlet" prefix="liferay-portlet"%>
<%@ taglib uri="http://liferay.com/tld/security"
prefix="liferay-security"%>
<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme"%>
<%@ taglib uri="http://liferay.com/tld/ui" prefix="liferay-ui"%>
<%@ taglib uri="http://liferay.com/tld/util" prefix="liferay-util"%>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet"%>

<portlet:defineObjects />

<h2>Uploading Portlet</h2>

<aui:input name="jsonText" type="file" onChange="getData();" />
<aui:input name="jsonText1" type="text" />
<portlet:resourceURL var="url">
<portlet:param name="doaction" value="getascii" />
</portlet:resourceURL>

<script type="text/javascript">
function getData() {
AUI().use('node','aui-io', function(emoticon {

contentType:'multipart/form-data';
var url = '<%=url%>';

alert(url);
B.io.request(url, {
data : {
ABCD : B.one("#<portlet:namespace />jsonText").val()
},
dataType : 'json',

on : {
failure : function() {
alert("Fail");
},

success : function(event, id, obj) {
var instance = this;
var message = instance.get('responseData');
alert(message + "Temp");
B.one("#<portlet:namespace />jsonText1").val(message);
},

}
});

});
}
</script>

UploadPortlet.java

package com.company.demo.portlet;

import com.liferay.portal.kernel.upload.UploadPortletRequest;
import com.liferay.portal.kernel.util.File;
import com.liferay.portal.kernel.util.FileUtil;
import com.liferay.portal.kernel.util.ParamUtil;
import com.liferay.portal.util.PortalUtil;
import com.liferay.util.bridges.mvc.MVCPortlet;

import java.io.IOException;

import javax.portlet.PortletContext;
import javax.portlet.PortletException;
import javax.portlet.ResourceRequest;
import javax.portlet.ResourceResponse;

public class UploadPortlet extends MVCPortlet {
public void serveResource(ResourceRequest resourceRequest,
ResourceResponse resourceResponse) throws PortletException,
IOException {

System.out.println("Hello Enter");
PortletContext portletContext = resourceRequest.getPortletSession()
.getPortletContext();

byte[] bytes = null;
try {
UploadPortletRequest uploadRequest = PortalUtil
.getUploadPortletRequest(resourceRequest);
String sourceFileName = uploadRequest.getFileName("ABCD");
System.out.println("fileNme - " + sourceFileName);
String f = ParamUtil.getString(uploadRequest, "ABCD");
File file = (File) uploadRequest.getFile("ABCD");
String str = ParamUtil.getString(uploadRequest, "hi");
byte[] b = FileUtil.getBytes((java.io.File) file);
System.out.println("length of file -" + b);

try {
bytes = FileUtil.getBytes((java.io.File) file);
DLFileEntryServiceUtil.addFileEntry(sourceFileName, bytes);
} catch (IOException e2) {
e2.printStackTrace();
}
} catch (Exception e1) {
System.out.println("Error Reading The File.");
e1.printStackTrace();

}

}
}

I'm very new in liferay and i want to upload the file via ajax in liferay. By using the above mentioned code, I'm unable to upload the file please help.
It's showing source file name - null
HELP!
Mohammed Arif, modificado 11 Anos atrás.

RE: file Uploading in liferay using ajax

New Member Postagens: 2 Data de Entrada: 06/03/13 Postagens Recentes
Mohammed Arif:
view.jsp

<%@ taglib uri="http://liferay.com/tld/aui" prefix="aui"%>
<%@ taglib uri="http://liferay.com/tld/portlet" prefix="liferay-portlet"%>
<%@ taglib uri="http://liferay.com/tld/security"
prefix="liferay-security"%>
<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme"%>
<%@ taglib uri="http://liferay.com/tld/ui" prefix="liferay-ui"%>
<%@ taglib uri="http://liferay.com/tld/util" prefix="liferay-util"%>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet"%>

<portlet:defineObjects />

<h2>Uploading Portlet</h2>

<aui:input name="jsonText" type="file" onChange="getData();" />
<aui:input name="jsonText1" type="text" />
<portlet:resourceURL var="url">
<portlet:param name="doaction" value="getascii" />
</portlet:resourceURL>

<script type="text/javascript">
function getData() {
AUI().use('node','aui-io', function(emoticon {

contentType:'multipart/form-data';
var url = '<%=url%>';

alert(url);
B.io.request(url, {
data : {
ABCD : B.one("#<portlet:namespace />jsonText").val()
},
dataType : 'json',

on : {
failure : function() {
alert("Fail");
},

success : function(event, id, obj) {
var instance = this;
var message = instance.get('responseData');
alert(message + "Temp");
B.one("#<portlet:namespace />jsonText1").val(message);
},

}
});

});
}
</script>

UploadPortlet.java

package com.company.demo.portlet;

import com.liferay.portal.kernel.upload.UploadPortletRequest;
import com.liferay.portal.kernel.util.File;
import com.liferay.portal.kernel.util.FileUtil;
import com.liferay.portal.kernel.util.ParamUtil;
import com.liferay.portal.util.PortalUtil;
import com.liferay.util.bridges.mvc.MVCPortlet;

import java.io.IOException;

import javax.portlet.PortletContext;
import javax.portlet.PortletException;
import javax.portlet.ResourceRequest;
import javax.portlet.ResourceResponse;

public class UploadPortlet extends MVCPortlet {
public void serveResource(ResourceRequest resourceRequest,
ResourceResponse resourceResponse) throws PortletException,
IOException {

System.out.println("Hello Enter");
PortletContext portletContext = resourceRequest.getPortletSession()
.getPortletContext();

byte[] bytes = null;
try {
UploadPortletRequest uploadRequest = PortalUtil
.getUploadPortletRequest(resourceRequest);
String sourceFileName = uploadRequest.getFileName("ABCD");
System.out.println("fileNme - " + sourceFileName);
String f = ParamUtil.getString(uploadRequest, "ABCD");
File file = (File) uploadRequest.getFile("ABCD");
String str = ParamUtil.getString(uploadRequest, "hi");
byte[] b = FileUtil.getBytes((java.io.File) file);
System.out.println("length of file -" + b);

try {
bytes = FileUtil.getBytes((java.io.File) file);
DLFileEntryServiceUtil.addFileEntry(sourceFileName, bytes);
} catch (IOException e2) {
e2.printStackTrace();
}
} catch (Exception e1) {
System.out.println("Error Reading The File.");
e1.printStackTrace();

}

}
}

I'm very new in liferay and i want to upload the file via ajax in liferay. By using the above mentioned code, I'm unable to upload the file please help.
It's showing source file name - null
HELP!


No answer for me.