| Author |
Message |
|
|
Resolvido!
A quem possa interessar, ficou assim:
JSP:
Code:
<form name="formCadastroPerfilMain" id="formCadastroPerfilMain" action="CriacaoPerfil.definirImagem.mtw" enctype="multipart/form-data" method="post">
Defina uma imagem para o seu perfil
<br/>
<table>
<tr>
<td valign="middle" align="center">
<input type="file" id="imagem" name="imagem" />
</td>
</tr>
<tr>
<td>
<img src="<mtw:contextPath />/CriacaoPerfil.previewImagem.mtw"/>
</td>
</tr>
<tr>
<td valign="middle" align="center">
<input type="submit" value="carregar imagem"/>
</td>
</tr>
</table>
</form>
Actions (eu uso innerActions):
Code:
public class CriacaoPerfil extends BaseLoginAction {
private Avatar avatar;
public String definirImagem () throws IOException {
FileItem objImageFile = (FileItem) input.getValue("imagem");
if(objImageFile != null){
avatar = new Avatar(objImageFile.get());
adhere();
return PREVIEW;
}
return SUCCESS;
}
public String previewImagem () {
output.setValue(StreamConsequence.STREAM_KEY, avatar.getArquivo());
//output.setValue(StreamConsequence.CONTENT_DISPOSITION_KEY, "inline;filename=teste.png");
return PREVIEW;
}
}
ApplicationManager:
Code:
action(CriacaoPerfil.class, "definirImagem")
.on(CriacaoPerfil.PREVIEW, fwd(PathConfig.getPublicPagesPath() + "/" + strPerfilClassName + "/" + PathConfig.getPublicCreationPath() + "/" + PathConfig.getCriacaoPerfilDefinicaoImagemPage()))
.on(SUCCESS, fwd(PathConfig.getPublicPagesPath() + "/" + strPerfilClassName + "/" + PathConfig.getPublicCreationPath() + "/" + PathConfig.getCriacaoPerfilDefinicaoEnderecoPage()))
.filter(new FileUploadFilter());
action(CriacaoPerfil.class, "previewImagem")
.on(CriacaoPerfil.PREVIEW, new StreamConsequence("image/png"));
Resumindo, eu seto em um atributo global os bytes do arquivo (avatar) e através de StickyAction (abençoado Menta...) eu pego esse arquivo na action de preview, que é acionada pela propria tag da imagem (<img src="...")
É isso! Valew pela atenção!
>
|
 |
|
|
ActionConfig ac = new ActionConfig("feeds", FeedModule.class,"getFeed");
right?
|
 |
|
|
Pessoal,
Estou criando um cadastro no qual o usuário escolhe uma foto para o perfil dele, na action, eu crio uma thumbnail dessa imagem e consigo jogar essa thumbnail como um StreamConsequence para uma pré-visualização da imagem reduzida, sem ter que gravar essa imagem miniatura gerada.
Até ai beleza, só que jogando como StreamConsequence, essa imagem aparece a parte. Teria como essa miniatura aparecer na própria página do formulario onde se escolhe a imagem para upload?
Estou tentando com o AjaxAnywhere, mas tá difícil, pois não consigo pegar o arquivo com "FileItem f = (FileItem)input.getValue("file");"
Também não gostaria de abrir popup...
Alguma idéia?
|
 |
|
|
|
... algum progresso nisso, pessoal??
|
 |
|
|
Boa!!!
Vlw Daniel!
|
 |
|
|
request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath();
Funfa legal, mas e na action? Como ficaria?
vlw!
|
 |
|
|
blz, entendi.
vlw galera!
|
 |
|
|
Só uma dúvida...
Solucao 3 - Um filtro.
Como assim? Os filtros se aplicam as JSPs também?
"Solução 2" - É que eu não queria ter que criar actions só pra popular uma combo...
valew IceW0lf !!!
|
 |
|
|
Blz, deu certo agora. Já havia tentado com o loadLists() e SimpleListData e não havia conseguido.
Agora ficou assim e funfa:
ApplicationManager:
Code:
public void loadLists() throws IOException {
ListData objSldEmpresas = EmpresaService.carregarSimpleListEmpresa();
ListManager.addList(objSldEmpresas);
}
O detalhe que faltava era setar o nome na SimpleListData criada:
Code:
public static SimpleListData carregarSimpleListEmpresa(){
SimpleListData objSldEmpresas = new SimpleListData("SessionObjSimpleListEmpresa");
....
return objSldEmpresas;
}
e claro utilizar o nome dado ao SLD no atributo list:
Code:
<mtw:select name="slEmpresa" id="slEmpresa" list="SessionObjSimpleListEmpresa" />
Valew galera!
|
 |
|
|
Pessoal,
Como faço para utilizar um "<mtw:select/>" na primeira página da aplicação (index.jsp) ? Exemplo, tenho que popular com uma SimpleListData de empresas para o usuário selecionar alguma para logar-se com a empresa escolhida. Atualmente carrego a lista de empresas direto na jsp (<% ... %> ). Tem algum jeito, um filtro ou alguma outra coisa, sem ter que fazer uma gambiarra do tipo redirecionar a index.jsp para uma action?
|
 |
|
|
é... tudo bem, já percebi a besteira...
<mtw:out value="${var_qualquer}"/> = FEIO
<mtw:out value="var_qualquer"/> = LINDO
e a importação deve ser em cada página mesmo.
|
 |
|
|
Pessoal, no exemplo sobre Template do Menta não tem nenhuma MentaTag e estou precisando utiliza-las.
Exemplo, em minha página teste (http://forum.mentaframework.org/posts/list/2290.page) preciso dar um <mtw:out value="${var_qualquer}"/>, mas o que chega no html é <mtw:out value="valor_qualquer"/> . Ou seja, não está interpretando as tags do Menta.
O que pode estar errado?
O import:
<%@taglib uri="/WEB-INF/lib/mentawai.jar" prefix="mtw"%>
está no template.jsp, mas também já coloquei nas jsps e nada...
Agradeço a atenção!
|
 |
|
|
Obrigado a todos que me ajudaram muito nisso!
Fiz o seguinte,
Copiei os arquivos e configurações da minha app para o exemplo do Menta. Rodou beleza!!
Então, apaguei o projeto da minha app, criando em seguida uma nova, do mesmo modo de sempre: "new > project > web > dynamic web project".
Copiei toda a configuração e arquivos para esta nova app e adivinha... funcionou!
Com certeza com mais experiência eu não apanharia tanto e já teria tentado isso antes... mas... fazer o quê...
Ainda assim, fica no ar o que pode ter causado esse problema no projeto... algo no setup dele(?)
Muito obrigado mesmo a todos!
Me sinto cada vez mais adepto ao Menta Way Of Life... hehehe!
Abraços!
|
 |
|
|
Valew Ricardo. Conseguimos resolver instalando outra versão de Tomcat, a 6.0.16 (a 6.0.18 não rolou...)
abraço!
|
 |
|
|
Pois é, acho que vai ter que ser assim mesmo...
valew pela ajuda Ice!!!!!! Quando (e se) eu descobrir o que é, posto aqui neste tópico...
abraço!
|
 |
|
|