問題タブ [jndi]
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.
jndi - Atg Dyanmo Application Server の外部 JVM から JNDI を介してオブジェクトにアクセスする
Atg Dyanmo Application Server の外部 JVM から JNDI を使用していくつかのオブジェクトにアクセスしようとしています。私は次のコードを使用しています -
このコードを同じ jvm で実行すると正常に動作しますが、他の jvm からこれを実行しようとすると動作しません。Rmi サーバーはポート 8860 で実行されています。クライアントからの要求を基本的に停止するサーバーの設定はありますか? これは私が得ている例外です -
09:46:25,963 INFO [STDOUT] コンテキストを取得しました - javax.naming.InitialContext@e3a921 09:46:26,010 INFO [STDOUT] ERR - javax.naming.NameNotFoundException: dynamo:/pearsonpoc/beans/UserInformation 09:46:26,010 INFO [STDOUT] 結果 - null
助けてください。ありがとう
deployment - Tomcat の複数のインスタンス間で JNDI を維持する
Tomcat アプリケーション サーバーの複数のインスタンスにまたがる JNDI リソースの維持を、人々がどのように管理しているのか疑問に思っています。たとえば、私のデータベース JNDI リソースを見てみましょう。/conf/context.xml ファイル内で宣言され、アプリの web.xml ファイルから参照されます。
その JNDI リソースは、開発ボックス、ステージング ボックス、および実動ボックスで個別に定義する必要があります。開発者/ステージング/プロダクション ボックスの新しいインスタンスをセットアップしたい場合はどうすればよいですか? つまり、起動する新しいインスタンスごとに、context.xml 内でリソース名を再作成する必要があるということですか? セットアップの観点からすると、これは、アプリ サーバーが間違った DB を指し始める原因となる人為的エラーが発生する可能性がある場所です。
プロジェクトの開発者の数と、最終的には使用する本番サーバーの数の両方をスケールアップするため、これは面倒で混乱を招くものであることがわかりました。
Tomcatを再インストールしてボックスをセットアップするたびに、セットアップの一部にするか、これを処理するセットアップスクリプトを作成しますか? または、これを簡単にする他のレベルの間接化がありますか?
java - Java Web サービスのデータソースをマップする方法
Web サービスでデータソースを使用する方法を理解しようとしています。jboss 4.2.3 サーバーに oracle-ds.xml をデプロイしましたが、データソースは JNDI 名 java:TestDS、java:WeatherDS などにバインドされているように表示されます。
initialcontext.lookup を実行しようとしましたが、見つかりません。web.xml でリソースを参照しようとしましたが、「java:WeatherDS には有効な JNDI バインディングがありません」というメッセージが表示されます...「java:/WeatherDS」、「WeatherDS」、「java:WeatherDS」、「jdbc」を参照しようとしました/WeatherDS" などがありますが、何らかの方法で参照名を jndi 名にマップする必要があると思います。
次のようなコード スニペットを見つけました。
ただし、このファイルがどこにあるのか、他に何が必要なのかはわかりません。確かにリソース参照が必要かどうかはわかりません。展開されたコードからデータソースにアクセスする方法について、より完全な情報を教えてくれる人はいますか? Web サービス用に接続がプールされるようにしようとしています。
deployment - 同じ EJB およびクラスの複数のバージョンを同じ JBoss サーバーにデプロイする
同じ JBoss サーバーにデプロイしたい複数の EJB を持ついくつかの個別のアプリケーション プロジェクト (EAR) があります。現在、一部のプロジェクトは、同じ EJB を使用している場合がありますが、バージョンは異なります。同様の状況で、一部のプロジェクトは、同じ「通常の」クラス (つまり、JNDI ルックアップなしで VM 内にロードされたクラス) の異なるバージョンを使用する場合があります。
OC4J では、これは問題ではなかったようですが、JBoss では、すべてが同じ「名前空間」(またはおそらくクラス ローダー) に存在するという印象を受けます。私はこの仮定で正しいですか?
基本的に、私がやりたいこと (または確実にしたいこと) は次の 2 つです。
EJB の JNDI ルックアップを実行するクライアントから、EJB の正しいバージョンが返されるように、EJB が存在するアプリケーションを示すことができるようにしたいと考えています。
EJB 内からクラスをインスタンス化するとき、そのクラスが、EJB と同じアプリケーション (EAR) でデプロイされたものであることを確認したいと考えています。
EJB の「分離」プロパティを構成できると読んだと思いますが、2 番目のポイントを解決できる可能性があると思いますか?
java - Tomcatでプールせずにデータソースを作成する方法
JNDIコンテキストを使用して、Tomcatのcontext.xmlファイルにJDBCドライバーのデータソースを次のように作成します。
デフォルトでは、TomcatはDBCPデータソースファクトリと作成されたプーリングデータソースを使用します。私たちが使用する特定のデータベースとドライバーは、すでに下位レベルでのプーリングをサポートしており、余分なプーリングは実際にパフォーマンスを低下させます。このようなJNDIリソースを使用して(プールせずに)基本的なデータソースを作成して、最小限の構成変更で異なるデータベースを切り替えることができるようにする方法はありますか?
独自のデータソースファクトリを作成することも、他のドライバのファクトリを使用してこれを実現することもできますが、より簡単なソリューションを探しています。
tomcat - Tomcat-6.0.18、拡張ディレクトリ構造、context.xml のデータソース
環境:
- Tomcat-6.0.18
- オラクルデータベース
- JDK-1.6.0_1
-1- context.xml ia war ファイル - 正常に動作します
my-application.war/META-INF/context.xml :
重要:この場合、 context.xmlは戦争アーカイブに配置されます。アプリケーションをデプロイした後、問題なくデータベースにアクセスできます
-2-展開されたディレクトリ構造のcontext.xml (機能しません) :
my-application/META-INF/context.xml (同内容)
重要: この場合、context.xml は展開されたディレクトリ構造に配置されます。展開後、アプリケーションはデータベースにアクセスできません。例外メッセージ: javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
私の質問:
ケース 2 で tomcat (またはアプリケーション) を構成するにはどうすればよいですか?
jboss - JNDIなしのJMS?
Java 1.4 を使用して WebSphere 6.01 でポートレットを実行しています。JMS メッセージを JBoss 5 キューに送信し、Java 5 (または 6 かもしれませんが、1.4 より新しいことは確かです) を実行したいと考えています。ポートレットのクラスパスに JBoss クライアント jar を含める必要があり、それらは Java 1.5 であるため、JNDI を使用して接続しようとしても機能しません。そのため、InitialContext を作成しようとすると、サポートされていないメジャー/マイナー エラーが発生します。
JNDI を使用せずに JBoss に直接接続できますか? または、私が考えられないこの問題を回避する方法はありますか?
hibernate - JBoss から hibernate-entitymanager を JTA で動作させるにはどうすればよいですか?
コンテナ外 EJB テスト用のツールを構築しています。その中でHibernateのEntityManagerを正常に実行できました。今は JTA と統合して、トランザクションを厳密に制御できるようにしたいと考えています。
私が直面している問題は次のとおりです。Hibernate が JBossTS (JBoss の JTA 実装) で正しく動作するには、JNDI が必要なようです。UserTransaction
しかし、JNDI に s を登録する方法がわかりません。
ここで何が欠けていますか?JBossTS を JBoss の Hibernate で動作するように設定するにはどうすればよいですか? これに関するチュートリアルはありますか?
deployment - リモート マシンが実行されていないときに、リモート JMS キューの ConnectionFactory を初期化する方法は?
JBoss 4.0.5、JBossMQ、および Spring 2.0.8 を使用して、リモート JMS キュー リソースに依存する Bean をインスタンス化するように Spring を構成しようとしています。私が遭遇したすべての例は、JNDI を使用してリモートの ConnectionFactory オブジェクトなどを検索することに依存しています。
私の問題は、メッセージをリモート キューに入れるマシンを起動しようとすると、リモート マシンが起動していない場合、JNDI ルックアップが単に失敗し、展開が失敗することです。展開の残りをブロックせずに、バックグラウンドでこのオブジェクトのルックアップを試行し続けるように Spring を取得する方法はありますか?