問題タブ [websphere-7]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JPAマネージャBeanをインスタンス化する「正しい」方法は?
私は IBM RAD を使用して、いくつかの JPA エンティティーを開発し、それらから対応する JPA マネージャー Bean を開発しています。Manager Bean (RAD によって生成される) には、次のメンバーがあります。
ステートレス EJB (3.0) からこのマネージャー Bean を正しくインスタンス化する (または参照を取得する) 方法がわからないので、EntityManagerFactory
インスタンスを渡すことができるマネージャー Bean にコンストラクターを追加しました。EntityManagerFactory
次のように `@PersistenceUnit' アノテーションを使用して、EJB でへの参照を取得します。
これはかなり不必要に思えます。JPA マネージャー Bean への参照をすぐに取得できるように、コンテナー (私の場合は Websphere 7.0) に何らかの方法でこれを「ブートストラップ」するように指示する方法が必要だと思います。それは...ですか?
更新: 十分に詳しく説明していないようです。そのために残念。
- 関連する 3 つのオブジェクトがあります。JPA エンティティ、JPA エンティティ マネージャ、およびステートレス EJB です。
- JPA Entity Manager クラス (EJB ではない) は RAD によって作成され、それに便利なメソッド (名前付きクエリ) があります。member も定義されてい
@PersistenceUnit private EntityManagerFactory emf
ます。直接使用できることはわかっていますEntityManager
が、便利なメソッドに MyEntityManager を使用したいと思います。 - 上記のアノテーションを使用して、ステートレス EJB で EntityManager または EntityManagerFactory への参照を取得できます (また、Bozho が提案するように)。
- ステートレス EJB で JPA Entity Manager への参照を取得したいと考えています。それを「新規」にすると (new MyEntityManager())、emf フィールドは null になります。回避策は、EJB で @PersistenceUnit フィールドを宣言し、それを JPA Entity Manager に渡して使用することです。
- 考えてみれば、JPA Entity Manager を EJB として宣言して、それで完了できるかもしれません... (これもまた不必要に思えますが)。おそらく行方不明になっている PersistenceContext.getJpaManager(MyEntityManager.class) の行に沿ったメソッドがあると思いました。
java - j2ee フォームベースの認証でロールごとにログインできるユーザーを制限する
ここなどのさまざまな場所で提供されている指示に従って、webapp で宣言型の J2EE フォームベースの認証を使用しています: http://java.dzone.com/articles/understanding-web-security
j_security_check によるログインでは、レルム内のすべてのユーザーが認証 (ログイン) できるように見えますが、ロールはチェックされません。認可チェックは、ユーザーがセキュリティ上の制約のあるページにアクセスした場合にのみ実行されるようです。
したがって、私のアプリでは、ユーザーは領域にいるため正常にログインできますが、安全なページにアクセスすると、醜い「エラー 403: AuthorizationFailed」メッセージが表示されます。
認証を特定の役割を持つユーザーに制限する方法はありますか? または、ユーザー領域に必要な役割を持つユーザーのみが含まれていることを確認する必要がありますか?
コードに関しては、web.xml に次の宣言があります。
ただし、必要な役割については何も述べていないため、login.jsp に移動するすべてのユーザーは、連なりであれば正常にログインできます。
次に、ユーザーが url-pattern に一致するページのいずれかにアクセスすると、次のようになります。
それは役割がチェックされるときです。
ロール「simpleWebAppUser」はアプリケーション全体であり、ログインを成功させる前に、ユーザーがこのロールを持っていることを確認したいと思います。
Windows XP/2000/2003 で、O/S ユーザー リポジトリを使用するように構成された WebSphere 7.0 を使用しています。
websphere - Websphere - AJAX POST リクエスト エラー
ajax を使用してクライアントからサーバーにデータを JSON 形式で送信していますが、以下のエラー メッセージが表示されます。多くの人がこの問題を解決しているように見えるので、他の誰かがこの問題を解決できましたか?
jpa - JDBC ドライバーまたは DataSource クラス名を ConnectionDriverName プロパティの「解決方法」で指定する必要があります。
概要 : これは、Websphere 7 Server & JPA 1.0 & EJB & Derby Database による私の最初のチュートリアルです。
最初: データ ソース名は EJB3BANK で、ターゲット データベースは SHOP です。
2番目:これはpersistence.xmlファイルです
3 番目: Itemエンティティ クラスのこの部分コード
4 番目: これがビジネス クラスのCartBeanです ここが問題の始まりです
これはエラー メッセージです。JDBC ドライバーまたは DataSource クラス名を ConnectionDriverName プロパティで指定する必要があります。この問題を解決するにはどうすればよいですか?
java - ICEFaces 1.7.2 および Websphere Application Server 7
最近、WAS6 から WAS7 に移行しました。WAS6 では問題なく動作していたアプリケーションの 1 つが、次のエラーで WAS7 では動作しません。
そのエラーを出しているコードは
WAS6 と WAS7 の contextfactory でアプリをデバッグしているときに、次の情報を見つけました: com.ibm.faces.context.MultipartFacesContextFactoryImpl - JSF-IBM.jar - WAS7 contextfactory: com.icesoft.faces.context.FacesContextFactoryImpl - icefaces.jar - WAS6
共有ライブラリを作成してそれをEARに関連付け、クラスローダースキームを「親が最後」から「親が最初」に変更するなど、いくつかの提案を試みました。
しかし、私が何をしても、WAS7 では、contextFactory の値として MultipartFacesContextFactoryImpl を取得しています。
1.7.2 を 1.8 バージョンの icefaces.jar と icefaces-comps.jar に置き換えようとしました。しかし、それでも同じ結果です。
助けてください。詳細が必要な場合はお知らせください。
web-services - WebSphere JAX-WS クロスセル認証
JAX-WS を使用して WPS の HumanTask API を使用するフロントエンド Web アプリケーションを構築したいと考えています。この Web アプリケーションは、特定のユーザーの現在のタスクを照会したり、他のユーザーが以前に要求していないタスクを要求したり、タスクを完了したりできる必要があります。この Web アプリケーションは、HumanTask サービスを提供するセルとは異なるセルの WAS 7.0 にデプロイされます (現在、別の WPS インスタンスを WAS として使用していますが、最終的には WPS 機能のない単純な WAS になります)。以下の手順で LTPA 生成鍵を同期しました。
- 1 つのセルにログインする
- [セキュリティ] > [グローバル セキュリティ] に移動します。「認証」の下にある「LTPA」をクリックします。
- 「クロスセル シングル サインオン」の下
- パスワードを設定する
- パスワードを確認する
- LTPA キーがエクスポートされるファイル名を入力します
- 「キーのエクスポート」をクリックします
- ログアウト
- 生成されたファイルを他のサーバーにコピーします
- 他のセルにログインする
- [セキュリティ] > [グローバル セキュリティ] に移動します。「認証」の下にある「LTPA」をクリックします。
- 「クロスセル シングル サインオン」の下
- 以前のパスワードを入力
- パスワードを認証する
- エクスポートされた LTPA キーを含むファイル名を入力します
- 「キーのインポート」をクリックします
- サーバーを再起動する
シンプルな UI と、HumanTask JAX-WS サービスを使用する Web サービス クライアントを備えた概念実証として、GWT を使用したシンプルな Web アプリケーションを開発しました。この Web アプリケーションは、Siteminder オーセンティケーターの背後で保護されています (最初に Web アプリケーションに入るとき、Siteminder エージェントは資格情報を要求する Web フォームにリダイレクトします)。Web サービス クライアントは JAX-WS 標準に従って開発されました。追加の依存関係は追加されていません。WebSphere JAX-WS 実装 (Apache Axis2) に依存しています。展開したら、運が悪かった2つのシナリオをテストしました。
シナリオ A :
- デフォルトでは、WPS の HumanTask サービス プロバイダーはポリシー セット「BPC Web サービス」に関連付けられており、デフォルトのポリシー セットのバインドとポリシー セットの共有は無効になっています。
- サービス プロバイダーと同じポリシー セットを使用するように、HumanTask サービス クライアントを構成します。
カスタム Web アプリケーションにログインします。現在のタスクを照会しようとすると、次の例外が発生します。
/li>
サービス プロバイダー側にエラー メッセージはありません。
シナリオ B :
- WPS の HumanTask サービス プロバイダーの設定を変更して、HTTP GET によるポリシー セットの共有を有効にします。このようにして、サービス プロバイダーの WSDL にポリシー セットに関する情報が含まれます。
- HTTP GET を使用してプロバイダーからポリシー セットを取得するように、サービス クライアントでポリシー セットの構成を変更します。
カスタム Web アプリケーションにログインします。現在のタスクを照会しようとすると、次の例外が発生します。
/li>
前の例外が報告されるポイントに到達する前に、サービス クライアント ログに次の警告が表示されます。
サービス プロバイダーのログに、次のエラーが表示されます。
そして、一連の FFDC が生成され、サービス クライアント側で発生したのと同じ例外が報告されます。
私たちを助けることができる人は素晴らしいでしょう!
jsf - Websphere 7 上の JSF 1.1
JSF 1.1 コンポーネントを使用して開発されたアプリケーションを使用しています。タグ ライブラリ開発チームは JSF 1.2 をサポートしないため、Webshere 7 でアプリケーションを実行する必要があります。websphere 7 にはデフォルトで JSF 1.2 が付属しています。最初は、アプリケーションをデプロイできましたが、アクセスできませんでした。後で、「Precompile JSP」オプションを削除するためにどこかを読みました。それを行ったところ、アプリケーションにアクセスできました。初めてアプリケーションにログインできますが、ログアウトしてから再度ログインしようとすると、例外が発生します。例外はjavax.faces.el.EvaluationException: Exception while invoking expression #{login.authenticate}
ここで、login は私の Bean 名で、authenticate はメソッドです。さらに、「プリコンパイルjsp」オプションを選択したままにするために、他の方法が必要です。共有ライブラリについてどこかで読みましたが、実際にそれを実装する方法がわかりません。私の war ファイルには、JSF 1.1 の jsf-api.jar と jsf-impl.jar が含まれています。
oracle - WAS7 および Oracle DB Kerberos の DataSource
「外部的に識別された」として作成され、Kerberos経由でログインするOracle DBにユーザーがいます。このユーザーの下で接続を確立するように WAS7 DataSource を構成することは可能ですか?
Oracle でユーザーを「パスワードで識別」として作成した場合は問題ありません。WAS7 JAAS J2C 認証データで作成し、「コンポーネント管理の認証エイリアス」として設定するだけです。
java - 環境をWebsphere7でJDK1.5に制限してWARを起動するにはどうすればよいですか?
Webpshere7でJDK1.5(JDK 1.6に準拠していない)で実行する必要のある戦争を開始できるかどうかを知りたいです。