Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: prevent setting both login listeners and form action #6669

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

mcollovati
Copy link
Contributor

@mcollovati mcollovati commented Sep 24, 2024

Description

Setting both login listeners and form action can cause unexpected behaviors because of concurrent processing of form submission processing and login event.
For example, if form submission ends in a session ID change and a redirect to a different page, the UIDL request may fail with a session expiration response, causing the Flow client to reload the page and potentially cancel the ongoing redirection.
In addition, after from submission, the login event would be sent to a dismissed UI.
This change prevents setting both action and login listeners throwing an exception.

References vaadin/flow#12640

Type of change

  • Bugfix
  • Feature

Checklist

  • I have read the contribution guide: https://vaadin.com/docs/latest/contributing/overview
  • I have added a description following the guideline.
  • The issue is created in the corresponding repository and I have referenced it.
  • I have added tests to ensure my change is effective and works as intended.
  • New and existing tests are passing locally with my change.
  • I have performed self-review and corrected misspellings.
  • I have not completed some of the steps above and my pull request can be closed immediately.

Additional for Feature type of change

  • Enhancement / new feature was discussed in a corresponding GitHub issue and Acceptance Criteria were created.

Setting both login listeners and form action can cause
unexpected behaviors because of concurrent processing of
form submission processing and login event.
For example, if form submission ends in a session ID change
and a redirect to a different page, the UIDL request may
fail with a session expiration response, causing the Flow
client to reload the page and potentially cancel the ongoing
redirection.
In addition, after from submission, the login event would
be sent to a dismissed UI.
This change prevents setting both action and login listeners
throwing an exception.

References #12640
Copy link

sonarcloud bot commented Sep 24, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant