Bug #5555
openWVBoxLayout WMediaPlayer
0%
Description
Hello,
My WT Application (version 3.3.7) uses a WVBoxLayout,
When hiding/showing the different elements of the WVBoxLayout, the complex widgets are not displayed, the content is replaced by three dot "..."
...
In my case this occurs when the WVBoxLayout contains a not hidden windget containing a WMediaPlayer (element 0) and a hidden complex widget (element 1).
there are no javascript errors.
Even worse, when the widget containing the WMediaPlayer (element 0 of WVBoxLayout) is hidden at startup, when trying to show it (by clicking on a WPushButton for example), three dots are displayed and some errors are raised and the App closed:
[2017-Feb-20 14:38:56.231711] 9452 [/ 5PGPF3wnNR96ft6k] [error] "Wt: error during event handling: WMediaPlayer: error parsing: undefined"
[2017-Feb-20 14:38:56.231711] 9452 [/ 5PGPF3wnNR96ft6k] [error] "Wt: fatal error: WMediaPlayer: error parsing: undefined"
[2017-Feb-20 14:38:56.231711] 9452 - [info] "WebController: Removing session 5PGPF3wnNR96ft6k"
Can you help me solving this please ? I am trying to upgrade from 3.3.5 to 3.3.7 for security reasons (combined tracking mode).
best regards,
Updated by Roel Standaert almost 8 years ago
- Status changed from New to InProgress
- Assignee set to Roel Standaert
I'm able to reproduce a somewhat similar issue, but that one seems to already affect Wt 3.3.5.
This issue was not apparent in Wt 3.3.5 yet, though?
As a workaround, you could set the two phase rendering threshold higher. This could prevent this bug from occurring.
If possible, could you create an example that reproduces the issue?
Updated by Momo LALMI almost 8 years ago
Hi,
Thank you for the hint, I will try to fix two phase rendering threshold, what is the default value for this parameter and what are the suggested values ?
It's difficult to write an example that reproduces the issue, the errors apears only with some complex widgets using WTreeView, fetching rows from database, ...Etc. Simple widgets like WLabel or WLineEdit does not allow reproducing this.
best regards,
Updated by Roel Standaert almost 8 years ago
I think this only occurs with complex widgets because there's a lot of JavaScript that has to be loaded for those. I think that you may be able to more reliably trigger the bug by setting the two phase rendering threshold to 0. You could also try to simply use widgets with a large amount of content.
As for the two phase rendering threshold: if you set this threshold very high, this will cause all hidden content to be sent to the browser at the same time as all visible content. By default, we only send the hidden content along if it is small. This threshold determines how large the hidden content has to be in order to be sent in another request. It is set to 5000 (bytes) by default.
Updated by Roel Standaert almost 8 years ago
I just pushed a fix for the issue I mentioned to GitHub. Can you check if the issue is still apparent?
Updated by Momo LALMI almost 8 years ago
Hello,
I have changed my code to construct complex widgets dynamically when shown for the the first time.
I didn't test the patch but now everything is ok for me.
best regards