web-dev-qa-db-fra.com

Erreur Weblogic 403 - Interdit

J'essaie de lancer une application Java EE sur weblogic. L'application fonctionne bien sur Tomcat. J'ai personnalisé le fichier war pour inclure weblogic.xml. Ce fichier comprend le code suivant: -

<container-descriptor>
    <show-archived-real-path-enabled>true</show-archived-real-path-enabled>
</container-descriptor>

J'ai également modifié la configuration dans le fichier de propriétés de l'application pour refléter le port sur lequel le conteneur écoute. Server.port = 7001 Server.modjk.enabled = false

Mon fichier web.xml contient le code suivant: -

<servlet>
    <servlet-name>olatservlet</servlet-name>
    <servlet-class>org.olat.core.servlets.OLATServlet</servlet-class>

    <!-- Set the load order -->
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>olatservlet</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>olatservlet</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

Lorsque j’exécutais initialement le fichier war de weblogic 11g, j’obtenais une exception nullpointer. Cependant, je pouvais déployer le fichier lorsque je retirais XerceImpl.jar du dossier lib. Maintenant, je suis capable de déployer l'application avec succès. Je nomme la racine de contexte dans weblogic le nom du fichier war. Lorsque j'essaie d'ouvrir le lien généré par weblogic dans son onglet de test, le message d'erreur suivant s'affiche: -

Erreur 403 - Interdit

À partir du protocole de transfert hypertexte RFC 2068 - HTTP/1.1:

10.4.4 403 interdit

Le serveur a compris la demande, mais refuse de l'exécuter. L'autorisation n'aidera pas et la demande NE DEVRAIT PAS être répétée. Si la méthode de la demande n'était pas HEAD et que le serveur souhaite rendre publique la raison pour laquelle la demande n'a pas été remplie, il DEVRAIT décrire le motif du refus dans l'entité. Ce code d'état est couramment utilisé lorsque le serveur ne souhaite pas révéler exactement pourquoi la demande a été refusée ou lorsqu'aucune autre réponse n'est applicable.

Je me demandais si quelqu'un pourrait me dire comment résoudre ce problème.

12
user1439090

Je sais qu'il est très tard pour répondre à cette question. Mais je réponds avec mon peu de connaissances dans l'espoir que cela aidera quelqu'un.

Vous devez définir la page de départ dans welcome-file-list dans le fichier web.xml.Par exemple, si client.jsp est la page à afficher lorsque vous exécutez votre projet, la première ligne de welcome-file-list dans web.xml le fichier doit être

<welcome-file-list>
    <welcome-file>client.jsp</welcome-file>
    <welcome-file>index.html</welcome-file>
 </welcome-file-list>
8
user3923983

Je sais que c'est très tard, mais je rencontre aussi le même problème et, après avoir cherché Google, j'ai trouvé la raison pour laquelle et j'ai décidé de le publier uniquement pour toute autre personne susceptible de rencontrer le même problème. Cette page Web m'a donné l'indice:

Erreur 403 expliquée

Par défaut, WebLogic désactive la navigation dans les répertoires. Par conséquent, si vous avez un site Web (par exemple, exemple.com) avec un index.html comme page d'accueil et que vous tapez 

http://localhost:7001/example.com, 

par défaut, weblogic ne récupérerait pas automatiquement la page d'accueil pour vous. Vous devez taper le chemin complet, c'est-à-dire 

http://localhost:7001/example.com/index.html.

Soit cela, vous devez activer la navigation dans les répertoires de weblogic. En tout cas, c'est ce qui m'est arrivé.

3
Rhycce

Si vous manquez l'ajout de la configuration de sécurité correspondante dans weblogic.xml, vous obtiendrez l'erreur "403 interdite. Le serveur a compris la demande, mais refuse de l'exécuter.".

Assurez-vous donc qu'en plus d'avoir configuré votre web.xml avec " security-contrainte ", " login-config " et " security-role "paramètres, vous avez également" security-role-assign "configuration dans weblogic.xml, comme suit:

<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app xmlns:wls="http://xmlns.Oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://Java.Sun.com/xml/ns/javaee http://Java.Sun.com/xml/ns/javaee/web-app_3_0.xsd http://xmlns.Oracle.com/weblogic/weblogic-web-app http://xmlns.Oracle.com/weblogic/weblogic-web-app/1.8/weblogic-web-app.xsd">
     <wls:weblogic-version>12.2.1</wls:weblogic-version>
     <wls:context-root>SomeApp</wls:context-root>
     ***************
     ***************
     <wls:security-role-assignment>
         <wls:role-name>someGroupeDefinedInWebLogicServer</wls:role-name>
         <wls:principal-name>someUserDefinedInWebLogicServer</wls:principal-name>
     </wls:security-role-assignment>
     ***************
     ***************
</wls:weblogic-web-app>

Espérons que ces hauts.

2
sergeyan

Cela pourrait ne pas être lié à la question, mais pour ceux qui viennent de Google qui tentent d'ouvrir un site Web: Ajouter HTTPS: // dans l'en-tête du lien m'a aidé dans mon cas. J'ai eu cette erreur en accédant à un site Web de vol. Peut-être aider les autres utilisateurs de Google à résoudre le même problème. 

0
Fernando Wittmann

J'ai eu le même problème avec l'un des fournisseur de services que j'ai créé.

J'essayais d'y accéder via mon navigateur Web et je ne trouvais pas la raison pour laquelle j'avais ce message d'erreur tant que je n'avais pas compris qu'effectivement le serveur avait bien compris la demande, mais pour que la réponse vous soit fournie, vous devez spécifier le bon format (ou type de média) pour pouvoir le lire et le serveur vous donnera la réponse.

Pour résumer, le fournisseur de services fournissait une réponse "application/xml" pendant que je demandais un "application/html" jusqu'à ce que je construise mon propre client client} _ qui attendait un "application/xml _" puis le serveur a accepté de répondre à la réponse.

0
Akyo

Pouvez-vous s'il vous plaît vérifier votre fichier web.xml, ne suit pas la syntaxe xml, signifie fichier xml valide, même une petite erreur comme extra <ou> cause ce genre de problème (j'ai rencontré le même)

0
V.Shanmugasundaram