You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As f:viewActions are not executed when validation fails, DataversePage.init() will not be executed. Thus you have an empty Dataverse object in DataversePage, which results in all kind of funny side effects (because if no dataverse was present, it would have been set to null by init()), including the "New Dataverse" title, etc (see result in the first picture).
This has been verified by removing all code from DatasetPage.init() and inserting a throw new RuntimeException - nothing happens. See also here and here
Next question: why is alias failing validation?
Answer: because setting the alias name in the empty new Dataverse() object at DataversePage causes validation constraints to fail: Dataverse.java
The text was updated successfully, but these errors were encountered:
When using alias and id via the Dataverse model class, on modern
versions of application servers, Bean validation does not allow
to use "null" as value on @nonblank model attributes.
FixesIQSS#6216.
This has been attacked due to short notice availability of a pair programming partner here with knowledge about JSF. This was an evaluation to estimate options how to continue. Mentioning @djbrooke.
This issue has been triaged a while ago: see #5907, #5933 and #4172
In the following, it doesn't matter if you are logged in or not - these problems occur way before the authz in
DataversePage.init()
can happen.When deploying
develop
(6bebe7f) to Payara 5, the following screen is shown:After switching http://github.com/poikilotherm/dataverse/blob/develop/src/main/webapp/dataverse_header.xhtml#L313 to
<h:messages id="messages"/>
, you'll see this error message:As
f:viewAction
s are not executed when validation fails,DataversePage.init()
will not be executed. Thus you have an emptyDataverse
object inDataversePage
, which results in all kind of funny side effects (because if no dataverse was present, it would have been set tonull
byinit()
), including the "New Dataverse" title, etc (see result in the first picture).This has been verified by removing all code from
DatasetPage.init()
and inserting athrow new RuntimeException
- nothing happens. See also here and hereNext question: why is
alias
failing validation?Answer: because setting the alias name in the empty
new Dataverse()
object atDataversePage
causes validation constraints to fail:Dataverse.java
The text was updated successfully, but these errors were encountered: