相关疑难解决方法(0)

如何在WildFly上安装JSF(javax.faces.jar)的一个jar变体

我想在我的应用程序中使用JSF 2.3,但WildFly使用2.2 JAR变体.

甲骨文在这里说https://javaserverfaces.java.net/2.3/download.html,不会发布2.3 2 JAR变种.

jsf wildfly jsf-2.3

10
推荐指数
1
解决办法
3510
查看次数

如何找出我的WebLogic正在使用的当前版本的Mojarra?

我正在尝试确定我的WebLogic 12c正在使用的当前版本的Mojarra.我该怎么知道呢?

jsf-2 mojarra weblogic12c

7
推荐指数
1
解决办法
3480
查看次数

如何将旧JSP的片段重构为某些JSF等价物?

ORIGINAL JSP(WorkItem.jsp)

<c:forEach var="actionItem" items="${workItem.work_action_list}">
    <c:if test="${actionItem.workActionClass.work_action_type_id == '1'}" >
       <%@ include file="inc_done_button.jsp" %>
    </c:if>
    <c:if test="${actionItem.workActionClass.work_action_type_id == '2'}" >
         <c:set var="actionItem" value="${actionItem}" scope="request" />
         <c:set var="checklist" value="${actionItem.meat}" scope="request" />
        <jsp:include page="inc_dynamic_checklist_v.jsp" flush="true" />
    </c:if>
    etc...
</c:forEach>
Run Code Online (Sandbox Code Playgroud)

原始Java

for (ListIterator<WorkflowInstanceWorkItemAction> actionIter = wfiwi.getWork_action_list().listIterator(); actionIter.hasNext();) {
    if ("2".equals(work_action_type_id)) {
        ChecklistInstanceForm ciForm = new ChecklistInstanceForm(this, authenticatedUser);
         ChecklistInstance ci = null; 
        ci = (ChecklistInstance) ciForm.getChkLstInstanceByWfiWiaOwner(wfiWorkItemAction, authenticatedUser);
    // Get the meat details for this action and inject it into the object
        wfiWorkItemAction.setMeat(ci);
    } …
Run Code Online (Sandbox Code Playgroud)

jsf jsp facelets composite-component

7
推荐指数
1
解决办法
1177
查看次数

@FacesValidator和@FacesConverter中的EJB和CDI注入点在较新版本的JSF中无法通过OmniFaces工作

我在用,

  • Mojarra 2.3.0-m01
  • OmniFaces 2.0.
  • PrimeFaces 5.1决赛
  • PrimeFaces Extension 3.0.0
  • GlassFish Server 4.1

和其他Java EE工件.


注射点@FacesValidator如下,

@FacesValidator(value="testValidator")
public class TestValidator implements Validator {

    @Inject
    private DemoEJB ejb;

    @Inject
    private ManagedBean managedBean;

    @Override
    public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException {
        // Use the injected EJB and/or managed bean here.
    }
}
Run Code Online (Sandbox Code Playgroud)

这些注入点仍然存在null(我没有明确地尝试注入EJB,但它不应该像托管bean那样发生).


由于上面提到的Mojarra版本仍然可以作为快照使用,我尝试将其降级到2.2.10,使用相同版本的OmniFaces 2.0(或者也可以在Mojarra 2.2.10和2.3上使用OmniFaces 2.1-SNAPSHOT进行尝试). 0-m01另选)但无济于事.

当我将Majarra降级到2.2.8-02(尝试使用OmniFaces 1.8.1,2.0和2.1-SNAPSHOT)时,这很有效.我没有尝试其他Mojarra版本.

对于较新版本的Mojarra,是否通过OmniFaces(而不需要任何附加依赖关系和/或配置)删除了对EJB和CDI注入点的支持@FacesValidator@FacesConverter候选者?

我还没有明确尝试过,@FacesConverter因为使用一个有缺陷的NetBeans IDE来改变这么多库,这在很长一段时间内在Windows上也非常慢,从一开始就是从黎明到黄昏.


编辑:

服务器生成以下与焊接相关的警告.

WARN:   WELD-001700: Interceptor …
Run Code Online (Sandbox Code Playgroud)

jsf cdi omnifaces weld jsf-2.2

5
推荐指数
1
解决办法
3285
查看次数

http://xmlns.jcp.org命名空间中的标记不会呈现,而http://java.sun.com/jsf工作正常

我有这个:

<html 
    xmlns:f="http://xmlns.jcp.org/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
>
<h:selectOneRadio>
    <f:selectItem value="1" itemValue="1" itemLabel="123"/>
    <f:selectItem value="2" itemValue="2" itemLabel="321"/>
</h:selectOneRadio>
Run Code Online (Sandbox Code Playgroud)

我得到了这个:

<f:selectItem value="1" itemValue="1" itemLabel="123"></f:selectItem>
<f:selectItem value="2" itemValue="2" itemLabel="321"></f:selectItem>
<select name="j_idt5" size="1"></select>
Run Code Online (Sandbox Code Playgroud)

为什么xmlns:f="http://xmlns.jcp.org/jsf/core"标签没有呈现?

我在Netbeans 7.3上使用JBoss AS 7.

jsf facelets xml-namespaces

4
推荐指数
1
解决办法
2909
查看次数

jsf 2.2(final)不适用于Jboss 7.1.1

对我来说似乎JSF 2.2在JBoss 7.1.1上根本不起作用

使用jboss的multi jsf我刚刚用jsf 2.2替换了jsf api和jsf实现模块

我的应用程序启动时,我看到以下错误:

01:46:59,286 INFO  [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-5) Initializing Mojarra 2.2.0 ( 20130502-2118 https://svn.java.net/svn/mojarra~svn/tags/2.2.0@11930) for context '/broker'
01:46:59,922 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-5) Critical error during deployment: : java.lang.NoClassDefFoundError: com/sun/faces/spi/InjectionProvider
    at javax.faces.FactoryFinder$FactoryManager.copyInjectionProviderFromFacesContext(FactoryFinder.java:1051) [jboss-jsf-api_2.2_spec-2.2.0.jar:2.2.0]
    at javax.faces.FactoryFinder$FactoryManager.<init>(FactoryFinder.java:1035) [jboss-jsf-api_2.2_spec-2.2.0.jar:2.2.0]
    at javax.faces.FactoryFinder$FactoryManagerCache.getApplicationFactoryManager(FactoryFinder.java:856) [jboss-jsf-api_2.2_spec-2.2.0.jar:2.2.0]
    at javax.faces.FactoryFinder$FactoryManagerCache.getApplicationFactoryManager(FactoryFinder.java:793) [jboss-jsf-api_2.2_spec-2.2.0.jar:2.2.0]
    at javax.faces.FactoryFinder$FactoryManagerCache.access$100(FactoryFinder.java:768) [jboss-jsf-api_2.2_spec-2.2.0.jar:2.2.0]
    at javax.faces.FactoryFinder.setFactory(FactoryFinder.java:409) [jboss-jsf-api_2.2_spec-2.2.0.jar:2.2.0]
    at com.sun.faces.config.processor.FactoryConfigProcessor.setFactory(FactoryConfigProcessor.java:317) [jsf-impl-2.2.0.jar:2.2.0]
    at com.sun.faces.config.processor.FactoryConfigProcessor.processFactories(FactoryConfigProcessor.java:259) [jsf-impl-2.2.0.jar:2.2.0]
    at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:216) [jsf-impl-2.2.0.jar:2.2.0]
    at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:435) [jsf-impl-2.2.0.jar:2.2.0]
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:214) [jsf-impl-2.2.0.jar:2.2.0]
    at org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:3392) [jbossweb-7.0.13.Final.jar:]
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3850) [jbossweb-7.0.13.Final.jar:]
    at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final] …
Run Code Online (Sandbox Code Playgroud)

jboss7.x jsf-2.2

1
推荐指数
1
解决办法
5930
查看次数

ConfigurationException:名称空间http://xmlns.jcp.org/jsf/core中名为passThroughAttribute的标记定义了一个null处理程序类

我正在使用从GlassFish到WildFly的Mojarra 2.2.8迁移JSF项目.我正在使用Maven来管理依赖项,我没有在服务器文件夹中实际添加库.在WildFly上,我在部署期间得到以下异常.据我所知,不同的JSF实现之间存在冲突.

11:47:55,630 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-3) Unable to process annotations for url, vfs:/C:/utils/wildfly-8.0.0.Final/standalone/deployments/cursus-management.war/WEB-INF/lib/primefaces-5.0.jar/META-INF/faces-config.xml.  Reason: java.util.zip.ZipException: zip file is empty
11:47:55,631 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-3) : java.util.zip.ZipException: zip file is empty
    at java.util.zip.ZipFile.open(Native Method) [rt.jar:1.7.0_40]
    at java.util.zip.ZipFile.<init>(ZipFile.java:215) [rt.jar:1.7.0_40]
    at java.util.zip.ZipFile.<init>(ZipFile.java:145) [rt.jar:1.7.0_40]
    at java.util.jar.JarFile.<init>(JarFile.java:153) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:88) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.URLJarFile$1.run(URLJarFile.java:221) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.URLJarFile$1.run(URLJarFile.java:216) [rt.jar:1.7.0_40]
    at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.URLJarFile.retrieve(URLJarFile.java:215) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:71) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:109) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122) [rt.jar:1.7.0_40]
    at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:89) [rt.jar:1.7.0_40]
    at com.sun.faces.config.JavaClassScanningAnnotationScanner.processClasspath(JavaClassScanningAnnotationScanner.java:166) [jsf-impl-2.2.8.jar:2.2.8]
    at …
Run Code Online (Sandbox Code Playgroud)

jsf maven wildfly

1
推荐指数
1
解决办法
4141
查看次数