問題タブ [wildfly-swarm]
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 - Wildfly-Swarm : CDI wildfly-swarm マイクロサービスのクラスパスにないクラス
wildfly-swarm を使用して複数のマイクロサービスを構築しています。クラス com.google.common.cache.Cache がクラスパスに存在せず、ApplicationScoped Bean から参照されているため、CDI コンテナーを開始しようとしているときに、正常に動作するマイクロサービスと失敗するマイクロサービスが 1 つあります。これは私が得るスタックトレースです:
奇妙なことに、両方のマイクロサービスが同じ Maven 依存関係からこのクラスを使用していますが、他のサービスは意図したとおりに機能します。主な違いは、失敗したマイクロサービスが (swarm-dependency を介して) リボンを使用し、これにより 2 つ目の Guava-Dependency (バージョン 14.0.1) がもたらされることです。したがって、何らかの方法で(netflix-guavaモジュールからの)リボンからグアバ依存関係を除外しようとしました(メインリボンアーティファクトでグアバ依存関係を直接除外し、メインリボンアラティファクトからnetflix-guava依存関係を除外してから自分で netflix-guava の依存関係を追加し、そこから除外します)。
メインクラスでバージョン 14.0.1 の guava アーティファクトを手動で除外することで部分的に成功しましたが、それは他の問題を引き起こし、私の意見では実行可能なオプションではありません (この動作により、手動でアーティファクトを除外する必要が生じる可能性があるため)。問題が発生した場合、いくつかの依存関係が付属しています.
だから私の質問は: この動作を回避する方法はありますか? または、群れのドキュメントから得られなかった解決策はありますか? 私は今本当に迷っており、ヘルプ/アイデアは念のため、必要な成果物を手動で追加して不要なものを除外することなく、動作させたいように展開を構築するコードを次に示します。
maven - wildfly-swarm-plugin を使用したマルチモジュール Maven プロジェクト
マルチモジュール プロジェクトを wildfly-swarm に変換しようとしています。ただし、適切に設定する方法がわかりません。
コア ディレクトリから実行するmvn wildfly-swarm:run
と、サーバーが起動し、永続化ユニットが見つからないというエラーが表示されます。persistence.xml
モジュールにあるDBlayer
ので、理にかなっています。
ルート ディレクトリから実行しようとしましたが、プラグイン swarm が定義されていないと表示されます。そのため、モジュール pom.xmlroot
ではなく pom.xml でプラグインを定義しようとしましたが、作成できません。core
-swarm.jar
では、どのように設定すればよいのでしょうか。
これは私のルート pom.xml です
次に、core.xml に以下を追加しました。
コアポン:
DBlayer pom:
ただし、メインメソッドは指定しませんでした。DBLayerの下にpersistence.xmlがあります:
DBLayer/src/main/resources/META-INF
そのため、ドライバーとデータソースを定義するために swarm が自動的に処理を行うと想定しています。つまり、wildfly full では、standalone.xml でドライバーとデータソースを定義する必要があります。ここでは何もしなかったので、実際にはそれが問題なのかもしれません。ただし、彼らの例では、彼らもそれを行いません。https://github.com/wildfly-swarm/wildfly-swarm-examples/blob/master/jpa/jpa-war/src/main/resources/META-INF/persistence.xml
ここに私の永続化ユニットがあります:
jboss - wildfly swarm に jsf 文字列をロードする
wildfly swarm で jsf アプリケーションを実行しようとしていますが、リソース管理に問題があります。彼らのgithubページの短い例は次のように述べています。
JSF は静的ではないため、xhtml ファイルを deployment.addAsWebResource() などの方法で Shrinkwrap に追加する必要があります。
バンドル ファイルを認識させることができませんでした。さらに、文字列を保持する約 20 の .properties ファイルがあります。これらすべてをプログラムで追加する必要がありますか?
私の主な方法では:
maven - Wildfly 10: 実行に失敗しました: javax.ws.rs.NotFoundException: RESTEASY003210
wildfly-swarm
で既に実行されている Hello World Web プロジェクト (単一のindex.html
ファイルを持つ)で使用しようとしていますglassfish
。ここに私のPOM.xmlがあります:
私はこの例外を抱えています:
私はそれを使用して実行しています:
ブラウザに出力が表示されない理由がわかりません。例外もありません。物理的な HTML ファイルではなく、index.html を JAX-RS リソースとして想定している理由を教えてください。
index.html はsrc\main\webapp
フォルダにあります
java - wildfly swarm swagger UI 構成、方法
基本的なRESTを備えたwildfly swarmサービスがあり、それを使用してswagger uiを構成したいと考えています。現時点ではjarとして開始されています
ここにメインファイルがあります
http://localhost:8080/swaggerにアクセスすると、このような出力しか表示されません
ちょうどjson! http://localhost:8080/swagger-ui到達不能
swagger uiでwildfly swarmを適切に構成または開始する方法は? どこが間違っていますか?
jboss-arquillian - WildFly Swarm Arquillian テスト実行時の ClassNotFoundException
( https://issues.jboss.org/projects/SWARM/issues/SWARM-767で参照)
Arquillian を使用して WildFly Swarm アプリケーションをテストしようとしています。Main
Swarm 用のカスタムクラスとカスタム デプロイがあります。テストを実行しようとすると、一部のサードパーティ ライブラリで Maven から ClassNotFoundException を受け取ります。
まず第一に、ここに私のテストがあります:
TestBuilder.createSwarm()
TestBuilder.createDeployment()
これらのメソッドをそれぞれ呼び出すだけです。
テストを実行すると、WildFly Swarm は問題なく起動しますが、展開が展開されるとすぐに次のエラーが表示されます。
を参照するコードを削除したnet/coobird/thumbnailator/geometry/Position
ところ、別のライブラリで同様のエラーが発生しました。ライブラリがまったく含まれていないようです。
おそらく関連して、展開の開始時にこれらのメッセージを大量に受け取ります:(ただし、アプリを正常に実行している場合でも表示され、アプリが完全に正常に読み込まれるため、問題は発生しません)
これは私を混乱させます。特に、に設定testable = false
する@Deployment
と、完全に正常に動作するためです。ただし、テストは現在コンテナーの外部で実行されているため、必要な CDI インジェクションを使用できません。
必要な情報をさらに提供できます。ここからどこへ行けばいいのかわからない。
java - Spring Data JPA CDI 統合が Wildfly Swarm で失敗する
Spring Data JPA を Wildfly Swarm で動作させるのに問題があります。初めて挿入を実行しようとすると、トランザクション例外が発生します。後続の挿入はすべて正常に行われます。サービスのスコープを と に変更しようとし@RequestScope
ました@Stateless
が@ApplicationScope
、ここに示す両方のエンティティマネージャー設定を試しました:
http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpd.misc.cdi-integration
また、永続化ユニット構成の最後の 2 行を使用して、または使用せずに試してみました。それらがなくても同じように失敗します。
春の@Transactional
注釈も試しましたが、トランザクションはまったく作成されません (当然、このコンテキストでは)。
例外トレースは次のとおりです。
そして、これがCDIの私のエンティティマネージャです:
そして、トランザクションを使用し、Spring データ リポジトリから save メソッドを呼び出すクラス:
そして私の持続性ユニットの設定:
jboss - wildfly swarm: ファサード パッケージを変更すると失敗する
Appクラス、コンテナ、デプロイメント、およびファサードを備えたwildfly swarmアプリケーションがあり、すべて正常に動作していますが、UserFacadesを別のパッケージに変更し、アプリケーションを実行するAppメインクラスから分離すると、デプロイメントが失敗します!
org.wildfly.swarm.Swarm をインポートします。
何が間違っていますか?すべてのパッケージをスキャンするようにメイン App クラスを設定するにはどうすればよいですか?