JSF:PropertyNotFoundException类“不具有属性”

策略

我正在等待两天的时间来解决该基本问题。是的,我确实有GETTER和SETTER,是的,我真的认为约定是可以的。

这是代码:

豆 :

@Named
@SessionScoped
public class ClientController implements Serializable {

@Inject
private ClientService das;
private List<Client> clientsList;
public void setClientsList(List<Client> clientsList) {
    this.clientsList = clientsList;
}

private Client client = new Client();


public Client getClient() {
    return client;
}

public void setClient(Client client) {
    this.client = client;
}

public void createclient(ActionEvent actionEvent) {
    das.create(client);
}

public List<Client> getClientsList() {
    clientsList = das.findByNativeQuery(Client.ALL);
    return clientsList;
}

}

页面index.xhtml:

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

<ui:define name="content">

    <h:form>
        <p:panel header="Créer un Client">
            <h:outputText value="Prénom : "></h:outputText>
            <p:inputText id="clientName" value="#{clientController.client.name}" required="true"
                requiredMessage="Entrez votre prénom" message="fc">
                <f:validateLength minimum="2" />
            </p:inputText>
            <h:outputText value="Nom : "></h:outputText>
            <p:inputText id="clientLastName" value="#{clientController.client.lastName}"
                required="true" requiredMessage="Entrez votre nom"   message="fc">
                <f:validateLength minimum="2" />
            </p:inputText>
        </p:panel>
        <p:commandButton value="Submit"         
            actionListener="#{clientController.createclient}" />
    </h:form>
</ui:define>
</ui:composition>

错误:

/index.xhtml @14,57 value="#{clientController.client.name}": The class 'controllers.ClientController' does not have the property 'client'.

如您所见,Bean被解析,甚至createClient()方法也被解析(我尝试在没有其余代码的情况下对其进行测试)。问题只在于属性...

请帮忙 ?我敢肯定这是一个愚蠢的问题,但是有时候我们只需要换个角度

编辑:

WEB-INF / web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<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_2_5.xsd"
version="2.5">
<display-name>Bourse</display-name>

<!-- Current project stage. When it is set to 'Development' Primefaces give 
    a lot of debug information on the screen. -->
<context-param>
    <param-name>javax.faces.PROJECT_STAGE</param-name>
    <param-value>Development</param-value>
</context-param>

<context-param>
    <param-name>facelets.SKIP_COMMENTS</param-name>
    <param-value>true</param-value>
</context-param>

<welcome-file-list>
    <welcome-file>/index.xhtml</welcome-file>
</welcome-file-list>

<!-- Staring JSF -->
<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

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

<context-param>
    <param-name>javax.faces.CONFIG_FILES</param-name>
    <param-value>/WEB-INF/manage-beans.xml</param-value>
</context-param>
</web-app>

WEB-INF / manage-beans.xml:

<?xml version="1.0" encoding="UTF-8"?>
 <faces-config xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
    version="2.0">
    <managed-bean>
        <managed-bean-name>clientController</managed-bean-name>
        <managed-bean-class>controllers.ClientController</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>
 </faces-config>
不重要

我检查了您的代码,发现了几个问题,但是我不确定是哪个问题导致了您的问题,因为我注释掉了数据库内容以使其快速运行。

我想主要的问题是您尝试将CDI与JSF托管Bean一起使用,这应该没有问题。

  1. 您正在使用javax.faces.bean.SessionScoped和,javax.faces.bean.ManagedBean但是应该使用javax.enterprise.context.SessionScopedjavax.annotation.ManagedBean或甚至javax.inject.Named代替ManagedBean看看这个问题,以获取有关差异的详细信息。

  2. manage-beans.xml您创建的文件具有通常属于的内容,faces-config.xml但是无论如何都已过时,因为XML中的声明是通过注释进行声明的替代方法。您不需要两者。您可以在中删除manage-beans.xml和的引用web.xml如果要使用此类XML声明,则可以将它们放在中faces-config.xml

  3. 您的web.xml包含facelets.SKIP_COMMENTS应替换为的内容javax.faces.FACELETS_SKIP_COMMENTS

  4. 您的项目缺少beans.xml您在已创建的评论中写道,无论如何,这里是一个参考,其外观应为:

例:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
       http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
</beans>

也可以看看:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

检索不具有托管bean属性的JSF输入字段的值

来自分类Dev

不具有[DataMember]属性与具有[IgnoreDataMember]属性

来自分类Dev

不具有[DataMember]属性与具有[IgnoreDataMember]属性

来自分类Dev

使用BeautifulSoup4选择具有类且不具有属性的所有元素

来自分类Dev

混凝土类不具有通用标识编译

来自分类Dev

类数组将不具有新值

来自分类Dev

如何选择不具有ID属性的元素?

来自分类Dev

使用querySelector选择不具有值属性的输入

来自分类Dev

检查元素是否不具有jQuery属性

来自分类Dev

发布/订阅推送消息不具有messageId属性

来自分类Dev

使用XPath查找不具有ALT属性的图像

来自分类Dev

如何遍历不具有id属性的对象列表

来自分类Dev

WPF组合框样式不具有绑定属性

来自分类Dev

如何限制构造型不具有属性?

来自分类Dev

无法显示所有JDBC列中的数据,为什么?(类“ ccccSomeClass.class”不具有属性“ someProperty”)

来自分类Dev

具有@JsonIgnore的属性与不具有注释的属性之间有什么区别?

来自分类Dev

如何滤除具有特定属性的元素(或保留不具有该属性的元素)

来自分类Dev

查找具有特定名称且不具有特定属性的在前同级

来自分类Dev

XSL计算父节点不具有具有特定属性的子节点

来自分类Dev

具有或不具有自动属性的对象反序列化的差异

来自分类Dev

Tinkerpop:选择不具有具有属性的顶点的路径的顶点

来自分类Dev

选择具有不具有给定属性的子元素的元素的子元素

来自分类Dev

查找具有特定名称且不具有特定属性的在前同级

来自分类Dev

标有@Serializable的kotlinx-serialization类不具有.serializer()扩展功能

来自分类Dev

获取所有不具有以value开头的data属性的列表项

来自分类Dev

如何从数组中删除所有不具有特定属性的对象?

来自分类Dev

角组件引用不具有所有属性

来自分类Dev

如何选择所有不具有align属性的p和其他样式选项

来自分类Dev

“ WSGIRequest”对象不具有带有自定义注册表单的属性“ post”

Related 相关文章

  1. 1

    检索不具有托管bean属性的JSF输入字段的值

  2. 2

    不具有[DataMember]属性与具有[IgnoreDataMember]属性

  3. 3

    不具有[DataMember]属性与具有[IgnoreDataMember]属性

  4. 4

    使用BeautifulSoup4选择具有类且不具有属性的所有元素

  5. 5

    混凝土类不具有通用标识编译

  6. 6

    类数组将不具有新值

  7. 7

    如何选择不具有ID属性的元素?

  8. 8

    使用querySelector选择不具有值属性的输入

  9. 9

    检查元素是否不具有jQuery属性

  10. 10

    发布/订阅推送消息不具有messageId属性

  11. 11

    使用XPath查找不具有ALT属性的图像

  12. 12

    如何遍历不具有id属性的对象列表

  13. 13

    WPF组合框样式不具有绑定属性

  14. 14

    如何限制构造型不具有属性?

  15. 15

    无法显示所有JDBC列中的数据,为什么?(类“ ccccSomeClass.class”不具有属性“ someProperty”)

  16. 16

    具有@JsonIgnore的属性与不具有注释的属性之间有什么区别?

  17. 17

    如何滤除具有特定属性的元素(或保留不具有该属性的元素)

  18. 18

    查找具有特定名称且不具有特定属性的在前同级

  19. 19

    XSL计算父节点不具有具有特定属性的子节点

  20. 20

    具有或不具有自动属性的对象反序列化的差异

  21. 21

    Tinkerpop:选择不具有具有属性的顶点的路径的顶点

  22. 22

    选择具有不具有给定属性的子元素的元素的子元素

  23. 23

    查找具有特定名称且不具有特定属性的在前同级

  24. 24

    标有@Serializable的kotlinx-serialization类不具有.serializer()扩展功能

  25. 25

    获取所有不具有以value开头的data属性的列表项

  26. 26

    如何从数组中删除所有不具有特定属性的对象?

  27. 27

    角组件引用不具有所有属性

  28. 28

    如何选择所有不具有align属性的p和其他样式选项

  29. 29

    “ WSGIRequest”对象不具有带有自定义注册表单的属性“ post”

热门标签

归档