Zugriff auf Variable bei JSF

nico_wagner

Cadet 3rd Year
Registriert
Nov. 2013
Beiträge
59
Hallo,
Ich habe folgende Anforderung an meine Anwendung:
In der Datei startpage.xhtml wird ein Treenode erstellt(funktinoiert).
Klicke ich auf einen der Äste soll sich in einem Grid eine Tabelle, dialog, Text, o.ä. öffnen. (funktioniert so gar nicht -.-)
Bei Klick auf den Ast wird ein Wert an die Klasse TableSelect übergeben. (funktioniert)
Außerdem soll in der Datei table.xhtml alles neu gerendered und dabei überprüft werden, welcher Wert an TableSelect übergeben wurde.
Hier meine Versuche:
startpage.xhtml:
Treenode:
Code:
......
<p:treeNode type="dashboard_schwellwerte"
icon="ui-icon ui-icon-document">
<p:commandLink value="#{node}"
action="#{tableSelect.setTabelle('dashboard_schwellwerte')}"
update="@form:grid1"	/>

startpage Grid:

Code:
<p:layoutUnit position="center">
<p:outputPanel>
<h:panelGrid id="grid1" columns="2" cellpadding="10">
<div id="content">
<ui:insert name="tables">
<ui:include src="/tables/tables.xhtml" />
</ui:insert>
</div>
</h:panelGrid>
</p:outputPanel>
</p:layoutUnit>


TableSelect:
Code:
import javax.annotation.PostConstruct;
import javax.enterprise.context.ConversationScoped;
import javax.enterprise.context.SessionScoped;
import javax.enterprise.inject.Default;
import javax.enterprise.inject.Model;
import javax.enterprise.inject.Produces;
import javax.faces.application.FacesMessage;
import javax.inject.Inject;
import javax.inject.Named;

import de.telit.webroot.model.Member;
import de.telit.webroot.service.MemberManagementService;

import javax.faces.bean.ManagedBean;
import javax.faces.event.ActionEvent;

@Model
public class TableSelect {

	private String tabelle;

	public String getTabelle() {
		return tabelle;
	}

	public void setTabelle(String tabelle) {
		this.tabelle = tabelle;
	}

	public boolean isAusgabe(){
		boolean temp;
		if(getTabelle()!= null && !getTabelle().isEmpty()){
			temp = getTabelle().equals("dashboard_schwellwerte");
			return temp;
		}
		return false;
	}
}

table.xhtml:
Code:
	<p:dialog value="4" header="test3" rendered="#{tableSelect.ausgabe}" />


Ich bekomme nuin einfahc keinen zugriff von dem dialog auf tableSelect.ausgabe :/
 
Hi, ich bin jetzt kein Experte was die Thematik angeht aber müsste es nicht eher lauten:
Code:
<p:dialog value="4" header="test3" rendered="#{tableSelect.isAusgabe}" />
?
Schließlich willst du ja die Methode aufrufen, die isAusgabe() heißt und nicht ausgabe.

Gruß Hardliner
 
Hallo,
Code Helper spuckt immer nur ausgabe aus. Habe es aber auch schon mit isAusgabe probiert. Kein Erfolg :/
 
Die class TableSelect ist wohl keine valid Bean.

z.b. deklaration

@ManagedBean
@SessionScoped


Außerdem sollte eine Bean immer getter und setter haben. Nimm lieber Objekttyp Boolean...


private Boolean ausgabe;
public Boolean getAusgabe(){
 
Zurück
Oben