Java <;车身>;方法(onkeydown、onkeydup…)未在JSF上呈现

Java <;车身>;方法(onkeydown、onkeydup…)未在JSF上呈现,java,maven,jsf,Java,Maven,Jsf,我正在将一个非maven webapp项目迁移到maven,我遇到了一些问题。 我的页面中有: <h:body onkeydown="desabilitaEnterEnvioForm(event);" onkeyup="trocaComboBoxPesquisa(event);"> ... </h:body> ... 但在浏览器中呈现html后,我看到的是: <body>...</body> 。。。 出于某种原因,它取出了尸体。。。什么会

我正在将一个非maven webapp项目迁移到maven,我遇到了一些问题。 我的页面中有:

<h:body onkeydown="desabilitaEnterEnvioForm(event);" onkeyup="trocaComboBoxPesquisa(event);">
...
</h:body>

...
但在浏览器中呈现html后,我看到的是:

<body>...</body>
。。。
出于某种原因,它取出了尸体。。。什么会导致这种奇怪的行为

更新

我在tomcat 8中运行我的应用程序

这是我的web.xml:

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://java.sun.com/xml/ns/javaee"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
         id="WebApp_ID" version="3.0">

    <display-name>Archetype Created Web Application</display-name>

    <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>*.jsf</url-pattern>
    </servlet-mapping>

    <servlet>
        <servlet-name>Jersey REST Service</servlet-name>
        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>com.sun.jersey.config.property.packages</param-name>
            <param-value>br.atualy.gestao.restws</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>Jersey REST Service</servlet-name>
        <url-pattern>/rest/*</url-pattern>
    </servlet-mapping>

    <welcome-file-list>
        <welcome-file>/login/login.jsf</welcome-file>
    </welcome-file-list>

    <context-param>
        <param-name>primefaces.THEME</param-name>
        <param-value>home</param-value>
    </context-param>

    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>
</web-app>

Web应用程序创建的原型
Facesservlet
javax.faces.webapp.FacesServlet
1.
Facesservlet
*.jsf
泽西岛休息服务
com.sun.jersey.spi.container.servlet.ServletContainer
com.sun.jersey.config.property.packages
br.atualy.gestao.restws
1.
泽西岛休息服务
/休息/*
/login/login.jsf
主题
家
30
下面是我的faces-config.xml:

<?xml version='1.0' encoding='UTF-8'?>
<faces-config version="2.2"
              xmlns="http://xmlns.jcp.org/xml/ns/javaee"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd">

    <navigation-rule>
        <description>Voltar para o login</description>
        <from-view-id>/*</from-view-id>
        <navigation-case>
            <from-outcome>Login</from-outcome>
            <to-view-id>/login/login.xhtml</to-view-id>
        </navigation-case>
    </navigation-rule>

</faces-config>

沃尔特·帕劳登录
/*
登录
/login/login.xhtml
更新2

我发现这个问题是由库冲突引起的(我认为),因为如果我在pom.xml中只放了这些依赖项,它就会工作:

<dependency>
    <groupId>org.glassfish</groupId>
    <artifactId>javax.faces</artifactId>
    <version>2.2.2</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.0.1</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>javax.el</groupId>
    <artifactId>javax.el-api</artifactId>
    <version>3.0.1-b04</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>javax.servlet.jsp.jstl</groupId>
    <artifactId>jstl-api</artifactId>
    <version>1.2</version>
</dependency>

玻璃鱼
javax.faces
2.2.2
javax.servlet
javax.servlet-api
3.0.1
假如
javax.el
javax.el-api
3.0.1-b04
假如
javax.servlet.jsp.jstl
JSTLAPI
1.2
但是,如果我放置所有项目依赖项,则会导致错误:

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
</dependency>

<dependency>
    <groupId>org.glassfish</groupId>
    <artifactId>javax.faces</artifactId>
    <version>2.2.2</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.0.1</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>javax.el</groupId>
    <artifactId>javax.el-api</artifactId>
    <version>3.0.1-b04</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>javax.servlet.jsp.jstl</groupId>
    <artifactId>jstl-api</artifactId>
    <version>1.2</version>
</dependency>


<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>4.3.6.Final</version>
</dependency>

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-c3p0</artifactId>
    <version>4.3.6.Final</version>
</dependency>

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>5.1.2.Final</version>
</dependency>

<dependency>
    <groupId>org.primefaces</groupId>
    <artifactId>primefaces</artifactId>
    <version>5.1</version>
</dependency>

<dependency>
    <groupId>org.omnifaces</groupId>
    <artifactId>omnifaces</artifactId>
    <version>1.8.1</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-server</artifactId>
    <version>1.17.1</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-core</artifactId>
    <version>1.17.1</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-servlet</artifactId>
    <version>1.17.1</version>
</dependency>

<dependency>
    <groupId>br.atualy.util</groupId>
    <artifactId>AtualyUtil</artifactId>
    <version>1.0</version>
</dependency>

<dependency>
    <groupId>br.atualy.temas</groupId>
    <artifactId>home</artifactId>
    <version>1.0.10</version>
</dependency>

<dependency>
    <groupId>org.apache.axis2</groupId>
    <artifactId>axis2-kernel</artifactId>
    <version>1.5.4</version>
</dependency>

<dependency>
    <groupId>org.apache.axis2</groupId>
    <artifactId>axis2-adb</artifactId>
    <version>1.5.4</version>
</dependency>

<dependency>
    <groupId>net.sf.jasperreports</groupId>
    <artifactId>jasperreports</artifactId>
    <version>5.0.1</version>
</dependency>

<dependency>
    <groupId>postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>9.1-901-1.jdbc4</version>
</dependency>

<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>

朱尼特
朱尼特
3.8.1
测试
玻璃鱼
javax.faces
2.2.2
javax.servlet
javax.servlet-api
3.0.1
假如
javax.el
javax.el-api
3.0.1-b04
假如
javax.servlet.jsp.jstl
JSTLAPI
1.2
org.hibernate
休眠实体管理器
4.3.6.最终版本
org.hibernate
hibernate-c3p0
4.3.6.最终版本
org.hibernate
休眠验证器
5.1.2.最终版本
org.primefaces
素面
5.1
org.omnifaces
全方位
1.8.1
泽西岛
泽西服务器
1.17.1
泽西岛
球衣核心
1.17.1
泽西岛
泽西servlet
1.17.1
br.atualy.util
阿图阿利乌尔
1
br.atualy.temas
家
1.0.10
org.apache.axis2
axis2内核
1.5.4
org.apache.axis2
axis2亚洲开发银行
1.5.4
net.sf.jasperreports
jasperreports
5.0.1
postgresql
postgresql
9.1-901-1.jdbc4
log4j
log4j
1.2.17

也许这些依赖项中有一些是错误的,但哪一个是正确的呢?

我尝试使用JSF 2.2,以下代码片段:

<h:body onload="init();" onclick="init();" ondblclick="init();" onkeydown="init();"
        onkeypress="init();" onkeyup="init();" onmousedown="init();" onmousemove="init();"
        onmouseout="init();" onmouseover="init();" onmouseup="init();" onunload="init();" >
</h:body>

以下是生成的HTML:

<body onload="init();" onunload="init();"></body>

似乎只有
onload
onunload
事件在
上呈现,尽管文档中另有说明:

编辑:


这里有一个解决方案,可以为您的
支持这些事件:

我们怎么知道?没有任何真正相关的信息,比如你的pom文件,什么样的错误信息?你使用哪种maven版本等等?嗨!请参阅我的更新消息您正在使用不同的faces实现…javax.faces(应在定义api时提供),primefaces是JSF的一个实现,哪个版本(2.2?)。给出的答案与myfaces相关。myfaces是JSF的另一个实现…我没有将myfaces添加到依赖项列表中,只是Mojara和primefaces。它的可能副本很奇怪,因为在我的旧项目中(没有使用maven),它工作得很好。。。