Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public String salvar() throws IOException{
- try {
- /*processar imagem*/
- /*esse método salva a imagem original*/
- byte[] imagemByte = null;
- if (arquivoFoto != null) {
- imagemByte = getByte(arquivoFoto.getInputStream());
- }
- if (imagemByte != null && imagemByte.length > 0) {
- produto.setFotoIconBase64Original(imagemByte);
- /*transformar em um bufferimage*/
- BufferedImage bufferedImage = ImageIO.read(new ByteArrayInputStream(imagemByte));
- /*pega o tipo da imagem*/
- int type = bufferedImage.getType() == 0? BufferedImage.TYPE_INT_ARGB : bufferedImage.getType();
- int largura = 200;
- int altura = 200;
- /*criando a miniatura*/
- BufferedImage resizedImage = new BufferedImage(largura, altura, type);
- Graphics2D graphics2d = resizedImage.createGraphics();
- graphics2d.drawImage(bufferedImage, 0, 0, largura, altura, null);
- graphics2d.dispose();
- /*escrever novamente a imagem em tamanho menor*/
- ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();
- String extensao = arquivoFoto.getContentType().split("\\/")[1];//retorna a extensao
- ImageIO.write(resizedImage, extensao, arrayOutputStream);
- String miniImagem =
- "data:" + arquivoFoto.getContentType() + ";base64," + DatatypeConverter.printBase64Binary(arrayOutputStream.toByteArray());
- /*fim do processamento de imagem*/
- produto.setFotoIconBase64(miniImagem);
- produto.setExtensao(extensao);
- }
- produto = daoGeneric.merge(produto);
- if (produto != null) {
- this.carregarListaProdutos();
- this.novo();
- Messages.addGlobalInfo("Registro salvo com sucesso!");
- } else {
- Messages.addGlobalInfo("Não foi possível salvar o registro!");
- }
- } catch (Exception e) {
- e.printStackTrace();
- Messages.addFlashGlobalError("Ocorreu um erro ao tentar salvar um novo registro!");
- }
- return "";
- }
Add Comment
Please, Sign In to add comment