0

我正在使用 PrimeFaces 和最新的 jsf 东西。

<p:dataGrid var="terms" value="#{coursePlanSandbox.preProcessedTerms}" columns="4" rows="20">
    <h:form style="margin:0px;">
        <div class="list-widget classDrop">
            <div class="list-head">
                <h3>#{coursePlanSandbox.termName(terms.term)}</h3>
                <div class="list-meta">
                    #{terms.term.startYear} 
                    <span class="pull-right" style="margin-top:-3px;">
                        #{terms.fToi(terms.scheduledUnits)} / 
                        <h:inputText styleClass="inputMaxUnits" value="#{terms.firstSession.maxUnits}" >
                            <p:ajax event="change" process="@this" />
                        </h:inputText>
                    </span>
                </div>
            </div>
        </div>
    </h:form>
</p:dataGrid>

这是我的 Facelets 文件的片段。如果我重新运行页面,右键单击 NetBeans 中的 Facelets 文件并单击“运行文件”会刷新我猜想的服务器,然后页面停止加载,之后不再加载<h:inputText>任何其他内容。即使我刷新页面,它也会在那之后停止加载。如果我在其中输入一个值,<h:inputText>它会向服务器发送一个 ajax 请求,如果我然后单击刷新,则页面会在此之后加载其他所有内容。这是服务器的错误还是我做错了什么?

4

2 回答 2

0

我不明白为什么要使用运行文件...通常您运行 JSF 项目(或调试它)并且在 xhtml 文件或 java 文件中进行更改时不需要运行其他任何东西(添加/修改时除外类和函数原型)。运行文件对于运行包含 main() 的类很有用。

于 2013-03-19T05:36:59.547 回答
0

发现它是什么,我在控制器中调用了一个对象,然后就打破了页面。一旦通过ajax调用,它就会调用类构造函数并构建对象。这就是为什么之后的每次刷新都可以正常工作的原因。

于 2013-03-19T11:17:45.003 回答