JSF: Welchen Button in Tabelle gedrückt? Listener?

Status
Nicht offen für weitere Antworten.

A.T.

Bekanntes Mitglied
Hallo zusammen,

bin dabei mich in JSF einzuarbeiten und habe auch schon das eine oder andere hinbekommen. Hänge jetzt allerdings an einer Stelle, an der ich leider nicht so recht weiter weiß. Für einen Tipp wäre ich sehr Dankbar!

Habe eine Tabelle mit Informatione und möchte aus der Tabelle heraus auf eine Detailseite wechseln in der man mehr Informationen zu denen in der Tabelle angezeigten sehen und diese auch editieren kann. Aber wie bekomme ich heraus welchen Button ich gedrückt habe. Ein Listener der mir die Zeile verrät wäre nicht schlecht! Aber wie mache ich das hier, für eine Deskotopanwendung wäre das ja kein Problem aber bei einer Webanwendung?

Der Wechsel auf die Detailseite funktioniert, nur weiß ich da leider nicht welchen Button ich gedrücht habe, bzw. weiß ich das auch nicht in der Tabelle. Ich weiß nur das irgendeiner gedrückt wurde.

tablePage.jsp
Code:
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>

<h:dataTable id="dt1" value="#{kundenHandler.kundenListe}" var="item"
	bgcolor="#F1F1F1" border="10" cellpadding="5" cellspacing="3" first="0"
	rows="#{kundenHandler.anzahl}" width="100%" dir="ltr" frame="hsides"
	rules="all" summary="Test">
	<h:column>
		<f:facet name="header">
			<h:outputText value="id" />
		</f:facet>
		<h:outputText value="#{item.id}"></h:outputText>
	</h:column>

	<h:column>
		<f:facet name="header">
			<h:outputText value="name" />
		</f:facet>
		<h:outputText value="#{item.name}"></h:outputText>
	</h:column>

	<h:column>
		<f:facet name="header">
			<h:outputText value="Auswahl" />
		</f:facet>
		<h:commandButton action="#{kundenHandler.detailAnsicht}"
			value="#{msg.bearbeiten}"></h:commandButton>
	</h:column>
</h:dataTable>

KundenHandler.java

Code:
package de.jGeldAktuellVerwaltung.handler;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

import de.jGeldAktuellVerwaltung.model.Kunde;

public class KundenHandler {
    private static ArrayList list = new ArrayList();
	
    public KundenHandler(){
        list wird aus der Datenbank gefüllt. Listen Elemente basieren auf meiner Kundenklasse.
        Jeder Kunde hat eine eindeutige ID.
    }
	
    public ArrayList getkundenListe(){
        return list;
    }

    public int getanzahl(){
        return list.size();
    }
	
    public String detailAnsicht(){
        return "success1";
    }
}

faces-config.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE faces-config PUBLIC
    "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
    "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">

<faces-config>
	<application>
		<locale-config>
			<default-locale>de</default-locale>
			<supported-locale>de</supported-locale>
		</locale-config>
	</application>

	<managed-bean>
		<managed-bean-name>loginHandler</managed-bean-name>
		<managed-bean-class>
			de.jGeldAktuellVerwaltung.handler.LoginHandler
		</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>beraterHandler</managed-bean-name>
		<managed-bean-class>
			de.jGeldAktuellVerwaltung.handler.BeraterHandler
		</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>kundenHandler</managed-bean-name>
		<managed-bean-class>
			de.jGeldAktuellVerwaltung.handler.KundenHandler
		</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
	</managed-bean>

	<navigation-rule>
		<description>Der Login</description>
		<from-view-id>/pages/login.jsp</from-view-id>
		<navigation-case>
			<from-outcome>success</from-outcome>
			<to-view-id>/pages/startPage.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>

	<navigation-rule>
		<description>Login->StartPage</description>
		<from-view-id>/pages/startPage.jsp</from-view-id>
		<navigation-case>
			<from-outcome>success</from-outcome>
			<to-view-id>/pages/detailPage.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
	
	<navigation-rule>
		<description>tablePage->detailPage</description>
		<from-view-id>/pages/startPage.jsp</from-view-id>
		<navigation-case>
			<from-outcome>success1</from-outcome>
			<to-view-id>/pages/detailPage.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
</faces-config>

Gruss
A.T.
 

Grey_M

Aktives Mitglied
Du musst deienr Tabelle ein Binding hinzufügen.

In der JSP
Code:
<t:dataTable binding=#"{bean.table}">


In deiner Klasse:
Code:
public class Bean{
//Bindest du ja an deine Tabelle
private UIData table;

public String meineAction(){
//welches file wurde geklickt
ImageFile fileObj=(ImageFile) table.getRowData();
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Welchen Applikation-Server verwendet ihr? Allgemeines EE 6
J Mit welchen Tools EJBs testen? Allgemeines EE 12
Dimax JSP Auf button click java methode ausführen.Ist das möglich? Allgemeines EE 6
L Button Handling in JSP mit Java-Backend Allgemeines EE 2
S JSF Button in panelGroup Allgemeines EE 2
MQue Servlet / Button Allgemeines EE 5
E welcher submit-Button wurde gedrückt? Allgemeines EE 11
A jsf: Link hinter Button verschecken Allgemeines EE 2
J Problem mit Zurück-Button Allgemeines EE 2
S Button kleiner als Textfeld mit gleicher Höhe Allgemeines EE 8
M JSF: Wie Refresh der Seite bei Click auf Button verhindern? Allgemeines EE 4
J struts: Bild als submit-button Allgemeines EE 2
G Methodenaufruf über Klick auf Button Allgemeines EE 3
C Servlet von Button aus starten Allgemeines EE 2
M image für submit button Allgemeines EE 3
A IE gibt bei jedem Button einen Requestparameter Allgemeines EE 2
T Problem, Image-Button geht nur nicht im Internet Explorer Allgemeines EE 6
feinperligekohlensaeure JSF Keine Tabelle / Buttons werden unter Windows angezeigt + Apple schon Allgemeines EE 9
H Suche dynamische Ajax-Tabelle Allgemeines EE 2
G JSF: horizontale Tabelle aufbauen mit 1 Zeile Allgemeines EE 6
R Bilder in HTML Tabelle ermitteln Allgemeines EE 2
P JSP - Ausgabe von Bildern in Tabelle von nem Filesystem Allgemeines EE 2
G Daten aus Inputfeldern in Tabelle speichern Allgemeines EE 6
N JSF-Checkboxen in Tabelle mit Buttons dahinter Allgemeines EE 4
P Struts Anwendung- FormBean Tabelle mit input type=text Allgemeines EE 2
A DB-Tabelle in Servlet einlesen und in JSP anzeigen Allgemeines EE 9

Ähnliche Java Themen

Neue Themen


Oben