まず、いくつかの情報をお伝えしましょう。私はこれを使ってWebアプリケーションを開発しています:
- Netbeans 7.2.1
- JSF-2 Mojarra 2.1.1
- Primefaces 3.4.2
- Chrome / Firefox
ページの1つ(実際にはインデックスページ)には、データグリッド(p:dataGrid)を含むパネル(p:panel)があります。データグリッドにいくつかの要素(2つ以上)がある場合、ページ全体が非常に奇妙な方法でレンダリングされます。最高のものはあなたに部分的なスクリーンショットを見せることでしょう。
ご覧のとおり、2つのスクロールバーが(水平方向と垂直方向に)表示されます。ブラウザの開発者のツールにアクセスするだけでページが再レンダリングされ、スクロールバーが消えるので、そうでない場合はコードの問題だと思います。これは結果です:
ChromeとFirefoxブラウザはどちらも同じ動作をします。この問題にどう向き合うかわかりません。コードに問題があるのか、Primefacesのバグなのか、それとも何なのかわからないため、どのような情報を提供できるのかさえわかりません。いつでも同じような問題に直面したことがありますか?何か提案をお願いします。前もって感謝します。
編集-これはビューの非常に単純化された構造です:
<p:layoutUnit position="west" size="66%">
<p:layoutUnit position="center">
<h:inputHidden .../>
<h:inputHidden .../>
<p:panel style="height: 95%" styleClass="transparent">
<p:dataGrid ...>
<h:form>
<p:commandButton style="width: 100%" ...>
<f:setPropertyActionListener ... />
</p:commandButton>
</h:form>
</p:dataGrid>
</p:panel>
</p:layoutUnit>
<p:layoutUnit position="south" size="33%">
<p:panel style="height: 90%" styleClass="transparent">
</p:panel>
</p:layoutUnit>
</p:layoutUnit>
<p:layoutUnit position="center" size="33%">
<p:layoutUnit position="center">
<p:panel>
<p:panel id="map"/>
</p:panel>
</p:layoutUnit>
<p:layoutUnit position="south" size="46%">
<p:commandButton .../>
</p:layoutUnit>
</p:layoutUnit>