PDA

View Full Version : Altova Authentic Browser plugin and Ext JS panel



thinking cap
25 Feb 2010, 11:29 AM
Hi, I wonder if anybody tried to dynamically load an Altova Authentic browser plugin inside an Ext JS panel. In my page, the plugin loads, but without the content and it often crashes the browser when clicking on the plugin menus, refreshing the browser or navigating between the panels of the TabPanel. The same plugin, same code, used in a regular html page works well. Am I not embedding it in the Panel the right way? I tried several methods of initialization, including appending the recommended
"<SCRIPT LANGUAGE="javascript" For="objPlugIn" EVENT="ControlInitialized">" script which doesn't even seem to be executed.
The code is actually more complex, the plugin has to refresh and load a different set of files on a onclick event from a menu.
I am a beginner with Ext JS. I know my question is more related to a third party plugin, but maybe somebody here tried it and has an idea.
Unfortunately the plugin only works in IE.

Thank you.



Ext.onReady(function() {

var toolbar = new Ext.Toolbar({
region: 'north',
height: 30,
margins: '5 5 5 5',
border: false,
align: 'right',
items: [...whatever...]
});

//xml panel
workingXMLPanel = new Ext.Panel({
id: 'xml-panel',
title: 'Content',
border: true,
html: '<div id="xmlDiv" class="xmlDiv"></div>'
});


//metadata panel
workingMetaPanel = new Ext.Panel({
id: 'meta-panel',
title: 'Metadata',
border:true
});

//main working panel
var mainTabs = new Ext.TabPanel({
id: 'main-panel',
region: 'center',
deferredRender: true,
activeTab: 0,
border: false,
items: [workingXMLPanel, workingMetaPanel]
});

//main panel
var viewport = new Ext.Viewport({
layout: 'border',
border: false,
renderTo: Ext.getBody(),
items: [toolbar,//toolbar panel
new Ext.Panel({ // working panel
region: 'center',
split: true,
layout: 'border',
margins: '0 5 5 0',
border: false,
items: [mainTabs]
})]
});

if (Ext.isIE)
{
altovaScript = '<OBJECT id="objPlugIn" CodeBase="http://'+ window.location.host +'/AuthenticBrowserEdition.CAB#Version=11,0,0,0" '+
'Classid="clsid:B4628728-E3F0-44a2-BEC8-F838555AE780" width="100%" height="100%"> '+
' <PARAM NAME="XMLDataURL" VALUE="http://localhost:58308/Altova/testXML1.xml"/ (http://localhost:58308/Altova/testXML1.xml%22/)> '+
' <PARAM NAME="SPSDataURL" VALUE="http://localhost:58308/Altova/testSPS1.sps"/ (http://localhost:58308/Altova/testSPS1.sps%22/)> '+
' <PARAM NAME="SchemaDataURL" VALUE="http://localhost:58308/testXSD1.xsd"/ (http://localhost:58308/testXSD1.xsd%22/)> '+
' <SPAN> '+
' <h1 style="color:red">Initialization Error:</h1> '+
' <br/> '+
' <b>Plugin failed to load !</b> '+
' </SPAN> '+
'</OBJECT>';

var xmlDiv = Ext.get("xmlDiv");
var elTemplate = new Ext.Template(altovaScript);
var elElement = elTemplate.append(xmlDiv, {}, true);
}

}