Problemas com Uploadify + Struts2

5 respostas
P

Olá amigos,
sou novo aqui no GUJ, e tambem começei no java não tem mto tempo…
estou tendo o seguinte problema:

Estou usando o struts 2 e o plugin jquery uploadify para fazer upload de arquivos para meu servidor…

Coloquei la tudo certinho no form, o uploadify chama a action normalmente, mas o objeto “file” está chegando na action como null

se eu usar um botão com um link para a action que faz upload ele funciona normalmente, porem qnd deixo isso a cargo do uploadify o objeto chega null na minha action.
alguem sabe me dizer onde estou errando??

segue abaixo os códigos

Minha JSP

<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>Upload</title>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="uploadify/jquery.uploadify.v2.1.4.min.js"></script>
<script type="text/javascript" src="uploadify/swfobject.js"></script>


<script type="text/javascript">
$(function() {	
	$('#custom_file_upload').uploadify({
	  'uploader'       : 'uploadify/uploadify.swf',
	  'script'         : 'upload',
	  'cancelImg'      : 'uploadify/cancel.png',
	  'folder'         : 'uploads',
	  'multi'          : true,
	  'auto'           : true,
	  'fileExt'        : '*.jpg;*.gif;*.png',
	  'fileDesc'       : 'Image Files (.JPG, .GIF, .PNG)',
	  'queueID'        : 'custom-queue',
	  'queueSizeLimit' : 3,
	  'simUploadLimit' : 2,
	  'removeCompleted': true,
	  'onSelectOnce'   : function(event,data) {
		  $('#status-message').text(data.filesSelected + ' arquivos serão adicionados');
	  },
	  'onAllComplete'  : function(event,data) {
		  
		  
	  },
	  'onComplete'  : function(event, ID, fileObj, response, data) {

	  }
		
	});	

});
</script>

</head>

<body>

<s:form action="upload" method="POST" enctype="multipart/form-data">

<div id="boxUpload">
    <div id="status-message">Selecione as fotos para adicionar:</div>
    <div id="custom-queue"></div>
    <input id="custom_file_upload" type="file" name="foto" />

</div>
</s:form>
</body>
</html>

minha action

public class UploadAction extends ActionSupport implements Preparable{

	private File foto;
	private String fotoContentType;
	private String fotoFileName;
	
	

	
	
	
	@Action(value="upload", results = {
			@Result(name="ok",location="formLivro.jsp"),
			@Result(name="input",location="formLivro.jsp")
	})
	public String upload(){
		
		try {

			File theFile = new File(fullFileName);

			FileUtils.copyFile(foto, theFile);
			
			} catch (Exception e) {

			addActionError(e.getMessage());
			System.out.println("Erro: " + e.getMessage());

			}
		
		return "ok";
	}
	@Action(value="formUpload",results={
			@Result(name="ok",location="formUp.jsp")})
	public String formUpload(){
		
		
		return "ok";
	}



	public File getFoto() {
		return foto;
	}

	public void setFoto(File foto) {
		this.foto = foto;
	}

	public String getFotoContentType() {
		return fotoContentType;
	}

	public void setFotoContentType(String fotoContentType) {
		this.fotoContentType = fotoContentType;
	}

	public String getFotoFileName() {
		return fotoFileName;
	}

	public void setFotoFileName(String fotoFileName) {
		this.fotoFileName = fotoFileName;
	}

}

5 Respostas

drsmachado

E sem o jQuery, você consegue enviar o arquivo ou nem tentou?

P

Opa, obrigado pela resposta

sem jquery eu consegui e funciona perfeitamente.

drsmachado

papaleguasinsano:
Opa, obrigado pela resposta

sem jquery eu consegui e funciona perfeitamente.


Isso significa que o problema náo esta no struts, mas no jquery.
Reveja as configurações dele

P

drsmachado:
papaleguasinsano:
Opa, obrigado pela resposta

sem jquery eu consegui e funciona perfeitamente.


Isso significa que o problema náo esta no struts, mas no jquery.
Reveja as configurações dele

De quais configurações você está falando, pode até ser uma pergunta idiota, mas como disse, estou iniciando nesse meio e não tenho mto conhecimento.

P

Alguem tem idéia?

Criado 4 de março de 2012
Ultima resposta 6 de mar. de 2012
Respostas 5
Participantes 2