RICHFACES , COM AJAX NO IE9. Compatibilidade

9 respostas
Kleber_Ramos_leite

Boa tarde a todos !!!
Tenho um projeto feito em RichFaces versão 3.3.1. Com o IE9 está ocorrendo alguns probleminhas de compatibilidade, coloquei está função:"", no template dentro de cada Head. Agora os modais estão abrindo, somente a parte do AJAX que não funciona a renderização. Também adicionei no web.xml :

<filter>
   <filter-name>Internet</filter-name>
   <filter-class>br.com.stenovoice.filter.SessionFilter</filter-class>
 </filter>

<filter-mapping>
  <filter-name>filtroIE9</filter-name>
  <url-pattern>/views/*</url-pattern>
</filter-mapping>

Não quero atualizar a versão do richfaces, para não complicar o projeto.
Caso alguém puder me ajudar ???

9 Respostas

alias

Porcaria de browser de merda da Microsoft. Cara, dê uma olhada aqui e nos links apontados nesse post, e vê se te ajuda.

http://www.guj.com.br/java/237273-ie9–jsf–richfaces

Kleber_Ramos_leite

Alias blz.
Então já dei uma olhada nesse link , coloquei o javascript mesmo assim não funciona.
Obrigado pela força.

alias

Kleber Ramos leite:
Alias blz.
Então já dei uma olhada nesse link , coloquei o javascript mesmo assim não funciona.
Obrigado pela força.

e a alteração no javascript do Rich, chegou a fazer? Certa vez eu fiz isso e funfou.

Kleber_Ramos_leite

Então, essa parte não cheguei a fazer, só alterei o javascript mesmo.
Como que faço essa parte, poderia dar um auxilio ?
Inclusive estou até colocando o rich 3.3.3 para testar .

G

Tem um post no blog do Fernando Franzini sobre esse assunto

http://fernandofranzini.wordpress.com/2011/04/15/richfaces-3-3-nao-funciona-no-ie9/

eu usei a opção 2 e funcionou aqui

Abraço.

Kleber_Ramos_leite

Vou tentar fazer, valeu pela dica

Obrigado Gustavo

alias

Kleber Ramos leite:
Então, essa parte não cheguei a fazer, só alterei o javascript mesmo.
Como que faço essa parte, poderia dar um auxilio ?
Inclusive estou até colocando o rich 3.3.3 para testar .

No tópico que citei um colega incluiu um link para o fórum do RichFaces onde é explicada a “solução”, que consiste em alterar o arquivo AJAX.js (só não lembro exatamente o jar do Rich que contem esse arquivo), altere a função que identifica o IE conforme o colega gbvbahia01 postou, e reempacote o jar.

Kleber_Ramos_leite

Esse arquivo AJAX.JS não tem no JAR. Tentei instalar o richfaces 4 mais deu muito erro e o richfaces 3.3.3 falta o html.tree.
Se puderem me dar algumas dicas a mais , agradeço.
Fiz alteração no javascript do Rich, mesmo assim não funcionou

Kleber_Ramos_leite

Estou usando a versão do richfaces 3.3.1 . Acompanhei os links postados, ainda não funcionou . Alguém saberia me dizer
Colquei esse comando no ajax.js do richfaces

if(ver >= 9.0){         
                               if(window.XMLSerializer && Sarissa.getDomDocument && Sarissa.getDomDocument("","foo", null).xml){
                                   /**
                                    * Utility class to serialize DOM Node objects to XML strings
                                   * @constructor
                                    */
                                   XMLSerializer = function(){};
                                   /**
                                    * Serialize the given DOM Node to an XML string
                                    * @param oNode the DOM Node to serialize
                                    */
                                   XMLSerializer.prototype.serializeToString = function(oNode) {
                                       return oNode.xml;
                                    };
                               }
                }else{                
                               if(!window.XMLSerializer && Sarissa.getDomDocument && Sarissa.getDomDocument("","foo", null).xml){
                                   /**
                                    * Utility class to serialize DOM Node objects to XML strings
                                    * @constructor
                                    */
                                   XMLSerializer = function(){};
                                   /**
                                    * Serialize the given DOM Node to an XML string
                                    * @param oNode the DOM Node to serialize
                                    */
                                   XMLSerializer.prototype.serializeToString = function(oNode) {
                                       return oNode.xml;
                                   };
                               }
                }

Tambem adicionei no javascript

function getInternetExplorerVersion()
// Returns the version of Windows Internet Explorer or a -1
// (indicating the use of another browser).
{
   var rv = -1; // Return value assumes failure.
   if (navigator.appName == 'Microsoft Internet Explorer')
   {
      var ua = navigator.userAgent;
      var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
      if (re.exec(ua) != null)
         rv = parseFloat( RegExp.$1 );
   }else{
    return -1;
   }
   return rv;
}
var ver = getInternetExplorerVersion();

Quando realizo todo o processo de startar o jetty , so aparece a tela de login e adiciono o usuario e senha a tela fica carregando, não exibe erro.
Que será que estou fazendo de errado, alguem pode dar uma dica?

Criado 6 de março de 2012
Ultima resposta 8 de mar. de 2012
Respostas 9
Participantes 3