Struts - Setter wird nicht aufgerufen

illaX

Erfahrenes Mitglied
Hi Leute,

ich habe eine html Seite mit Struts. Dort möchte ich Telefonnummern anzeigen, die editiert werden können, sowie der Typ der Nummer (Buisness, Privat, Fax,..).
Ich habe dafür eine TreeMap erstellt, wo der Key ein String ist (Primary Key aus der Datenbank) der zur Sortierung zusätzlich dient. Der Value ist eine Instanz der Klasse ContactTelephone. Dieses Objekt hat zwei Objektattribute "number" und "type". Diese beiden Werte möchte ich ausgeben und editieren (ActionForm).
Die Ausgabe funktioniert in folgendem Code Beispiel wunderbar. Der Setter wird allerdings nicht aufgerufen. Ich vermute, weil struts den setter von meiner Form aufruft, bin mir da aber nicht so sicher. Die Docs von Struts haben mir bisher auch nicht weitergeholfen und ich weiss nicht direkt nach welchem Begriffen ich bei dem Problem googeln kann. Hoffe ihr könnt mir weiterhelfen.

Hier mein Code:
Code:
       <logic:notEmpty name="ContactDetailsForm" property="phoneNumbers">
          <logic:iterate id="phoneNumbers" name="ContactDetailsForm" property="phoneNumbers">
            <tr>
              <bean:define id="contactTelephone" name="phoneNumbers" property="value" type="ContactTelephone"/>
              <td>
                <html:select name="contactTelephone" property="type" >
                  <html:optionsCollection name="ContactDetailsForm" property="phoneTypes" value="key" label="value"/>
                </html:select>
              </td>
              <td>
                <html:text name="contactTelephone" property="number" />
              </td>
            </tr>
          </logic:iterate>
        </logic:notEmpty>

Danke für jede Hilfe.

Gruß
illaX
 
Ok ich bin mir jetzt sicher, das struts den setter meiner Form aufruft und nicht den vom Object ContactTelephone. Aber warum wird der getter von ContactTelephone aufgerufen. Es ist für mich nicht verständlich, warum Getter/Setter von verschiedenen Klassen aufgerufen werden.
 

Neue Beiträge

Zurück