如何使用Liferay从URL上传个人资料图片?

时间:2015-10-23 13:49:59

标签: liferay liferay-6 image-uploading portlet

我尝试过类似的东西,但我很确定这是一种错误的方式。

BufferedImage bufferedImage = ImageIO.read(new URL(pictureUrl));
long portraitId = CounterLocalServiceUtil.increment(Image.class.getName());
Image portraitImage = ImageLocalServiceUtil.createImage(portraitId);
DataBufferByte data   = (DataBufferByte) bufferedImage.getRaster().getDataBuffer();
portraitImage.setTextObj(data.getData());
Image image = ImageLocalServiceUtil.addImage(portraitImage);

有些人告诉我,我应该使用Document和media portlet,但它是在后端使用的吗?

1 个答案:

答案 0 :(得分:0)

我找到了答案,它对我来说非常有用:

BufferedImage bufferedImage = ImageIO.read(new URL(pictureUrl));
ByteArrayOutputStream os = new ByteArrayOutputStream();
ImageIO.write(bufferedImage, "jpg", os);
InputStream is = new ByteArrayInputStream(os.toByteArray());
byte[] bytes = FileUtil.getBytes(is);
UserLocalServiceUtil.updatePortrait(userId, bytes);