JSFで開発されたアプリケーションがあり、CDIを使用するように変換しています。このプロセス中にWildflyでテストを行い、変換前と同じように動作させることができました。 Websphereにデプロイしたときに問題が発生しました!Websphereのjavax.enterprise.inject.UnsatisfiedResolutionException
私たちのアプリは、パート1からの結果のjarファイルは、WebSphereに配備warファイルがすでにパートからjarファイルが含まれていることを意味し、パート2に含まれているシンプルパート1とパート2、のための2つの部品を、持っている1.
さて、アプリは以下のエラーを我々は可能な解決策が、今のところ運で検索しました
[4/28/17 16:35:54:107 CEST] 00000083 BeansDeployer E BeansDeployer deploy
javax.enterprise.inject.UnsatisfiedResolutionException: Api type [web.frmwrk.mgbean.WebSession] is not found with the qualifiers
Qualifiers: [@javax.enterprise.inject.Default()]
for injection into
Field Injection Point, field : protected web.frmwrk.mgbean.WebSession web.frmwrk.FacesBean.ws, Bean Owner : [-2102135427,Name:dealerLink,WebBeans Type:MANAGED,API Types:[web.mgbean.dealer.Link,web.frmwrk.FacesBean,java.lang.Object,java.io.Serializable],Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any,javax.inject.Named]]
InjectionType : [class web.frmwrk.mgbean.WebSession]
Annotated : [Annotated Field,Base Type : class web.frmwrk.mgbean.WebSession,Type Closures : [class web.frmwrk.mgbean.WebSession, class web.frmwrk.FacesBean, class java.lang.Object, interface java.io.Serializable],Annotations : [@javax.inject.Inject()],Java Member Name : ws]
Qualifiers : [[@javax.enterprise.inject.Default()]]
at org.apache.webbeans.util.InjectionExceptionUtils.throwUnsatisfiedResolutionException(InjectionExceptionUtils.java:92)
を投げているのWebsphereで起動したとき。検索中、これはpageです。パート1に言及したMANIFEST.MFにClass-Pathを追加しましたが、何も変更されませんでした。
あなたも同様の問題に直面しましたか? WildspeedのようにWebsphereでこの作業を行うために必要な特別な設定はありますか?
Wildfly Weld(CDIリファレンス実装)。 Websphereは別の実装を使用していましたが、OpenWebBeans(最新バージョンではWeldも使用しています)。それらの2つにはかなりの違いがあり、あなたはいくつかにぶつかっているかもしれません。私はOWBについてよく知らないが、何が起こっているかを見ても、展開構造をそのまま投稿してください。特に、EARや共有ライブラリなどを話している場合は、これらの意味が異なることがあります。 – Siliarus