Bom dia Pessoa.
Estou fazendo um form para upload, utilizando Extjs e Vraptor, e estou com problemas que ao retornar o json para view, no meu componente Extjs. o browse esta abrindo o Json, em vez de a função ler.
a segunda duvida é:
entende que para o extjs meu json tem que ser
{‘success’:true}
mas como retornar isto pelo vraptor. já que result.use(ExtJSJson.class).from("").success().serialize();, eu necessito ter um from. Será este o problema que leva a primeira duvida?
Segue os codigos:
Js
Ext.create('Ext.form.Panel', {
title: 'Importar de arquivo sped fiscal',
width: 400,
bodyPadding: 10,
frame: true,
renderTo: 'fi-form',
items: [transformed,
{
xtype: 'filefield',
name: 'Filedata',
fieldLabel: 'Arquivo',
labelWidth: 50,
msgTarget: 'side',
allowBlank: false,
anchor: '100%',
buttonText: 'Selecione um arquivo...'
}
],
buttons: [{
text: 'Importar',
handler: function() {
var form = this.up('form').getForm();
if(form.isValid()){
form.submit({
url: '/webdip/upload',
waitMsg: 'Importando seu arquivo...',
success: function(fp, o) {
Ext.Msg.alert('Success', 'Your file has been uploaded.');//Aqui la le.. o browse pede para abrir o Json
}
});
}
}
}]
Controller:
@Path("/upload")
public void uploadArquivo(final UploadedFile Filedata) {
try {
arquivos.salvar(Filedata, this.httpSession.getId());
} catch (IOException e) {
validator.add(new ValidationMessage(
e.getMessage(), ""));
}
result.use(ExtJSJson.class).from("").success().serialize();
}
Obrigado pela Ajuda.