問題タブ [glassfish-embedded]
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.
jakarta-ee - Heroku アプリケーション サーバーまたはサーブレット コンテナー上の Java フル EE (ベスト プラクティス)
Heroku で「完全な」Java EE アプリケーションが必要だとしましょう。「より良い」方法は何でしょうか?(パフォーマンスとメモリ使用量に関して)
組み込みグラスフィッシュサーバー
組み込みの桟橋を使用し、フレームワークなどで「EE機能」を構築します。
私の質問が十分に明確であることを願っています。事前に感謝します。
logging - maven-embedded-glassfish-plugin を使用して組み込み Glassfish に logging.properties を指定する
埋め込み Glassfish の Maven 構成を含むプロジェクト テンプレートを使用します (maven-embedded-glassfish-plugin を使用)。ロギングを有効にする必要がありますが、Glassfish でどのロギング エンジンが有効になっているかさえわかりません (テンプレートを作成していないため)。
テンプレートは依存関係としてslf4j-log4j12を使用しますが、slf4j と java.util.logging のどちらが実際のログを記録するかはわかりません。logging.properties
したがって、1と 1の 2 つのログ ファイルを作成log4j.properties
し、両方をsrc/main/resources
とに配置しました/src/main/resources/META-INF
が、どちらも機能していないようです。
Maven Glassfish システム プロパティ (log4j 用)に追加java.util.logging.config.file=logging.properties
しましたが、これもうまくいきませんでした。プロパティファイルがJARファイルにあることを確認しました。
ロギングを担当するバックエンドを特定するにはどうすればよいですか?
Maven 埋め込み Glassfish プラグインを使用して、埋め込み Glassfish のロギング構成を指定するにはどうすればよいですか?
現在、デフォルト出力でINFOレベルのログ出力を取得しています。これがデフォルト設定だと思います。
jboss-arquillian - tomee で arquillian をセットアップするとき、resource.xml をどのように指定すればよいですか?
グラスフィッシュ組み込みサーバーでは、arquillian.xml で次の行を使用して、resource.xml を指定しました。
arquillian.xml
glassfish-resources.xml
今、私は tomee を使用しようとしていますが、グラスフィッシュで使用したのと同じ方法で resource.xml を指すことができないため、データベースに接続できませんでした。
これは、resourcesXml プロパティが Tomee でサポートされていないことを示す警告です (Arquillian.xml 内)。
tomee で arquillian を使用してリソースを指定するための別の設定を知りたいです。
cdi - CDI を使用して埋め込まれた GlassFish に jndi 文字列リソースを注入しない
そこで、domain.xml にカスタム参照を作成しました。
@Resource(lookup = "jndi/myResource")
@ApplicationScoped Bean でそれを参照します。
また、承認されたディレクトリ(承認された-api.jarを含む)でサーバーを起動しています。それでもリソースを参照すると、null が注入されたりスローされたりしません。
すべてが正しくセットアップされているように見えますが、ここで何が欠けているのかわかりません。はい、Meta-inf ディレクトリにも beans.xml があります。
unit-testing - 組み込みエンタープライズ Bean コンテナー (GlassFish) を使用した単体テストのために、ebj-jar.xml の env-entry 値をフィルター処理 (置換) する方法は?
展開にはいくつかのプロファイルが必要です。Maven POM で、プロファイル「dev」とプロパティ「theHost」を (localhost として) 定義しました。
filterDeploymentDescriptor
ejb-jar.xml の値をフィルタリング (置換) するように指示するために、maven-ejb-plugin でアクティブにしました。
最後に、ejb-jar.xml を参照し${theHost}
て、@Resource 属性「host」の目的のプロファイル固有の値を取得します。
これはすべて、通常の Maven ビルドでうまく機能します。しかし、GlassFish の Embedded Enterprise Bean Container [EJBContainer.createEJBContainer()] を使用して EJB 単体テストを実行すると、maven-ejb-plugin が filterDeploymentDescriptor=true を無視するようです。同じ「dev」プロファイルで maven を実行していますが、EJB には「localhost」ではなく「${theHost}」が表示されます。
単体テストの実行時に置換が機能しない理由を知っている人はいますか? ejb-jar.xml のフィルタリングが行われるように、特に単体テスト用に定義しなければならないものはありますか? または、異なるプロファイルが存在する場合に EJB を単体テストするためのより良いアプローチはありますか?
login - ProgrammaticLogin は arquillian テストでは機能しません
埋め込まれたグラスフィッシュの arquillian テストで ProgrammaticLogin クラスを使用してログインをシミュレートしようとしています。私のコードは次のとおりです。
次の例外が発生します。
ログインとパスワードを含むプロパティ ファイル users.properties を追加しました。
dependency-injection - GlassFish で @Resource 文字列を @Singleton EJB に注入できない
Glassfish のシングルトン EJB に単純な文字列を挿入しようとしています。
Bean クラスは EJB としてパッケージ化されています。これが私のものMETA-INF/ejb-jar.xml
です:
この混乱が必要かどうかさえわかりません。
次に、Jersey Test Framework 1.17.1 を介して、Embedded GlassFish 3.1.1 で JerseyTest を実行しています。ただし、何も注入されず、メソッドNullPointerException
から得られるものはすべてです。configurationUri()
また、失敗したテストを無視して、Bean JAR を WAR にパッケージ化し、それをスタンドアロンの GlassFish 4.0 にデプロイして同じ結果を得ようとしました。次に、env-entry をweb.xml
WAR の にコピー アンド ペーストし、同じ結果で再デプロイしました。
私は何を間違っていますか?インターネットを検索したところ、おそらく a を微調整する必要があることがわかりましたdomain.xml
が、このための XML スキーマはないようで、asadmin コマンドのドキュメントは...圧倒的です。
どんなヒントでも大歓迎です!
編集: 文字列フィールドにデフォルト値を単純に設定しない理由を 1 つ質問します。これは、この構成アイテムをejb-jar.xml
. それ以外の場合は、コードに隠されているだけです。