2012-06-14 54 views
10

weblogicでJava EEアプリケーションを実行しようとしています。アプリケーションはTomcat上で正常に動作します。私はweblogic.xmlを含めるようにwarファイルをカスタマイズしました。このファイルには、次のコードが含まれています: -Weblogic Error 403 - Forbidden

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

私はまた、コンテナがリッスンしているポートを反映するようにアプリケーションのプロパティファイルの設定を変更しました。 はserver.port = 7001 server.modjk.enabled = falseを

私のweb.xmlファイルには、次のコードが含まれます。 - 私が最初のWebLogic 11グラムのwarファイルを実行していたとき

<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> 

を、私がいましたnullpointer例外が発生します。しかし、libフォルダからXerceImpl.jarを削除したときにファイルを展開することができました。今私はアプリケーションを正常に展開することができます。私はweblogic内のコンテキストルートをwarファイルの名前として指定します。私はそのテスト]タブでWebLogicによって生成されたリンクを開こうとすると、私は次のエラーを取得する: -

エラー403 - HTTP/1.1 - RFC 2068ハイパーテキスト転送プロトコルから

を禁止:

10.4.4 403禁止されました

サーバは要求を理解しましたが、それを実行することを拒否しています。認可は役に立たず、要求は繰り返されてはならない(SHOULD NOT)。要求メソッドがHEADでなく、サーバーがなぜ要求が満たされなかったのかを公開することを望むならば、それはエンティティにおける拒絶の理由を記述すべきです(SHOULD)。このステータスコードは、サーバーが要求が拒否された理由を正確に明らかにしたくない場合、または他の応答が適用されない場合によく使用されます。

誰かがこの問題を解決する方法を教えてくれるのだろうかと思っていました。

+0

おそらく遅くなりましたが、セキュリティログとサーバーログは見たことがありますか?アプリケーションにアクセスしようとすると、これらのファイルで例外が発生しますか? –

答えて

0

あなたのweb.xmlファイルをチェックしてくださいすることができが、XML構文を次の有効なXMLファイル、余分な<など小さなエラーを意味しません>この種の問題を引き起こす

(私は同じに遭遇しています)
+1

xmlファイルを確認しましたが、errrorの構文が見つかりません。さらに、コードはTomcatで正常に動作します。 – user1439090

3

私はこれが非常に遅いと知っていますが、私も同じ問題にぶつかり、グーグルでグーグルで回った後、同じ理由で他の誰かのために投稿することにしました。あなたのホームページとしてのindex.htmlであなたがウェブサイトを持っている場合

デフォルトで

Error 403 explained

は、WebLogicが故にディレクトリの参照を無効にします(たとえばexample.com)、あなたは

http://localhost:7001/example.com, 
を入力します。このWebページでは、私にヒントを与えました

デフォルトでは、weblogicは自動的にホームページを取得しません。あなたは、あなたは、WebLogicのディレクトリブラウジングを有効にする必要があり、完全なパスすなわち

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

どちらかそれを入力する必要があります。とにかく、これは私に起こったことです。

5

私はこの質問に答えることが非常に遅いことを知っています。しかし、私はそこに誰かを助けるという希望で私の小さな知識で答えています。

web.xmlファイルのwelcome-file-listに開始ページを定義する必要があります。たとえば、クライアントの場合。JSPがあなたのプロジェクトを実行すると、web.xmlファイル内のウェルカム・ファイル・リストの最初の行は

<welcome-file-list> 
    <welcome-file>client.jsp</welcome-file> 
    <welcome-file>index.html</welcome-file> 
</welcome-file-list> 
+0

私のweb.xmlファイルの編集で問題を解決できました。私の場合はjsfの設定でした。 '
<サーブレット名> Facesサーブレット javax.faces.webapp.FacesServlet 1
は のが顔サーブレット * .xx ' – ferreirabraga

-1

する必要があります表示されるページであるあなたは、あなたのweb.xmlファイルの末尾にこのコードを追加することができます

<welcome-file-list> 
    <welcome-file>faces/my_page.jspx</welcome-file> 
</welcome-file-list> 

か、JDeveloperを使用している場合は、[概要]タブ、ページに、あなたがdefalutでオープンになりたいページへのルートを追加する歓迎のファイルに行くことができます。 また、ページ名の前に "faces /"を追加して、これが作成したページへのデフォルトルートであることを示します。

2

weblogic.xmlに対応するセキュリティ設定を追加しないと、「403禁止」というメッセージが表示されます。サーバは要求を認識しましたが、それを実行することを拒否しています。 "エラー。したがって

"セキュリティ制約"、 "ログイン-config設定" と "のsecurity-role" 設定でごのweb.xmlを設定したほか、あなたは "も持っていることを確認してくださいセキュリティに次のような役割割り当て」構成 weblogic.xmlので、:

<?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> 

・ホープ、このhepls。