Author Topic: WebEA does not update diagrams  (Read 4821 times)

miksko

  • EA User
  • **
  • Posts: 52
  • Karma: +2/-0
    • View Profile
WebEA does not update diagrams
« on: September 05, 2024, 01:09:54 am »
WebEA regenerates a diagram in case it detects that:
  • an element has moved
  • a new relation has appeared or
  • another kind of visual change to the diagram has been made.
But it does not detect if, for example, an element has changed name. Sure, that will be quite noticeable in the diagram, but it is not a change made in the diagram directly but in an element appearing in the diagram.

According to the documentation you can turn on the server application EA Worker, to search and update changes of this kind on a regular basis. We have configured it to do so every 30th second. Still the diagram hasn't been updated after 10 minutes.

Another odd behavior is that the label Image pending generation appears beside some diagrams even though we have not requested any kind of manual update (which appearently can be done by the reader in some way). The label also stays on eternally, without the diagram ever beeing update.

Has anyone else had similar problems with the EA Worker? How have you solved them?

ea0522

  • EA User
  • **
  • Posts: 134
  • Karma: +5/-0
    • View Profile
Re: WebEA does not update diagrams
« Reply #1 on: September 05, 2024, 03:39:03 pm »
It's not WebEA that does the rendering of the images.
The EA client does.
And to my knowledge, it indeed does not detect a change of the name of an element.
You can see that when editing a diagram in EA. The "*" indicating the diagram has changed only appears when an element or connector is moved, added or removed.

There is an option you can manually trigger to regenerate all diagrams in batch.
See "Settings => Model => Options", there is a button in the list of options related to "Cloud".
Maybe that will help the use case you are describing?

Takeshi K

  • EA User
  • **
  • Posts: 563
  • Karma: +35/-1
    • View Profile
Re: WebEA does not update diagrams
« Reply #2 on: September 05, 2024, 06:21:32 pm »
The answer of ea0522 is partially correct, the EAWorker is there to update diagrams automatically without manual update.

My machine works fine with EAWorker. After changing the name of an element (no diagram update) and waiting 30 seconds (default), I can confirm the diagram change via WebEA.

First you need to check that EAWorker is working correctly. Enable EAWorker with log level 'SYSTEM' (or higher). If it works, a line like the following will be added to the log file.

2024-09-05 17:14:34 [SYSTEM]:  CDiagramImageAndMapHelper updating images for 1 diagram(s)

If this fails, you may be able to find the reason in the log file why the EAWoker is not working. If there is no log file under Pro Cloud Server\Service\Worker\Logs, you need to set it up correctly.

HTH,
« Last Edit: September 05, 2024, 06:26:10 pm by Takeshi K »
--
t-kouno

miksko

  • EA User
  • **
  • Posts: 52
  • Karma: +2/-0
    • View Profile
Re: WebEA does not update diagrams
« Reply #3 on: September 05, 2024, 08:45:45 pm »
It's not WebEA that does the rendering of the images.
The EA client does.

Hi

This is what the refered documentation says:
Benefits of the EA Worker
The Data Cache options for saving diagrams and linked documents in WebEA format were introduced in Enterprise Architect 13.5 (Build 1350). If users will be updating your model using an earlier build of Enterprise Architect, then the diagrams and linked documents will not be saved/updated for viewing in WebEA. In this case you can (and should) run the EA Worker on your server to ensure that all updates are reflected in WebEA.
Enterprise Architect's option for saving diagram images ('Auto create Diagram Image and Image Map') saves the diagram image only when that diagram is modified directly within Enterprise Architect. However, in the case of the EA Worker, if you modify a diagram indirectly (e.g. you rename an element that appears on multiple diagrams), then the Worker will update/save the image for all the relevant diagrams. For this reason you might choose to enable the EA Worker, even when you know users will be modifying the model using a recent (post 13.5) version of Enterprise Architect.

miksko

  • EA User
  • **
  • Posts: 52
  • Karma: +2/-0
    • View Profile
Re: WebEA does not update diagrams
« Reply #4 on: September 05, 2024, 08:49:11 pm »
First you need to check that EAWorker is working correctly. Enable EAWorker with log level 'SYSTEM' (or higher). If it works, a line like the following will be added to the log file.
2024-09-05 17:14:34 [SYSTEM]:  CDiagramImageAndMapHelper updating images for 1 diagram(s)
If this fails, you may be able to find the reason in the log file why the EAWoker is not working. If there is no log file under Pro Cloud Server\Service\Worker\Logs, you need to set it up correctly.

Splendid Takeshi. Thanks for the instructions. I will forward them to the system administrator.

Mikael

ea0522

  • EA User
  • **
  • Posts: 134
  • Karma: +5/-0
    • View Profile
Re: WebEA does not update diagrams
« Reply #5 on: September 05, 2024, 09:28:20 pm »
Quote
However, in the case of the EA Worker, if you modify a diagram indirectly (e.g. you rename an element that appears on multiple diagrams), then the Worker will update/save the image for all the relevant diagrams.

This is why I prefer to rely on the saving of the EA client.
It will also regenerate the images when new connectors are created.
If I create a new connector between elements A and B on diagram X, then this connector will be shown on all diagrams where both elements A and B are shown.
In our case, this will clutter a lot of diagrams unintentionally...

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13251
  • Karma: +554/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: WebEA does not update diagrams
« Reply #6 on: September 06, 2024, 05:08:05 pm »
Quote
However, in the case of the EA Worker, if you modify a diagram indirectly (e.g. you rename an element that appears on multiple diagrams), then the Worker will update/save the image for all the relevant diagrams.

This is why I prefer to rely on the saving of the EA client.
It will also regenerate the images when new connectors are created.
If I create a new connector between elements A and B on diagram X, then this connector will be shown on all diagrams where both elements A and B are shown.
In our case, this will clutter a lot of diagrams unintentionally...
That's only a temporary effect, untill someone touches the diagram.
If you don't want that to happen, you should freeze the visible relations on those diagrams. In that case you are not dependent on a bug, and WebEA will show the same diagrams as EA itself.

Geert