2009-12-15 14 views
0

J'ai un web.xml qui ressemble à:Servlet authentification web.xml page d'accueil

<web-app> 

<welcome-file-list> 
    <welcome-file>index.jsp</welcome-file> 
</welcome-file-list> 

<security-constraint> 
    <web-resource-collection> 
    <web-resource-name>Default</web-resource-name> 
    <url-pattern>/</url-pattern> 
    </web-resource-collection> 
    <auth-constraint/> 
</security-constraint> 

<security-constraint> 
    <web-resource-collection> 
    <web-resource-name>Index page</web-resource-name> 
    <url-pattern>/index.jsp</url-pattern> 
    <url-pattern>/</url-pattern> 
    <http-method>GET</http-method> 
    <http-method>HEAD</http-method> 
    </web-resource-collection> 
</security-constraint> 
... 

Nous voulons refuser l'accès aux ressources par défaut, et préciser les ressources que nous voulons permettre l'accès.

Si un utilisateur se rend à http://localhost:8080/ ils obtiennent un accès refusé, cependant, si l'aller à http://localhost:8080/index.jsp il leur permet dans. Les deux URL doivent afficher la même page, et les deux devraient être autorisés. Qu'est-ce que je fais mal ici?

Répondre

4

Je pense que la chose à faire sera de spécifier /* pour attraper la valeur par défaut, et faire des modèles spécifiques comme /somethingElse.jsp pour intercepter toutes les autres pages qui ne sont pas index.jsp. J'espère que votre «répertoire» de haut niveau n'est pas très encombré.

+2

Vous n'avez pas besoin de réfléchir. Vous avez raison :) – BalusC

+2

Je vais prendre cette déclaration, l'imprimer en grosses lettres, l'encadrer et l'accrocher à mon bureau :) –

Questions connexes