2012-05-14 2 views
2

古いJava Webアプリケーションを復活させようとしていますが、私のJDBCRealmが定義された古いglassfish設定ファイルが失われました。今私は古い戦争をTomcat 7に配備しようとしており、ユーザーを認証するためにJDBCRealmを再作成する必要があります。このようなことに取り組んだ当初から、私はそれを行う方法を覚えていないので、私は公式の文書を見ましたが、oracleのconnectionURLはありません。私は自分のデータベースが以前と同じようにユーザとロールテーブルで設定されていると思います。oracleデータベースを持つtomcat webappの古いJDBCRealmを設定する必要があります

glassfish 3で実行された古い戦争をTomcat 7でも再利用できますか?これにはsun-web.xmlファイルが含まれています。それはグラスフィッシュのためだけですか?

私は、フォーム認証方式を使用しています - ここでSは私のweb.xmlの抜粋である:ここで

<login-config> 
<auth-method>FORM</auth-method> 
<realm-name>jdbc/myapp/realm</realm-name> 
<form-login-config> 
    <form-login-page>/loginPage.jsp</form-login-page> 
    <form-error-page>/loginError.jsp</form-error-page> 
</form-login-config> 

私のレルムスニペットは、server.xmlファイルから次のとおりです。

<Realm className="org.apache.catalina.realm.LockOutRealm"> 

    <Realm className="org.apache.catalina.realm.UserDatabaseRealm" 
     resourceName="UserDatabase"/> 

    </Realm> 


    <Realm className="org.apache.catalina.realm.JDBCRealm" 
driverName="oracle.jdbc.OracleDriver" 
connectionURL="jdbc:oracle:thin:@localhost:1521:XE" 
    userTable="users"userNameCol="username" 
userCredCol="wpassword"userRoleTable="roles"roleNameCol="rolename"/> 

connectionURLは正しく見えますか?他に何が間違っているのでしょうか?今すぐログインしようとすると、決してパスワードを受け入れません。私はいつも私のログインエラーのページを取得する(完全なアプリケーションのクラッシュではない)。

最新レルム版:

<Realm className="org.apache.catalina.realm.JDBCRealm" 
     driverName="oracle.jdbc.OracleDriver" 
     connectionURL="jdbc:oracle:thin:@localhost:1521:XE" 
     connectionName="uname" 
     connectionPassword="pword_33" 
     userTable="USERS" 
     userNameCol="USERNAME" 
     userCredCol="WPASSWORD" 
     userRoleTable="ROLES" 
     roleNameCol="ROLENAME" /> 

答えて

1

接続URLは、データベースのsidはXEであると仮定して、[OK]を探します。あなたはconnectionName属性とconnectionPassword属性がないようです。 docsに太字で記載されている属性は必須です。

+0

ありがとう、私は家に帰るときにそれを試してみます。 –

+0

それを試しましたが、まだ運がありません、上記の私の領域の最新版を見てください。 –

+0

上記の設定のいずれかが間違っています(あなただけが知ることができます)。または使用しているユーザー名とパスワードがデータベースに一致していないか、必要な役割を持っていません。 org.apache.catalina.authenticatorパッケージのデバッグロギングを有効にすると、コンテナ管理の認証を使用していると仮定して、どこがうまくいかないかのヒントを得ることができます。 –

関連する問題