Author |
Message |
|
Cara, não faz muito sentido não. inclusive se voce atualizou o seu mentawai.jar
esse método ai mudou de nome, agora é prepareValidator.
Muito estranho...
|
 |
|
1. eu costumo retornar um Map com chaves , e uma das chaves é o resultado.
Ex: quero retornar "Ajax with Mentawai"
Code:
Map map = new HashMap();
map.put("result", "OK");
map.put("data", "Ajax with Mentawai");
ajax(map);
Acho que deu para pegar.
2. Existe um filtro chamado AjaxValidationFilter que captura essas mensagens.
Sua idéia é interessante, se entendi seria pegar todos o outputs, serializar para JSON por exemplo e poder pegá-los via javascript?
|
 |
|
pegar o form onde o botão esta é fácil.
Teria que substituir document.forms[0].action para this.form.action
|
 |
|
Não cheguei a utilizar o IE8 não, mas tenho vários problemas com ele aqui, ele é muito lento pra trabalhar com js.
|
 |
|
Pessoal, estou com uma situação aqui muito complicada.
O HibernateFilter compartilha uma session do hibernate para quem precisar
em um mesmo request certo?
Porem quando vou utilizar o spring, ele gera uma session para cada, ai vem a direfença.
estou apanhando aqui porque eu dava beginTransaction em um repositorio,
salvava um pancada de coisas e dava commit em outro e tals, funcionava porque
na verdade era a mesma session.
Até ai tudo bem, posso reajustar aqui, o problema é que não tinha o hábito de
fechar a session do hibernate por que o HibernateFilter fazia isso pra mim.
ai fica um bando de session aberta e acaba com o pool.
E agora, tem como usar HibernateFilter + Spring?
Estou estudando um solução aqui mais tá complicado..
Se alguem tiver uma dica.
|
 |
|
é pq no menta tem o injectionfilter, pensei que ele injetava lá, mas parece que
não, pq criei o setter e funcionou certinho...
|
 |
|
Sou obrigado o criar um setSessionSim e um setSession?
|
 |
|
Olá, hoje precisei configurar dois bancos de dados no meu sistema e comecei
refactorando o nome da propriedade nas implementações de meus Daos,
antes era apenas session agora é sessionSim, fiz tudo certim, teoricamente
teria que funcionar mas não funcionou. olhem o app manager.
Code:
HibernateFilter hibernateFilterSim = new HibernateFilter(sessionFactorySim);
hibernateFilterSim.setKey("sessionSimHibernate");
filter( hibernateFilterSim );
filter(new IoCFilter());
filter(new AutoWiringFilter(true));
filter(new InjectionFilter());
di("sessionSim", Session.class, "sessionSimHibernate");
// di("session", Session.class, "sessionSimHibernate");
some Dao.
Code:
protected Session sessionSim = null;
public boolean isIpAllowed(String ip) {
Criteria crit = sessionSim.createCriteria(Ip.class, "ip");
crit.add( Restrictions.or(
Restrictions.eq("ip.ip", "*"), // Ou asterisco que significa todos
Restrictions.sqlRestriction("? like this_.ip || '%'", ip, Hibernate.STRING)) // Ou esteja no range
);
return !crit.list().isEmpty();
}
Quando o nome da propriedade era session funcionava normalmente, foi
só refactorar para sessionSim e não funcionou mais! muito estranho.
O mais estranho ainda é que se eu descomentar a outra linha no app manager
ele começa a injetar normalmente na propriedade sessionSim.
Alguem saberia me explicar o porque?
|
 |
|
existem proxies que exigem algum parametros, talvez seja isso.
tenta passar algum parametro mesmo que inutil para ver se é isso.
Code:
function getProductRules() {
var r = new mtw.request();
r.setUrl("DefineProductRulesAction.getProductRules.mtw");
r.addParameter('proxy', 'nojento');
r.onSuccess(
function(data) {
var response = new mtw.response(data);
response.innerHTML("div3");
}
);
r.useLoadingMessage();
r.send();
}
Posta ai se funcionar.
|
 |
|
Por um acaso voce passa por algum proxy de internet? like squid?
|
 |
|
Se não me engano, esta exception acontece porque voce esta com o
json.jar na sua lib, onde deveria estar a json-lib.jar + ezmorph.jar
|
 |
|
Então, na verdade gostaria mesmo é de restruturar o MentaAjax, deixá-lo mais simples de utilizar.
Tenho um projeto do MentaAjax 3 que chamo de M3, hehe...
Estou quase terminando, e quando terminar eu passo o projeto pra voces opnarem.
IceWolf wrote:
Acho muito boa a ideia, mas também acho legal ser algo optativo como os projetos Jquery, Prototype são... quer compact ? pega... Não então pega full.
Com certeza, na verdade será um metodo like setUrl que voce setara se quer ou não compactar os dados e no renderer voce tambem passara um boolean.
O problema é que o atual mentaajax deve ser mantindo, porém depreciado.
existira algo como o atual
<mtw:ajaxConfig /> e o novo <mtw:m3 /> se o cara quizer utilizar a nova versão, ele utiliza apenas o m3
Não sei se estou viajando, mas é mais ou menos esta a idéia.
|
 |
|
Cara, da pra fazer o seguinte, na action voce utiliza isso para jogar algo via ajax certo?
Code:
output.setValue(AjaxConsequence.KEY, value);
ou o atalho que é
Code:
Então, podemos sobrecarregar este método ajax da seguinte forma:
Code:
ajax(Object value, List<String> excludedProperties) {
output.setValue(AjaxConsequence.KEY, value);
output.setValue(AjaxConsequence.EXCLUDEDS, excludedProperties);
}
E no Renderer agente addiciona esta lista para a lista que já existe lá.
Ficaria legal não é mesmo? dessa forma voce controla as propriedades excluidas da action e não do ApplicationManager
|
 |
|
Faz uma List< Map<String, String> > e coloca no map só o as properties que voce quer.
|
 |
|
Olá pessoal, agora com um pouco mais de tempo estou com uma idéia e gostaria
da opnião de voces.
A idéia é fazer com que o mentaajax trafegue dados JSON compactado, ou seja,
faço um compactador em java, e um descompactador em javascript e vice versa.
qual o ganho disso? simplesmente agilidade na resposta por que o JSON será bem menor já que será "zipado" durante a transferência.
Já fiz um compactador aqui em java e um descompactador em javascript, oque
posso adiantar é que uma string de 311.000 caracteres foi reduzido a 20.000 caracteres! precisei fazer isso porque no meu projeto corrente, tenho um json de resposta gigantesco.
Oque acham? olhem um exemplo:
Descompactado:
Code:
{"VA":[{"T":111,"AD":"GIG","G":"OCEANAIR","DS":{"DT":"08/05/2009","M":1241779200000,"H":"07:40"},"C"
:"OC","CD":1,"DC":{"DT":"08/05/2009","M":1241782800000,"H":"08:40"},"CO":0,"AO":"GRU","LS":[{"E":"","AD"
:"GIG","V":"6181","DS":{"DT":"08/05/2009","M":1241779200000,"H":"07:40"},"C":"OC","CD":1,"DC":{"DT":"08
/05/2009","M":1241782800000,"H":"08:40"},"CO":0,"AO":"GRU","CL":"S"}],"I":3},{"T":289,"AD":"GIG","G"
:"GOL","DS":{"DT":"08/05/2009","M":1241773800000,"H":"06:10"},"C":"G3","CD":1,"DC":{"DT":"08/05/2009"
,"M":1241777400000,"H":"07:10"},"CO":0,"AO":"GRU","LS":[{"E":"738","AD":"GIG","V":"1660","DS":{"DT":"08
/05/2009","M":1241773800000,"H":"06:10"},"C":"G3","CD":1,"DC":{"DT":"08/05/2009","M":1241777400000,"H"
:"07:10"},"CO":0,"AO":"GRU","CL":"T"}],"I":1},{"T":370,"AD":"GIG","G":"GOL","DS":{"DT":"08/05/2009","M"
:1241790300000,"H":"10:45"},"C":"G3","CD":1,"DC":{"DT":"08/05/2009","M":1241793900000,"H":"11:45"},"CO"
:0,"AO":"GRU","LS":[{"E":"738","AD":"GIG","V":"1792","DS":{"DT":"08/05/2009","M":1241790300000,"H":"10
:45"},"C":"G3","CD":1,"DC":{"DT":"08/05/2009","M":1241793900000,"H":"11:45"},"CO":0,"AO":"GRU","CL":"L"
}],"I":2}],"A":{"TD":111,"TU":370},"S":"OK","MC":{"1":"RIO DE JANEIRO","0":"SAO PAULO"},"menoresVolta"
:[],"SA":{"PANTANAL":{"D":1,"S":"ERROR"},"OCEANAIR":{"D":1,"S":"OK"},"TRIP":{"D":2,"S":"ERROR"},"GOL"
:{"D":4,"S":"OK"},"RICO":{"D":0,"S":"ERROR"},"PASSAREDO":{"D":0,"S":"ERROR"},"WEBJET":{"D":0,"S":"ERROR"
}},"MA":[{"T":289,"AD":"GIG","G":"GOL","DS":{"DT":"08/05/2009","M":1241773800000,"H":"06:10"},"C":"G3"
,"CD":1,"DC":{"DT":"08/05/2009","M":1241777400000,"H":"07:10"},"CO":0,"AO":"GRU","LS":[{"E":"738","AD"
:"GIG","V":"1660","DS":{"DT":"08/05/2009","M":1241773800000,"H":"06:10"},"C":"G3","CD":1,"DC":{"DT":"08
/05/2009","M":1241777400000,"H":"07:10"},"CO":0,"AO":"GRU","CL":"T"}],"I":1},{"T":111,"AD":"GIG","G"
:"OCEANAIR","DS":{"DT":"08/05/2009","M":1241779200000,"H":"07:40"},"C":"OC","CD":1,"DC":{"DT":"08/05
/2009","M":1241782800000,"H":"08:40"},"CO":0,"AO":"GRU","LS":[{"E":"","AD":"GIG","V":"6181","DS":{"DT"
:"08/05/2009","M":1241779200000,"H":"07:40"},"C":"OC","CD":1,"DC":{"DT":"08/05/2009","M":1241782800000
,"H":"08:40"},"CO":0,"AO":"GRU","CL":"S"}],"I":3}],"TP":"N"}
Compactado:
Code:
{"VA":[?T?1?,"AD?"GIG"??:"OCEANAIR?"DS??D??08/05/2009?M?241779????H?07:40"}?C"
???C?:1?D? ?"??????????828??"??8???"CO?0?A??GRU?L???E???????V?6181??????????"?1????????????????????8
??????7???????????????L??}]?I?3????9???????O??????????73????6????3??????????????????1??????????"???8???????166????????????????????????????????7????????????????????"?37????????????????903??"??5????????????93????1????????????"???????2?????????????4???G?????????????????????????"?
?"?:2???T???? 0???K????RIO DE J?E?????S? PAUL??menoresVolta?[?"???NT?A????ERRO???????????T?P???????G?????????????????S?RED???????WEBJE????????M?????????????????????????????????????????????????????????????????????????????????????????1??????????????????????????????????????????????????????????????????????????
???? ???????T??N?
Beeeeeemmm menor não é mesmo?
|
 |
|
|
|