J'ai une application gwt avec une page de connexion et une page principale. Après l'application de connexion va à la page principale. Ce que je veux, c'est si je rafraîchis la page pour rester dans la page principale et ne pas aller à la page de connexion. J'ai lu beaucoup de choses et j'ai essayé History Mechanish mais aucun résultat. Voici mon code:Comment empêcher l'application gwt d'accéder à la page de connexion après l'actualisation de la page?
@Override
public void onSuccess(Login result) {
if (result.getLoginCount() == 1) {
final VerticalPanel userPanel = new VerticalPanel();
Anchor logout = new Anchor("logout");
logout.addStyleName("user");
logout.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
loginPanel.setVisible(true);
tablePanel.setVisible(false);
addPanel.setVisible(false);
userPanel.setVisible(false);
}
});
Label user = new Label("Hi " + usernameBox.getText());
userPanel.add(user);
user.addStyleName("user");
userPanel.add(logout);
userPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
userPanel.setVisible(true);
usernameBox.setText("");
passwordBox.setText("");
RootPanel.get("user").add(userPanel);
loginPanel.setVisible(false);
tablePanel.setVisible(true);
addPanel.setVisible(true);
History.newItem("main");
History.addValueChangeHandler(new ValueChangeHandler<String>() {
@Override
public void onValueChange(ValueChangeEvent<String> event) {
if(History.getToken().equals("main")){
loginPanel.setVisible(false);
tablePanel.setVisible(true);
addPanel.setVisible(true);
}
}
});
}
i aussi essayé:
String historyToken = event.getValue();
if(historyToken.substring(0 , 4).equals("main")){
loginPanel.setVisible(false);
tablePanel.setVisible(true);
addPanel.setVisible(true);
} else {
loginPanel.setVisible(true);
tablePanel.setVisible(false);
addPanel.setVisible(false);
}
Est-ce la bonne façon de gérer rafraîchir la page avec History.addValueChangeHandler? J'apprécierais toute aide.
Ceci est un bon exemple https://github.com/ArcBees/GWTP-Samples/tree/master/carstore –
Séparez votre application en modules. La méthode de chargement des pages de connexion peut vérifier si l'utilisateur est déjà connecté et rediriger vers le module d'entrée principal. Ces redirections sont juste pour les fichiers html des modules. Facile. – WLGfx
@WLGfx voulez-vous dire avoir deux fichiers html? – Papadakis