Hi Hessel, On Mon, Sep 11, 2017 at 2:13 PM, Hessel Bakker <h.bakke...@gmail.com> wrote:
> Hi all, > > In our setup monitoring is being done on (among others) the wicket web > interface of our hosts. > > I am now trying to include a logout step as well, because otherwise > the sessions stay alive until a timeout is reached, resulting in a log > file pile-up on the server. > > In order to do this, I am looking for a viable logout link. To > illustrate, this is the link used for the login part: > http://{HOST.NAME}:8080/{$APP_STATUS}/wicket/signin?-1. > IFormSubmitListener-signInPanel-signInForm. > > When I inspect the menu for logout, the resulting link is: > http://{HOST.NAME}:8080/{$APP_STATUS}/wicket/entity?3-1. > ILinkListener-theme-header-tertiaryMenuBar-logoutLink, > I guess the problem is because of "?3" - '3' is the page id and is dynamic depending on your current nagivation. > which doesn't produce a logout when called by the monitoring system. > > I would like to be able to have the monitoring solution (which is > Zabbix) logout. Can anyone point me in the right direction? Thanks in > advance. > To make the url stable you (or Isis in a future version) will have to introduce a special page that will invalidate the session. This page should do the same as https://github.com/apache/isis/blob/b66fb6e662a4273a00f94fea07725f813121d8e8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/serviceactions/TertiaryActionsPanel.java#L90-L92 in its constructor. It can even use "throw RestartResponseException(SignInPage.class)" instead of "setResponsePage(SignInPage.class)". Then in YourApplication.java, in #init() method do something like: mountPage("logout", LogoutPage.class) And in your logout step you can use "http://{HOST.NAME <http://host.name/> }:8080/{$APP_STATUS}/wicket/logout". > > Kind regards, > Hessel Bakker >