1

フローを含む webfragment を含む webapp を構築しようとしています。

webfragment として使用したい webapp のスタンドアロン バージョンの構築を開始しました。それは働いています。その後、次の構造に変換しました。

flow-webfragment\src\main\java\javaclasses..

flow-webfragment\src\main\resources\META-INF\beans.xml
flow-webfragment\src\main\resources\META-INF\faces-config.xml
flow-webfragment\src\main\resources\META-INF\web-fragment.xml

flow-webfragment\src\main\resources\META-INF\resources\META-INF\context.xml
flow-webfragment\src\main\resources\META-INF\resources\META-INF\myflowdir
flow-webfragment\src\main\resources\META-INF\resources\META-INF\webfragment-start.xhtml

構造についてはよくわかりません。より良いものや慣例があれば教えてください。

Webfragment は正しく設定されており、webapp はそれを認識しています。「webfragment-start.xhtml」ページに移動できますが、フローに入ろうとすると、NullPointerException が発生します。

java.lang.NullPointerException
at com.sun.faces.flow.FlowCDIContext.flowEntered(FlowCDIContext.java:332)
at com.sun.faces.flow.FlowHandlerImpl.pushFlow(FlowHandlerImpl.java:385)
at com.sun.faces.flow.FlowHandlerImpl.transition(FlowHandlerImpl.java:280)
at com.sun.faces.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:239)
at com.sun.faces.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:182)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:132)

JSF 2.2とOmnifacesも使用している別のプロジェクトで、このメッセージが表示されるため、CDIが正しく利用できないと思います

org.omnifaces.ApplicationInitializer checkCDIAvailable

http://omnifaces.org/cdi/を参照

Tomcat に CDI をインストールする方法に関する BalusC の指示にも従いました。これはスタンドアロンの webapp として機能しますが、webfragment としては機能しません。

Webfragment の構築方法に関する適切でわかりやすいチュートリアルが見つかりませんでした。どなたかご存知でしたら、教えていただければ幸いです。

すべてのヘルプは大歓迎です!

よろしく、 ミーシャ

4

1 に答える 1

0

追加し忘れただけ

<Context>
<Resource name="BeanManager" 
    auth="Container"
    type="javax.enterprise.inject.spi.BeanManager"
    factory="org.jboss.weld.resources.ManagerObjectFactory" />
</Context>

context.xml に。

于 2015-05-06T07:27:53.637 に答える