WARN [Parameters]参数:忽略无效的块。警告来自主要应用程序

时间:2011-09-02 14:46:28

标签: jboss jsf-2 primefaces

我正在尝试构建基于JSF 2的自动填充表单示例。我使用的是primefaces 3.0.M2,JSF 2.1.2库和JBoss 6。

我正在使用primefaces的autoComplete组件,但它不起作用。当我输入输入文本框时,我没有收到任何自动填充文本。

我只能在JBoss控制台窗口中看到以下警告:

19:40:56,874 WARN  [Parameters] Parameters: Invalid chunk ignored.

我的xhtml文件如下所示:

<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"
    xmlns:p="http://primefaces.prime.com.tr/ui">
    <h:head>
       <title>sample auto completer</title> 
    </h:head>
    <h:body>
        <p:messages id="messages" />
        <p:autoComplete id="AutoCompleter" 
            value="#{myBean.text}" 
            completeMethod="#{myBean.complete}"
            onSelectUpdate="messages"/>
    </h:body>
</html>

和java bean代码如下:

package com.shekhar.jsf;

import java.util.ArrayList;
import java.util.List;

public class Bean {

    private String text;

    public List<String> complete(String val) {
        List<String> lst = new ArrayList<String>();

        for (int i = 0; i < 10; i++) {
            lst.add(val + i);
        }
        return lst;
    }

    public void setText(String text) {
        this.text = text;
    }

    public String getText() {
        return text;
    }
}

我的faces-config文件包含以下代码:

<?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>myBean</managed-bean-name>
        <managed-bean-class>com.shekhar.jsf.Bean</managed-bean-class>
        <managed-bean-scope>request</managed-bean-scope>
    </managed-bean>
</faces-config>

我不明白我错过了什么。请帮忙!!!

1 个答案:

答案 0 :(得分:3)

  

从上面的评论作为接受的答案

     

您应该在控制台或System.out.println()的日志文件中看到输出。如果你没有那么这意味着完整的方法没有被执行。这可能是因为您需要将自动完成和消息组件包装在<h:form prependId="false">

很高兴看到它对你有用。这可能看起来很奇怪,但JSF和ASP.NET之间有很多相似之处。我曾经是一名ASP.NET开发人员,而且我很容易选择JSF。祝你好运!