teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

コードを追加いたしました。

2015/08/02 23:13

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -2,4 +2,57 @@
2
2
  layoutコンポーネントを用いており、position="west",position="east"にcommandbuttonを置いており、それらのボタンのクリック毎にposition="center"の位置に各コンポーネントを表示しようと思っております。
3
3
  しかし、各ボタンをクリックしてもリロードをしなければそれぞれのコンポーネントが表示されない状況になっております。
4
4
  今現在表示の切替はrenderedでヘッダに指定したテキストが入れば表示するという形をとっております。
5
- コードは都合上現在書けない状況なので後ほど追記いたしますが、もしこの説明のみで原因のわかる方がいらっしゃいましたらご回答の方よろしくお願いいたします。
5
+ コードは都合上現在書けない状況なので後ほど追記いたしますが、もしこの説明のみで原因のわかる方がいらっしゃいましたらご回答の方よろしくお願いいたします。
6
+
7
+ ```mainMenu.xhtml
8
+ <h:form id="mainForm">
9
+ <p:layout id="layout" fillPage="true"/>
10
+ <p:layoutUnit position="north" size="120">
11
+ <h:outputText value="タイトル"/>
12
+ </p:layoutUnit>
13
+ <p:layoutUnit position="south" size="50"/>
14
+ <p:layoutUnit position="west" size="250">
15
+ <p:commandButton value="#{dictionary.conversion('スケジュール')}"
16
+ action="#{menuController.updateCen}" update=":mainForm:layout"/>
17
+ </p:layoutUnit>
18
+ <p:layoutUnit position="east" size="250"/>
19
+ <p:layoutUnit position="center">
20
+ <p:schedule rendered="#{menuController.text='スケジュール'}"
21
+ view="basicWeek" timeZone="GMT+2">
22
+ <f:facet name="header">
23
+ <h:outputText value="#{menuController.text}"/>
24
+ </f:facet>
25
+ </p:schedule>
26
+ </p:layoutUnit>
27
+ コード
28
+ ```
29
+ ```menuController.java
30
+ import java.io.Serializable;
31
+ import javax.enterprize.context.SessionScoped;
32
+ import javax.inject.Named;
33
+
34
+ @Named
35
+ @SessionScoped
36
+ public class MenuController implements Serializable {
37
+ private static final long serialVersionUID = .............;
38
+ private String text = null;
39
+ public String getText() {
40
+ return text;
41
+ }
42
+ public void setText(String text) {
43
+ this.text = text;
44
+ }
45
+ public String updateCen() {
46
+ try {
47
+ if(text != "スケジュール") {
48
+ text = "スケジュール";
49
+ } else if(text == "スケジュール") {
50
+ text = null;
51
+ }
52
+ } catch(NumberFormatException e) {
53
+ text = "Invalid Data";
54
+ }
55
+ return "";
56
+ }
57
+ コード
58
+ ```