Hi,
Please I need your support with this critical issue that needs to be resolved with my application.
I have a jmix web application that calls a restful service. The restful service keeps track of request calls coming from the jmix web application and logs the request sessionid.
@GetMapping("/items")
public void all(HttpServletRequest request) {
log.info("Session id: {}", request.getSession().getId());
}
What I realize is that Jmix web application does not create new sessionid when a new browser session is opened.
Let me explain.
Activity #1: I open a jmix web browser (google chrome), and log in. I click on item browser to display list of Items- the item data coming from the restful service. In the restful service, the request sessionId is logged.
Activity #2: Let’s say I close the google chrome browser completely and open another session, login again to display the list of items. The restful service again still logs the same sessionid of the previous transaction. I expect this second call to log a new sessionid because it is a new web session.
Activity #3: I also use a different browser Edge, open the same jmix application, login to display the items. The restful service again still logs the same sessionid of the previous actvities.
Compare the above scenario actvities to when I call the restful service GET endpoint from within postman, the sessionid works as expected . I close postman completely and open it again, call the GET resource, a new sessionid is logged every time I reopen the postman client.
So in conclusion, I find out that the jmix web application does not create a new sessionid in the restful service application every time there is a new web session but it works fine when I call the same endpoint in postman or other rest clients.
What do you think maybe wrong with Jmix web application that it does not create new sessionid when there is a new web session?
Hope to hear from you soon.
Thanks