由於原始mojarra實現中已知的錯誤,我需要將JSF實現綁定到WAR文件中。將PayPal中的JSF綁定到JSF1051失敗時GlassFishInjectionProvider不能擴展DiscoverableInjectionProvider
我不允許替換模塊中的JSF實現,所以我使用useBundledJsf屬性。
正在運行Payara版本:Payara Server 4.1.1.164 #badassfish(build 28) 此版本應該正確支持useBundledJsf。
我已經加入這個我GlassFish的-web.xml中:
<class-loader delegate="false" />
<property name="useBundledJsf" value="true" />
,並添加了javax.faces dependecy到我的POM:
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.2.13</version>
</dependency>
我收到以下錯誤和所有注射正在失敗。
SEVERE: JSF1051: Service entry 'org.glassfish.faces.integration.GlassFishInjectionProvider' does not extend DiscoverableInjectionProvider. Entry will be ignored.
我試圖在焊接integration.jar添加到我的項目,但它仍然產生JSF1051錯誤以下方式:
Unable to create a new instance of 'org.jboss.weld.jsf.ConversationAwareViewHandler'
的焊接整合我已經使用了依賴性:
<dependency>
<groupId>org.glassfish.main.web</groupId>
<artifactId>weld-integration</artifactId>
<version>4.1.2</version>
<exclusions>
<exclusion>
<artifactId>*</artifactId>
<groupId>*</groupId>
</exclusion>
</exclusions>
謝謝你的提示,但我不知道我應該在這裏加入白名單。 facelets使用的所有包已經列入白名單(默認白名單類):com.sun,javax和錯誤消息org.glassfish中的包。它仍然會嘗試加載外部的JSF,並且錯誤仍然存在。 – tak3shi