[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Pegar raiz do WebContent pra upload de arquivos  XML
Forum Index -> Comentários Gerais
Author Message
andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

To fazendo upload de arquivo... pra começar to tentando criar uma pasta através do seguinte na action:

Code:
	public String upload(){
 		//FileItem item = ( FileItem ) input.getValue( "theFile" );
 		File directory = new File( "/teste" );
 		directory.mkdir();
 		//output.setValue( "size" , String.valueOf( "" ) );
 		return SUCCESS;
 	}


Só que ele cria na raiz do meu c:\, como faria pra pegar a raiz do meu WebContent? To usando o FileUploadFilter...

vlw
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

ApplicationManager.getRealPath();

vai te retornar:

c:\program files\tomcat\webapps\myapplication

Sergio Oliveira

andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

saoj wrote:
ApplicationManager.getRealPath();

vai te retornar:

c:\program files\tomcat\webapps\myapplication
 


muuuuuito bom!
andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

O input.getValue( "theFile" ), por exemplo, retorna um RequestContext? Pra eu poder usar o FileUpload.isMultipartContent( RequestContext rC );...
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Retorna FileItem !

Sergio Oliveira

andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

Como pego o HttpServletRequest da minha aplicação?

vlew
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Pra que ?

Sergio Oliveira

andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

No exemplo que vem junto com o Menta ele faz o seguinte:

Code:
 FileItem item = (FileItem) input.getValue("theFile");
 output.setValue("fileSize", String.valueOf(item.getSize()));

pelo que entendi ele só passa o size (tamanho) do arquivo para um output... mas como faço pra salvar em algum lugar qquer do meu servidor?

vlw
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Putz. Aí tu tem que olhar a documentação do commons file upload.

O Mentawai só integra. Ele não implementa isso. Quem implementa é o commons file upload que é simples de usar.

Olha a documentação dele lá...

Sergio Oliveira

andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

certo, uma implementação simples:

Code:
   boolean isMultipart = FileUpload.isMultipartContent(request);
    if (isMultipart) {
       // Create a new file upload handler
       DiskFileUpload upload = new DiskFileUpload();
       
       // Set upload parameters
       upload.setSizeMax(50*1024*1024); //50Mb
       upload.setRepositoryPath("c:/temp");
       
       // Parse the request
       List items = upload.parseRequest(request);
       
       Iterator it = items.iterator();
       while (it.hasNext()) {
          FileItem fitem = (FileItem) it.next();
          if (!fitem.isFormField()) {
 %><%= fitem.getName() %> - <%= fitem.getSize() %> bytes
 <%
          }
       }
    }


Nessa linha:

Code:
boolean isMultipart = FileUpload.isMultipartContent(request);


Ele pede o request que é um HttpServletRequest... como consigo isso na minha action?

vlw
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Dá uma olhada no código fonte do FileUploadFilter. Vc tem ele aí ?

É isso que ele faz e te entrega um FileItem prontinho.

Vc não precisa fazer nada disso.

De posse do FileItem, que é do commons, vc faz o que quiser.


Sergio Oliveira

andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

saoj wrote:
É isso que ele faz e te entrega um FileItem prontinho.

Vc não precisa fazer nada disso. 

Oloko, é verdade... não tinha visto o fonte.
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Pra isso que existe o filtro e o mentawai, para que vc não fique se estressando com esses detalhes chatos de outros frameworks.

Sergio Oliveira

andre_guitar7


[Avatar]

Joined: 21/03/2006 12:03:21
Messages: 259
Location: Curitiba - PR
Offline

 
Forum Index -> Comentários Gerais
Go to:   
Powered by JForum 2.1.6 © JForum Team