Solved

Domino Web Application - xml menu not displaying in firefox browser. It works fine in IE

Posted on 2007-12-04
6
245 Views
Last Modified: 2013-12-18
Hi all,

I have an xml menu page to display the menu for one of our applications

The xml page is set to Other - "application/xml" in the page properties

This menu is called on the main page of the applications

The menu displays fine on IE but it does not display on firefox

Does someone has an idea on how I can go around this problem?

Thank you all in advance
Varvoura

Open in new window

0
Comment
Question by:varvoura
  • 4
  • 2
6 Comments
 
LVL 31

Expert Comment

by:qwaletee
ID: 20408850
You did not include the code.
0
 

Author Comment

by:varvoura
ID: 20409689
ok, please see link below for a dynamic menu generator

http://www-10.lotus.com/ldd/sandbox.nsf/ecc552f1ab6e46e4852568a90055c4cd/2a3a68a850a91ac388256ab10074628f?OpenDocument&Highlight=0,xml

The menu in my database is exactly the same as the on in the link above where it is consturcted in an xml view which is then embedded on a page.xml that page again is displayed using page.css
As i said, if you take a look at db above you'll be able to see the problem

Are you able to view the "xml menu"  in the db above in firefox?
By the way, this was extracted from the "sandbox"

Thanks
0
 
LVL 31

Accepted Solution

by:
qwaletee earned 500 total points
ID: 20411590
Did you read this on the main page of the database?

This application will work only in Internet Explorer version 5 or above as it uses client side scripting using the MSXML parser. The application will not work in Netscape browsers.

Firefox also does not use MSXML. It uses its own XML parser. You would have to adapt the script to be cross-browser compliant.  Here's an exmaple page showing how to support parsers specific to your browser so that your page is cross-browser compliant:

http://www.w3schools.com/xml/xml_parser.asp
0
Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

 

Author Comment

by:varvoura
ID: 20417407
qwaletee,

I have used your link & changed my js page accordingly.
not having much luck with it
If it isn't too painful, are you able to make the changes recommended in your link to the db that I posted in my link then try on firefox
I have made those changes and they're not working for me maybe they'll work with you

Many thanks
0
 
LVL 31

Expert Comment

by:qwaletee
ID: 20446720
You should be able to create a helper object that returns an XML tree in either IE or Firefox. You'll need a function that looks something like this:

function loadXMLContent(url)
  if verify-internet-explorer() Then
     xmlDoc = setup Microsoft.XMLDOM'
     xmlDoc.load(url)
     return xmlDoc
  else if verify-firefox() Then
     xmlDoc = document.implementation.createDocument
     xmlDoc.load(url)
     return xmlDoc
  else
     suicide-on-incompatible-browser
end-of-function
0
 
LVL 31

Expert Comment

by:qwaletee
ID: 20446842
Here, I went and looked at it a bit. The implementation could use some improvment, but the code below will probably work.  Warning: For some reason, the browser is very keen on not recognizing changes to the page. So you may have to clear browser cache and restart the browser for any changes to take effect. This is untested.

The code needs to go into the "MenuDisplay" form
function makeXML(src) {
	if (window.ActiveXObject) {
		xmlDoc=new ActiveXObject('Microsoft.XMLDOM');
		xmlDoc.async='false';
		xmlDoc.load(src);
		return xmlDoc;
	} else if (document.implementation && document.implementation.createDocument)  { // code for Mozilla, Firefox, Opera, etc.
		xmlDoc=document.implementation.createDocument('','',null);
		xmlDoc.load(src);
		return xmlDoc;
	} else {
		alert('Your browser cannot handle this script');
	}
}
var resulting='';
var oXMLDoc = makeXML('./menus.xml');
var oXSLDoc = makeXML('./divs.xsl');
function justDoIt(){
resulting = oXMLDoc.transformNode(oXSLDoc);
window.document.write(resulting);
}

Open in new window

0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

You’ve got a lotus Domino web server, and you have been told that “leverage browser caching” is a must do. This means that we have to tell the browser everywhere in the web to use cache. In other words, we set (and send) an expiration date in the HT…
I thought it will be a good idea to make a post as it will help in case someone else faces these issues. I trust this gives an idea how each entry in Notes.ini can mean a lot for the Domino Server to be functioning properly. This article discusses t…
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question