Book a Demo

Author Topic: DisplayToc  (Read 10951 times)

MarceloUnimake

  • EA Novice
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
DisplayToc
« on: July 31, 2014, 08:05:15 am »
When I generate the HTML documentation, in browsers like Chrome, for example, this dosn't display the menu and it is just loading.

An error is thrown in the file "DisplayToc.js", see attached picture:

How can I solve this?



Thanks!

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: DisplayToc
« Reply #1 on: July 31, 2014, 08:49:24 am »
What version of EA are you generating from? I'm sure this was fixed some time back.

MarceloUnimake

  • EA Novice
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
Re: DisplayToc
« Reply #2 on: July 31, 2014, 09:17:28 pm »
Oops! Sorry I Forgot ... My fault

EA: 11.0.1107 (Build:1107) - Unicode
Chrome: 36.0.1985.125
« Last Edit: July 31, 2014, 09:18:49 pm by MarceloUnimake »

MarceloUnimake

  • EA Novice
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
Re: DisplayToc
« Reply #3 on: August 01, 2014, 10:48:04 pm »
no one knows? :( :'(

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: DisplayToc
« Reply #4 on: August 04, 2014, 09:27:51 am »
From your screenshot it looks like your template is up to date, seems like Chrome must have broken something.

Googling for "chrome cssrules null" appears to suggest that there is a regression issue there, and that you may have more success if the page is hosted on a web server.

sjchatwin

  • EA Novice
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
Re: DisplayToc
« Reply #5 on: August 12, 2014, 07:57:54 am »
This issue has been present in Chrome for about 3 years (as long as I've been using Chrome) and thru EA v9 - v11.  
It's OK in IE, though with a warning from IE first.

Using a real Web Server does relieve the issue, but this solution is not always available to the modeler.

MarcioMonego

  • EA Novice
  • *
  • Posts: 10
  • Karma: +1/-0
    • View Profile
Re: DisplayToc
« Reply #6 on: October 09, 2014, 04:35:58 am »
Hi all,

It was reported some times as bug. But we saw in some place on EA site that to avoid this you should publish the generated html to a web server like IIS.

On the image you posted I see the file:// protocol indicating that it was accessed locally.

Hope this can help you.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: DisplayToc
« Reply #8 on: October 14, 2014, 02:15:33 pm »
I'd like to explain why the report is done the way it is and why some browsers don't like it.

The Enterprise Architect HTML report splits content into individual files and uses Javascript to build things like the table of contents so that they remain constant and to limit download required. It may be possible to make it work without getting Javascript to request additional data, I'm not a web developer and I don't know what these techniques would be, what I do know is that it would require completely re-writing the entire thing.

On the other side of things, web browsers are constantly under attack with people trying to find ways to access data they shouldn't be able to. As a result many browsers now consider requesting a file from the file system a dangerous activity. But each of the browsers I have used recently handle it differently.

ChromeWill not allow file based access without the command line argument --allow-file-access-from-files. The file appears to be returned as null, hence the error received.EA Reports fail with null pointer exception
FirefoxI believe it just allows it for files within the same directory or a sub-directoryEA Reports work without warning
Internet Explorer 11 on Win8shows a popup: access deniedNo access to EA reports
Internet Explorer otherPrompts with for permission to access an ActiveX objectEA Reports work after allowing access
Opera < (unknown version between 21 & 27)Access is disabled by default but an option is available to allow it.EA Reports provide a link to the option that needs to be changed
Opera >= (unknown version between 21 & 27)Access is disabled by default no investigation yet about how to make it load except running a web server.Report doesn't load
Anything elseProbably different for each browserLet me know

So... Chrome isn't going to change. It's considered a security issue and breaking pages that used to be exploiting a security flaw isn't a concern. (My interpretation of their view) We could, (and probably should) modify the generated javascript to detect that null under chrome and report the likely problem.

My personal recommendation would be to download Mongoose and run it to host files locally. Going on a limb, if I was wanting to view a report in chrome all the time I would be looking for/writing an extension that launches mongoose any time I open a file from the file:// path.
« Last Edit: May 01, 2015, 10:56:36 am by simonm »

Graham_Moir

  • EA User
  • **
  • Posts: 749
  • Karma: +10/-15
    • View Profile
Re: DisplayToc
« Reply #9 on: October 14, 2014, 08:48:07 pm »
Thanks for taking the time to provide that information Simon

MarceloUnimake

  • EA Novice
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
Re: DisplayToc
« Reply #10 on: October 14, 2014, 10:53:42 pm »
Thanks for your time Simon.

For me, no problem ..

I´m using the IIS and then I publish it on a local site.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: DisplayToc
« Reply #11 on: October 20, 2014, 07:12:00 am »
Quote
So... Chrome isn't going to change. It's considered a security issue and breaking pages that used to be exploiting a security flaw isn't a concern. (My interpretation of their view) We could, (and probably should) modify the generated javascript to detect that null under chrome and report the likely problem.

My personal recommendation would be to download Mongoose and run it to host files locally. Going on a limb, if I was wanting to view a report in chrome all the time I would be looking for/writing an extension that launches mongoose any time I open a file from the file:// path.

Very good, and very useful, thanks :D
Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.