Java heap space

0 respostas
gabrielmelo

Pessoal,

Estou tentando fazer upload de arquivos até 50Mb, e estou recebendo essa exception:
SEVERE: Servlet.service() for servlet [appServlet] in context with path [/boas-praticas-gui-webapp] threw exception [Handler processing failed; nested exception is java.lang.OutOfMemoryError: Java heap space] with root cause
java.lang.OutOfMemoryError: Java heap space
Estou usando Spring mvc 3.0. Já adicionei no pom as dependêcias, commons-fileupload 1.2.1 e o commons-io 1.4. Já adicionei no servlet-context.xml
<!-- Only needed because we require fileupload in the org.springframework.samples.mvc.fileupload package -->
	<beans:bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
		<!-- one of the properties available; the maximum file size in bytes; -->
 		<beans:property name="maxInMemorySize" value="51200"/>
 		<beans:property name="maxUploadSize" value="51200000"/>
	</beans:bean>
Já aumentei a memoria do eclipse para -Xms512m -Xmx2048m. E nada de conseguir fazer o upload. Alguém já viveu algo parecido que poderia me dar uma luz ? Minha jsp
<form:form action="${pageContext.request.contextPath}/boaPratica-form/updateBoaPratica" modelAttribute="boaPraticaFormBean" method="POST" name="boaPratica_form" id="boaPratica_form"  enctype="multipart/form-data">
<div style="width: 600px; float: left;">	
	<form:input type="file" path="arquivo" style="width: 590px;" size="64"/>									
</div>
<div style="width: 70px; float: left; margin-top: 24px;">
	<input type="submit" name="btnInserir" id="btnInserir" value="+" onclick="addArqGrafico();">
</div>
<div style="width: 725px; float: left; margin-top: 10px;" id="divListaAddArquivoGrafico">	
</div>
<script type="text/javascript">
	function addArqGrafico(){
		$("#boaPratica_form").attr({'action': $("#contextPath").val() + '/boaPratica-form/incluirArquivoGrafico'});
		$("#boaPratica_form").ajaxForm({
			success: function(data) {
			 	$("#divListaAddArquivoGrafico").html(data);
			} 
		});		
	}
</script>
</form:form>
Meu formBean
package br.gov.pgfn.boaspraticas.web.fom.bean;

@RooJavaBean
public class BoaPraticaFormBean extends AbstractBean {
	
	private static final long serialVersionUID = -8818583589541581302L;
	
	@Valid
	private BoasPraticas boaPratica;
	
	private CommonsMultipartFile arquivo;
	
	private String error;

// get e set
	

}
e finalmente o controller
@RequestMapping(value="/incluirArquivoGrafico", method=RequestMethod.POST)
	public String incluirArquivoGrafico(BoaPraticaFormBean boaPraticaFormBean, BindingResult result, Model model) {
		Arquivo arquivo = new Arquivo();
		arquivo.setArquivo(boaPraticaFormBean.getArquivo().getBytes());
		arquivo.setNomeArquivo(boaPraticaFormBean.getArquivo().getOriginalFilename());
		
		BoasPraticas boasPraticas = boasPraticasDelegate.findById(boaPraticaFormBean.getBoaPratica().getId());		
		arquivo.setArquivoGraficoBoaPratica(boasPraticas);
		
		ArquivoDTO dto = new ArquivoDTO();
		dto.setSaveOrUpdate(arquivo);		
		
		try {
			arquivoDelegate.delegate(dto);
		} catch (DelegateException e) {
			e.printStackTrace();
		}
		
		model.addAttribute("arquivosGrafico", arquivoDelegate.findArquivosGraficoByIdBoaPratica(boaPraticaFormBean.getBoaPratica().getId()));
		
		return "logged/listaArquivo";
	}

Dá pau no controller quando eu seto o atributo arquivo.setArquivo(boaPraticaFormBean.getArquivo().getBytes());

Valeu
[]'s

Criado 9 de novembro de 2011
Respostas 0
Participantes 1