2009-11-09 6 views
1

Je travaille avec javascript et voici ce que je suis en train de le faire: 1. Envoyer une demande get qui ressemble à « http://localhost:8080/myapp/verify.htm?verifyId=Agkvhs »Javascript redirect

Mes demandes atteint mon verify.jsp où je javascript qui fait des choses spéciales et devrait ensuite rediriger vers une autre URL WITH the verifyId. Mon code ressemble à ceci:

function saveAndRedirect() { 
    var verifyId = "<%=request.getParameter("verifyId")%>"; 
    var redirectUrl = "registrationVerify?verifyId=" + verifyId; 
    window.alert("Got value " + redirectUrl); 
    window.location = redirectUrl; 

} 

Toutefois, cela ne fonctionne pas. J'ai une alerte qui me montre l'URL correcte avec le paramètre ajouté comme je l'espère. Dans mon fichier web.xml J'ai un mappage de servlet avec les éléments suivants:

<servlet-mapping> 
    <servlet-name>RegistrationVerificationServlet</servlet-name> 
    <url-pattern>/registrationVerify*</url-pattern> 
</servlet-mapping> 

Cette cartographie a été workign avant apposé le VerifyID à l'URL, je pouvais voir mon beign demande redicted au servlet, depuis que j'apposé ce paramètre ne fonctionne pas. Des idées très appréciées!

Si ce n'est pas le moyen idéal de le faire, s'il vous plaît laissez-moi savoir une alternative.

Merci

+1

* Cependant cela ne fonctionne pas *, pouvez-vous s'il vous plaît élaborer cela? Qu'est-ce qui se passe à la Page blanche? Erreur page? La servlet est-elle invoquée? Le paramètre est-il manquant dans la carte de requête? Que voyez-vous dans la barre d'adresse du navigateur maintenant? Etc. – BalusC

Répondre

2

Votre url-pattern est suspect.

utilisation soit

/registrationVerify 

pour couvrir le chemin exact ou

/registrationVerify/* 

pour recouvrir la partie de pathinfo. Notez que vous n'avez pas besoin explicitement du dernier pour pouvoir accepter les paramètres de requête, si vous y aviez pensé.

+0

Cela a fonctionné comme un charme :-) Merci, j'apprécie! – msharma

0

Ceci est un peu long, mais cette ligne change-t-elle d'aide?

window.location=window.location.href+redirectURL;