Bom dia a todos.
Estou fazendo um projeto com integrado co mo Flex
Mas acho q meu problema esta no java
bom a ideia é essa:
Eu procuro um uma imagem, e adciono ela, só que eu queria visualizar a imagem antes de salvar no banco.
No meu caso ele ja esta add direto no bacno qndo eu salvo ao invez de exibir.
public void fazerUploadCranioCaudal(byte[] bytes, String fileName) throws Exception
{
fileName = "c:\\imagens_projeto\\" + fileName;
System.out.println(fileName);
File arquivo = new File(fileName);
FileOutputStream fos = new FileOutputStream(arquivo);
fos.write(bytes);
fos.close();
}
public void fazerUploadMedioLateral(byte[] bytes, String fileName) throws Exception
{
fileName = "c:\\imagens_projeto\\" + fileName;
System.out.println(fileName);
File arquivo = new File(fileName);
FileOutputStream fos = new FileOutputStream(arquivo);
fos.write(bytes);
fos.close();
}
public void fazerUploadCaudalForcada(byte[] bytes, String fileName) throws Exception
{
fileName = "c:\\imagens_projeto\\" + fileName;
System.out.println(fileName);
File arquivo = new File(fileName);
FileOutputStream fos = new FileOutputStream(arquivo);
fos.write(bytes);
fos.close();
}
public void fazerUploadCleavage(byte[] bytes, String fileName) throws Exception
{
fileName = "c:\\imagens_projeto\\" + fileName;
System.out.println(fileName);
File arquivo = new File(fileName);
FileOutputStream fos = new FileOutputStream(arquivo);
fos.write(bytes);
fos.close();
}
public void fazerUploadPerfil(byte[] bytes, String fileName) throws Exception
{
fileName = "c:\\imagens_projeto\\" + fileName;
System.out.println(fileName);
File arquivo = new File(fileName);
FileOutputStream fos = new FileOutputStream(arquivo);
fos.write(bytes);
fos.close();
}
E aqui segue a parte do FLEX que faz o tratamento…EU gostaria de fazer a exibição da imagem antes de salva-la no banco
// ActionScript file
import mx.controls.Alert;
import mx.rpc.AsyncToken;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
private var refUploadFile:FileReference;
/** * @private * Chamado quando o botão de adicionar arquivo for clicado. */
private function adicionarArquivos():void
{
/* Inicializa o FileReference a adicinar os Listeners */
refUploadFile = new FileReference();
refUploadFile.browse();
refUploadFile.addEventListener(Event.SELECT, trateArquivoSelecionado);
refUploadFile.addEventListener(Event.COMPLETE, trateArquivoCompleto);
} /** * @private * Chamado quando o usuário selecionar o arquivo na pop up. */
private function adicionarArquivos2():void
{
/* Inicializa o FileReference a adicinar os Listeners */
refUploadFile = new FileReference();
refUploadFile.browse();
refUploadFile.addEventListener(Event.SELECT, trateArquivoSelecionado2);
refUploadFile.addEventListener(Event.COMPLETE, trateArquivoCompleto2);
} /** * @private * Chamado quando o usuário selecionar o arquivo na pop up. */
private function adicionarArquivos3():void
{
/* Inicializa o FileReference a adicinar os Listeners */
refUploadFile = new FileReference();
refUploadFile.browse();
refUploadFile.addEventListener(Event.SELECT, trateArquivoSelecionado3);
refUploadFile.addEventListener(Event.COMPLETE, trateArquivoCompleto3);
} /** * @private * Chamado quando o usuário selecionar o arquivo na pop up. */
private function adicionarArquivos4():void
{
/* Inicializa o FileReference a adicinar os Listeners */
refUploadFile = new FileReference();
refUploadFile.browse();
refUploadFile.addEventListener(Event.SELECT, trateArquivoSelecionado4);
refUploadFile.addEventListener(Event.COMPLETE, trateArquivoCompleto4);
} /** * @private * Chamado quando o usuário selecionar o arquivo na pop up. */
private function adicionarArquivos5():void
{
/* Inicializa o FileReference a adicinar os Listeners */
refUploadFile = new FileReference();
refUploadFile.browse();
refUploadFile.addEventListener(Event.SELECT, trateArquivoSelecionado5);
refUploadFile.addEventListener(Event.COMPLETE, trateArquivoCompleto5);
} /** * @private * Chamado quando o usuário selecionar o arquivo na pop up. */
private function trateArquivoSelecionado(event:Event):void
{ /* Este metodo LOAD, foi implementado na versao do FP 10,
* é graças a ele que conseguimos recuperar o ByteArray e enviar para o Server */
refUploadFile.load();
}
private function trateArquivoSelecionado2(event:Event):void
{ /* Este metodo LOAD, foi implementado na versao do FP 10,
* é graças a ele que conseguimos recuperar o ByteArray e enviar para o Server */
refUploadFile.load();
}
private function trateArquivoSelecionado3(event:Event):void
{ /* Este metodo LOAD, foi implementado na versao do FP 10,
* é graças a ele que conseguimos recuperar o ByteArray e enviar para o Server */
refUploadFile.load();
}
private function trateArquivoSelecionado4(event:Event):void
{ /* Este metodo LOAD, foi implementado na versao do FP 10,
* é graças a ele que conseguimos recuperar o ByteArray e enviar para o Server */
refUploadFile.load();
}
/** * @private * Chamado quando o usuario selecinar o arquivo na popup.
* */
private function trateArquivoSelecionado5(event:Event):void
{ /* Este metodo LOAD, foi implementado na versao do FP 10,
* é graças a ele que conseguimos recuperar o ByteArray e enviar para o Server */
refUploadFile.load();
}
private function trateArquivoCompleto(event:Event):void
{
/* Pega a referencia do FileReference */
refUploadFile = event.currentTarget as FileReference;
/* Variavel para armazenar o ByteArray */
var data:ByteArray = new ByteArray();
/* readBytes é responsavel por ler logicamente os dados do FileReference
* e repassar o valor do ByteArray do arquivo para a variavel armazenadora 'DATA' */
refUploadFile.data.readBytes(data, 0, refUploadFile.data.length);
Controlador.fazerUploadCranioCaudal(data, refUploadFile.name);
}
private function trateArquivoCompleto2(event:Event):void
{
/* Pega a referencia do FileReference */
refUploadFile = event.currentTarget as FileReference;
/* Variavel para armazenar o ByteArray */
var data:ByteArray = new ByteArray();
/* readBytes é responsavel por ler logicamente os dados do FileReference
* e repassar o valor do ByteArray do arquivo para a variavel armazenadora 'DATA' */
refUploadFile.data.readBytes(data, 0, refUploadFile.data.length);
Controlador.fazerUploadMedioLateral(data, refUploadFile.name);
}
private function trateArquivoCompleto3(event:Event):void
{
/* Pega a referencia do FileReference */
refUploadFile = event.currentTarget as FileReference;
/* Variavel para armazenar o ByteArray */
var data:ByteArray = new ByteArray();
/* readBytes é responsavel por ler logicamente os dados do FileReference
* e repassar o valor do ByteArray do arquivo para a variavel armazenadora 'DATA' */
refUploadFile.data.readBytes(data, 0, refUploadFile.data.length);
Controlador.fazerUploadCaudalForcada(data, refUploadFile.name);
}
private function trateArquivoCompleto4(event:Event):void
{
/* Pega a referencia do FileReference */
refUploadFile = event.currentTarget as FileReference;
/* Variavel para armazenar o ByteArray */
var data:ByteArray = new ByteArray();
/* readBytes é responsavel por ler logicamente os dados do FileReference
* e repassar o valor do ByteArray do arquivo para a variavel armazenadora 'DATA' */
refUploadFile.data.readBytes(data, 0, refUploadFile.data.length);
Controlador.fazerUploadCleavage(data, refUploadFile.name);
}
private function trateArquivoCompleto5(event:Event):void
{
/* Pega a referencia do FileReference */
refUploadFile = event.currentTarget as FileReference;
/* Variavel para armazenar o ByteArray */
var data:ByteArray = new ByteArray();
/* readBytes é responsavel por ler logicamente os dados do FileReference
* e repassar o valor do ByteArray do arquivo para a variavel armazenadora 'DATA' */
refUploadFile.data.readBytes(data, 0, refUploadFile.data.length);
Controlador.fazerUploadPerfil(data, refUploadFile.name);
}
/** * @private * Exibe a mensagem ao usuario informando que o Upload foi realizado com sucesso. */
private function uploadSucesso(event:ResultEvent):void
{
Alert.show("Arquivo salvo no server com sucesso", "Sucesso");
}
/** * @private * Exibe a mensagem de erro do motivo do Upload não ter sido realizado com sucesso. */
private function uploadErro(event:FaultEvent):void
{
Alert.show(event.toString(), 'Erro');
}