Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #7650 (closed defect: untested)

Opened 1 year ago

Last modified 1 year ago

Ajax.Request with ActiveX Capicom crashes IE

Reported by: dbolufer Assigned to: sam
Priority: normal Milestone: 1.x
Component: Prototype Version: edge
Severity: critical Keywords: xmlhttprequest capicom crash
Cc:

Description

We are developing an application with Script.aculo.us 1.7.0 & Prototype 1.5.0 which used personal certificates to sign important requests, in Firefox we use window.crypto.signText and with IE activeX Capicom. Here is the problem.

The application send through Ajax.Request data & signed data, in Firefox works OK, but in IExploter crash the Ajax.Request, we are sure that the problem is with ActiveX Capicom because if we comment this part, Ajax.Request works OK. Of course, CAPICOM functions works OK whitout AJAX.REQUEST object.

Here is Ajax.Request that return onFailure "Error 122 -- unknow" and onException "the system cannot locate the resource specified".

var op_dom = {
        method: 'get',
        onLoading: function(request){
                Element.show('loading', {duration: 0.3});
        },
        onSuccess: function(t) {
                Element.update('contentdomLayer', t.responseText);
                Element.show('domLayer', {duration: 0.3});
        },
        onComplete: function(request){
                Element.hide('loading', {duration: 0.3});
        },
        onFailure: function(t){
                alert('Error ' + t.status + ' -- ' + t.statusText);
        },
        onException: function(xhr, exception) {
                var description = '';
                for (var property in exception) {
                        description += property + '=' + exception[property] + '\n';
                }
                alert('Exception: ' + exception + '\n' + description);
        }

};

if (setFirmafunc($('Formulario'))) {     
        new Ajax.Request('index.php?ajax=true&enti=' + $('enti').value + '&ofi=' + $('ofi').value + '&dc=' + $('dc').value + '&cuenta=' + $('cuenta').value + '&StrFirma=' + $('StrFirma').value+ '&StrXMLE=' + $('StrXMLE').value, op_dom);

}

The setFirmafunc($('Formulario') function, works OK when it is running without Ajax.Request

function setFirmafunc(form){
	if(window.confirm('{LANG_TEXT_MSN_FIRMA}')){
		if(browser.isIE)  return firmarFormulario(form.name)
		else if (browser.isGecko)      return signForm(form, window)
	}else{
		return false;
	}
}

Change History

02/26/07 11:35:12 changed by mislav

  • owner changed from madrobby to sam.
  • component changed from script.aculo.us to Prototype.
  • summary changed from Bug with IE7 & IE6 - Ajax.Request to Ajax.Request with ActiveX Capicom crashes IE.

Thanks for the report. Before I try to reproduce this I would like to ask if you could post an example script (that crashes IE) like the one above, but that you try to keep it minimal because the one above seems to have too much application-specific code (method calls, DOM manipulation).

A minimal test case to reproduce a bug should be totally decoupled from your application.

Also, I would like you to point me to the "Capicom" part (that is causing all this) because I fail to see any ActiveX related code in what you submitted.

03/20/07 12:12:00 changed by mislav

  • status changed from new to closed.
  • resolution set to untested.