Gostaria de saber onde configuro para aumentar o tamanho do arquivo para upload. Hoje o tamanho máximo é de 2MB.
Li toda documentação e a unica coisa que achei, que pode ser configurada, mas não falam onde.
“Note: The upload file size is automatically limited to 2.000.000 bytes by VRaptor (and will be configurable in the feature).”
[quote=RogerGales]A mensagem está dizendo que o tamanho é fixo e que em versões futuras se terá a opção de customizar o tamanho. É assim que eu a entendo.
[/quote]
OK. E tem uma versão futura, que faça isso? Sem ser a versão 3?
Não tem como alterar este parâmetro?
Sim. Já estou com o sistema todo completo e só preciso mudar o caso de uso para fazer upload de arquivos acima de 2mb.
Será que não tem uma solução para este problema? Quem poderia me falar sobre este vraptor.xml?
Valeu
[quote=Lucas Cavalcanti]não tenho certeza, mas tem algo a ver com o vraptor.xml…
algum motivo especial pra não usar o VRaptor 3?[/quote]
O problema é que esse limite esta fixo na classe MultipartRequestInterceptor, o valor é setado no construtor da classe.
Voce pode tentar criar uma nova classe com a mesma logica e use uma outra forma de setar esse limite, apos isso declare essa classe no seu logic (ela é um interceptor).
detalhe: não sei se o upload irá funcionar, pois não conheco a fundo como framework trata essa questao do upload.
Observação… Configuration.getInstance(), no meu projeto retorna uma instancia singleton do objeto Configuuration … esse objeto lê suas propriedades de um .properties
no meu properties esta definido o size limit, que então passo para a instnacia do interceptor…
se você quizer, você pode alterar direto o valor, mas ai neste caso, sempre que precisar aumentar o valor, vai ter que recompilar, é por isso que prefiro um .properties.
a outra modificação que você terá que fazer é trocar
@InterceptBy(MultipartRequestInterceptor.class)
por @InterceptBy(SizableMultipartRequestInterceptor.class)
“Note: The upload file size is automatically limited to 2.000.000 bytes by VRaptor (and will be configurable in the feature).”
[quote=RogerGales]A mensagem está dizendo que o tamanho é fixo e que em versões futuras se terá a opção de customizar o tamanho. É assim que eu a entendo.
[/quote]
só uma coisa: feature, nada tem a ver com futuro (future) !
Observação… Configuration.getInstance(), no meu projeto retorna uma instancia singleton do objeto Configuuration … esse objeto lê suas propriedades de um .properties
no meu properties esta definido o size limit, que então passo para a instnacia do interceptor…
se você quizer, você pode alterar direto o valor, mas ai neste caso, sempre que precisar aumentar o valor, vai ter que recompilar, é por isso que prefiro um .properties.
a outra modificação que você terá que fazer é trocar
@InterceptBy(MultipartRequestInterceptor.class)
por @InterceptBy(SizableMultipartRequestInterceptor.class)[/quote]
Essa é a implementação da idéia que comentei no post anterior =D
Obrigado pela ajuda. Estou ficando louco com isso, pois está atrasando a entrega do projeto.
Fiz a opção de criar a classe SizableMultipartRequestInterceptor. Mas ela está dando pau na compilação.
Será que tem outra versão mais nova do vraptor, que resolva os problemas? Estou usando a 2.6.0
Os erros de compilação da classe SizableMultipartRequestInterceptor, são:
O método ‘public MultipartRequestInterceptor()’ declaração invalida, não retorna nada. Acredito que seja void.
Não pode acessar temporaryDirectory e sizeLimit. Acredito que eles não podem ser final.
Não é possível encontrar o método: Configuration.getInstance()
E se eu quiser alterar o valor diretamente, teria que ter o código fonte do vraptor, certo? Onde conseguiria ou teria que pedir para alguém gerar?
Se for possível, já coloca 64MB.
Observação… Configuration.getInstance(), no meu projeto retorna uma instancia singleton do objeto Configuuration … esse objeto lê suas propriedades de um .properties
no meu properties esta definido o size limit, que então passo para a instnacia do interceptor…
se você quizer, você pode alterar direto o valor, mas ai neste caso, sempre que precisar aumentar o valor, vai ter que recompilar, é por isso que prefiro um .properties.
a outra modificação que você terá que fazer é trocar
@InterceptBy(MultipartRequestInterceptor.class)
por @InterceptBy(SizableMultipartRequestInterceptor.class)[/quote]
Pensei nisso, mas o projeto é grande, com 1 ano de desenvolvimento. Foi entregue e só deu problema nesta questão de upload.
Não seria viável e nem poderia gastar mais homens/horas para esta migração.