Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JSF配置的jsp文件正在运行,但xhtml没有运行_Jsf_Jakarta Ee_Jsf 2_Facelets_Web.xml - Fatal编程技术网

JSF配置的jsp文件正在运行,但xhtml没有运行

JSF配置的jsp文件正在运行,但xhtml没有运行,jsf,jakarta-ee,jsf-2,facelets,web.xml,Jsf,Jakarta Ee,Jsf 2,Facelets,Web.xml,我尝试了stackoverflow和其他论坛上看到的所有内容。它不起作用了 它正确地运行了jsp文件,但没有为xhtml页面运行新的facelets 我已经完成了从jsf1.x到2.x线程的迁移: 即使过滤器也在简单的jsp实现中工作,在这里我尝试删除过滤器,但仍然不工作。甚至连错误都想不出来 错误: exception javax.servlet.ServletException javax.faces.webapp.FacesServlet.service(FacesServle

我尝试了stackoverflow和其他论坛上看到的所有内容。它不起作用了

它正确地运行了jsp文件,但没有为xhtml页面运行新的facelets

我已经完成了从jsf1.x到2.x线程的迁移:

即使过滤器也在简单的jsp实现中工作,在这里我尝试删除过滤器,但仍然不工作。甚至连错误都想不出来

错误:

exception 

javax.servlet.ServletException
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:230)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)


root cause 

java.lang.StackOverflowError
    java.net.URLStreamHandler.parseURL(Unknown Source)
    java.net.URL.<init>(Unknown Source)
    java.net.URL.<init>(Unknown Source)
    org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.resolveURL(DefaultFaceletFactory.java:314)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.getRelativePath(DefaultFacelet.java:470)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:552)
    org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
    org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
    org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
    org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
    org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
    org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
    org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
    org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
    org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
    org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
    org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
    org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
    org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
    org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
    org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
    org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
    org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
    org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
    org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
    org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
    org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
异常
javax.servlet.ServletException
javax.faces.webapp.FacesServlet.service(FacesServlet.java:230)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
根本原因
栈溢出
java.net.URLStreamHandler.parseURL(未知源)
java.net.URL。(未知源)
java.net.URL。(未知源)
org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.resolveURL(DefaultFaceletFactory.java:314)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.getRelativePath(DefaultFacelet.java:470)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:552)
org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:553)
org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:240)
org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:151)
org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:521)
org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:575)
web.xml

  <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.faces</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>

</web-app>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core">

<body>
    <h:form>
    <center>

    <h:outputText value="#{loginMB.username}"></h:outputText>

    <h1>Welcome <h:outputText value="#{teamMB.teamHeadUsername}"></h:outputText></h1>
    <h:outputLink value="./login.jsf">Login as Team Admin</h:outputLink><br></br><br></br>
    <h:outputLink value="./registerteam.jsf" >Register your Team</h:outputLink><br></br><br></br>
    <h:outputLink value="./header.jsf">Header</h:outputLink><br></br><br></br>
    <h:outputLink value="./secure/dashboard.jsf">Dashboard</h:outputLink>

        </center>   
    </h:form>

</body>

<ui:composition template="">
    <ui:define name="header">
        Add your header here or delete to use the default
    </ui:define>
    <ui:define name="content">
        Add your content here or delete to use the default
    </ui:define>
    <ui:define name="footer">
        Add your footer here or delete to use the default
    </ui:define>
</ui:composition>
</html>

Facesservlet
javax.faces.webapp.FacesServlet
1.
Facesservlet
/面孔/*
Facesservlet
*.jsf
Facesservlet
*.面孔
Facesservlet
*.xhtml
home.xhtml

  <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.faces</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>

</web-app>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core">

<body>
    <h:form>
    <center>

    <h:outputText value="#{loginMB.username}"></h:outputText>

    <h1>Welcome <h:outputText value="#{teamMB.teamHeadUsername}"></h:outputText></h1>
    <h:outputLink value="./login.jsf">Login as Team Admin</h:outputLink><br></br><br></br>
    <h:outputLink value="./registerteam.jsf" >Register your Team</h:outputLink><br></br><br></br>
    <h:outputLink value="./header.jsf">Header</h:outputLink><br></br><br></br>
    <h:outputLink value="./secure/dashboard.jsf">Dashboard</h:outputLink>

        </center>   
    </h:form>

</body>

<ui:composition template="">
    <ui:define name="header">
        Add your header here or delete to use the default
    </ui:define>
    <ui:define name="content">
        Add your content here or delete to use the default
    </ui:define>
    <ui:define name="footer">
        Add your footer here or delete to use the default
    </ui:define>
</ui:composition>
</html>

欢迎
以团队管理员身份登录



注册您的团队



标题



仪表板 在此处添加标题或删除以使用默认标题 在此处添加内容或删除以使用默认设置 在此处添加页脚或删除页脚以使用默认值
我自己解决了。必须完全清空faces-config.xml文件,该文件以前填充了managedBeans


而且在xhtml文件
ui:composition
tag被删除,我认为这是主要问题。

我也有同样的问题。经过调查,我发现您提到的问题在于
ui:composition
标记。它给出该错误的原因是没有定义模板文件。一旦我定义了一个,它就正常工作了。

@BalusC,如果你能帮我的话。谢谢