Focal Point
[CLOSED]IE 11 / EDGE webfocus8105 evaluate method error

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/3097043486

October 25, 2016, 10:42 AM
RupeshKumar
[CLOSED]IE 11 / EDGE webfocus8105 evaluate method error
We are upgrading webfocus 7.7.0.5 to 8.1.0.5. and IE 11 (EDGE). We have application which calls webfocus reports via html / jsp pages. Code works well in IE5 engin (IE developer studio) but doesn't work in IE 11 / EDGE and getting following error "Object doesn't support property or method 'evaluate'" in ibirls2.js for the line "owner.evaluate(nodeName, xmlNode, null, 0, null);" Full method is given below.
Also we observed ibirls2.js is called from ibigbl.js in webfocus 7.7.0.5 which is missing in webfocus 8.1.0.5.
We have tried lots of suggestions for ActiveXObject and few other possible issues but nothing is working. Any help would be much appreciated as we are reaching the migration deadline.

Full method:

function getNodeValue(xmlNode, nodeName) {
var node = null;
if (isIEvar) node = xmlNode.selectSingleNode(nodeName);
else {
var owner = xmlNode.nodeType == 9 ? xmlNode : xmlNode.ownerDocument;
var xpathResult = owner.evaluate(nodeName, xmlNode, null, 0, null);
node = xpathResult.iterateNext()
}
if (node && node.firstChild) return node.firstChild.nodeValue;
return "no value"
}

This message has been edited. Last edited by: <Emily McAllister>,


WebFOCUS 8
Windows, All Outputs
October 25, 2016, 10:59 AM
Squatch
I've included a line of code that will hopefully let you see what is in object "owner". The error indicates that the object does not have method "evaluate", but perhaps there is another method available to do the same thing:

function getNodeValue(xmlNode, nodeName) {
  var node = null;

  if (isIEvar) node = xmlNode.selectSingleNode(nodeName);
  else {
    var owner = xmlNode.nodeType == 9 ? xmlNode : xmlNode.ownerDocument;

    // Show contents of object "owner"
    alert(JSON.stringify(owner, null, 4));

    var xpathResult = owner.evaluate(nodeName, xmlNode, null, 0, null);
    node = xpathResult.iterateNext();
  }

  if (node && node.firstChild) return node.firstChild.nodeValue;
  return "no value";
}



App Studio
WebFOCUS 8.1.05M
Windows, All Outputs
October 26, 2016, 11:11 AM
Barry Solomon
Hi Rupesh

I saw in your post the following:

quote:
Also we observed ibirls2.js is called from ibigbl.js in webfocus 7.7.0.5


if you are invoking ibirls2.js file then you are running an HTML page that is not converted to 8105 and that would be an issue. The code in the ibirls2.js is definitely not compatible with Edge. Make a copy of the HTM file and try to convert the file to 8105 and go from there.

Have a great day,
Barry


WebFOCUS 8
Windows, All Outputs
October 26, 2016, 05:33 PM
CoolGuy
I agree with Barry. We've had to just recreate all the HTML pages that were in our 7.6.11 environment when we moved to 8.x. We are still migrating our content and we've been stuck doing so for some time due to how poorly everything moves over.

I gave up long ago trying to use migration utilities that don't work. Also, I've began just building our own standards compliant HTML separate from IBI-generated HTML code. We have lots more control with our own HTML, use a lot less code (runs/loads faster), and can modify and update things w/o having to wait for a hot-fix (because something isn't working or is limited in functionality/compatibility), full-on product update, etc. when we just build our own. With our own code, migrations no longer have the dependency of the BI tool any longer as well. We can just re-link things and move on with our lives. Also, we are on 8105m and if I launch an IBI portal we've created and hit F12 in Chrome, the page has 95 (yes, that's a 9 followed by a 5) deprecation warnings saying you better change your code before it is no longer supported... Just to give you an idea of how compliant their code base is to modern standards...


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.
October 27, 2016, 10:47 AM
sh98110
Cool Guy, are you saying that you don't use any of Dev/App Studio's HTML code tools?


WebFOCUS 8
Windows, All Outputs
October 27, 2016, 11:03 AM
CoolGuy
sh98110,

I do use AppStudio's HTML Canvas tool when I need to, and have used it for the most part up till recently; but I'm finding I can maintain a better-to-know skill set, get things done faster, things look and function better, keep code clean, readable, maintainable, migrate things better, etc. when I just do it w/o IBI's GUI tools. And that's the case throughout even in report building, etc. They are trying to push the GUI and that's good for those that don't want to or have time to learn the language that actually drives all the GUI functionality, which is FOCUS (WebFOCUS). But for the power-users/developers, it hinders things quite a bit. This is my opinion.


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.
November 04, 2016, 10:30 AM
RupeshKumar
Good morning all,
My apologies for the delay in response. Thank you everyone for the response.
As suggested by Squatch the alert is throwing null ( {} braces ). As per Barry's and CoolGuy's suggestion i converted my html pages into HTML5 but still same error.
I tried lot other good suggestions from net but nothing seems working. I got a very similar issues posted in below ibi forum link and as per the post the issue stands unresolved yet.
http://forums.informationbuild...077049876#4077049876
So far my analysis says the IE EDGE / 11 having issue handling xml request.
And another question as i mentioned why ibigbl.js is missing in webfocus8 but available in webfocus7. Our html pages are including ibigbl.js in internally this js calls other js like ibirls2.js, ibirls3.js, etc.
Any other thoughts please? This is very critical now and one of our application is totally not working due to this issue. any workaround will be much much appreciated.

Thanks,
Rupesh


WebFOCUS 8
Windows, All Outputs
November 04, 2016, 12:27 PM
CoolGuy
RupeshKumar,

If I were you, I would simply use the GUI-based HTML Composer/Canvas tool in AppStudio to recreate your HTML pages for now. Also, to gain a better grasp on how things work in the new version(s), open a case with IBI and ask for some help and pointers on training, etc. where needed.


8.2.02M (production), 8.2.02M (test), Windows 10, all outputs.