2012-03-12 13 views
2

私はのXPageアプリケーションの小さな問題を抱えていると、誰かが 解決策があることを願っています:はaclエントリを変更した後にデータベースをクリーンアップする必要がありますか?

は、まずいくつかの概要: 私は4つのユーザーの役割を持つACLがあります:管理者、ユーザー、私にはアクセス

いいえ場合によっては、ユーザロールをユーザから管理者に変更します。 が開くのXPageの魔女は、Javaクラスを使用し、私は次のようなエラーメッセージ

エラー500 HTTPWeb Serverが得た:私は「クリーン」プロジェクトなければならない。この問題を解決するために、例外

を処理しませんでした。

誰もクリーニングせずにこれを解決する方法がありますか?私はユーザーがデザイナーなしでこれをどのように解決できるかということですか?

私はここで問題を解決し、「クリーンでプロジェクトをビルド」する方法を

を理解するであろう、私はACLを変更した後、得た完全なエラーです:

The runtime has encountered an unexpected error. 
Error source 
Page Name:/ProjectsByName.xsp 
Control Id: _id60 

Exception 
com.ibm.xsp.exception.EvaluationExceptionEx: Error while executing JavaScript computed expression 
Error while executing JavaScript computed expression 
Script interpreter error, line=1, col=27: [ReferenceError] 'de' not found 

JavaScript code 

1: var exUtils = new de.itwu.RessourceUtils(); 
2: 
3: return exUtils.computeCountrybox(); 

► Stack Trace 

スタックトレースが空 ANですJavaクラスは適切なパッケージでCode/Javaにあります。 クリーンの後すべて正常に動作します...サーバー上でHTTPタスクを再開したり、ホールサーバーを再起動するようなものはありません。

+0

aclを更新してxpageを開くと、ログインするのか、ページを更新するだけですか? – jjtbsomhorst

+0

私は豆を使用している自分のXPagesプロジェクトのACLを更新した後、 "javax.faces.FacesException:クラスをインスタンス化できません"というメッセージが表示されました。 –

+0

500は、XPageに問題が発生したときに返される一般的なエラーコードであり、何かを意味する可能性があります。アプリケーションのプロパティで標準エラー報告を有効にすると、完全なスタックトレースを見ることができます...これは、何が問題になったのかを具体的に教えてくれるだけでなく、 。 –

答えて

1

JavaクラスがJava設計要素の場合は、web-inf\に移動します。

+0

ああ私の問題を解決してくれてありがとう –

0

これは、データベースの更新を使用しているIDと関係していると思います。 ACLの変更により、dbのプロパティの1つの署名者が変更されます。署名者には正しい権限がありません。あなたは、サーバのデフォルトのセキュリティ 設定を変更する必要があり、のXPageを実行するにはAn Intro to using xpages

:私は、次のURLを確認する必要があることだと思います。サーバーのnames.nsf - >構成 - >サーバー - > すべてのサーバー文書 - > - >セキュリティ - >エージェントに署名するか、または 呼び出し元に代わって実行するXPagesに移動します。 がXPageを最後に保存した人物の名前を追加します。私たちの例では、それはあなたでしょう。

2

HTTPタスクを再試行してください。注:コンソールコマンド経由ではなく、管理GUIを介してこれを行う場合、前者は完全にタスクをシャットダウンして、もう一度それを開始

restart task http 

ない

tell http restart 

を発行するようにしてください。後者は単に特定の構成設定をリフレッシュするだけです。

タスクを完全に再起動すると、JVMが破棄され、ユーザーの権限をキャッシュしているクラスインスタンスがすべて解放されます。 JVMにキャッシュされたクラスがなくなったため(新しいバージョンに置き換えられたため)、HTTPタスクを再起動すると、Designerを必要とせずにすべてのアプリケーションで同じことが行われるため、プロジェクトをクリーンアップすると、アプリケーションごとに強制的に実行されます。

1

データベースでsessionAsSignerを使用する場合は、一貫性のある署名者によってデータベースに署名する必要があります。 ACLの変更がデータベースの署名に影響する場合、署名者に競合が発生している可能性があります。その場合は、プロジェクトをクリーンアップしても効果はありません。

データベースに再度署名を試みてください。マネージドBeanを使用している場合は、クラスファイルを再構築するためにcleanを実行する必要があります。私は1つのシナリオでその作業を見てきました。

詳細なログが表示される場合があります。標準のDominoインストールでは、C:¥Program Files¥IBM¥Lotus¥Domino¥data¥domino¥workspace¥logsにあります。

0

Notesクライアントからcache.ndkを削除します。

データベースは、サーバー使用されている場合は、サーバーのメモリをキャッシュ明確なため

dbcache flush 

...

それは両方で動作していない場合は、HTTPを再起動するか、サーバーを再起動する必要がありますかクライアント。

関連する問題