Toon posts:

[Struts] nieuw dynamicActionForm vullen in Action

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb iets van een SelectedForm.jsp, met daarachter een DynamicActionForm waarin automatisch de geselecteerde data wordt ingevuld. In de Action forward ik naar een soort van detailsForm.jsp. Hierbij wil ik eerst het "DynaDetailsActonForm" vullen. Als parameter krijg ik echter de "dynaSelectedActionForm" binnen. Dus hier kan ik in de Action geen data drukken. Hoe kan dit wel?
Ik heb op internet code gevonden in de action een DynamicActionForm the instantieren, zodat de jsp deze kan gebruiken. Alleen is dit niet echt een goede methode, (zou niet gebruikt mogen worden door programmers, volgens de JavaDoc).
Mijn andere optie is ipv te forwarden naar de viewdetails.jsp, om dit naar een andere action te doen en deze te koppelen aan de goede DynaActionForm, deze te vullen en dan de details.jsp te openen. Hier ben ik dan weer minder fan van omdat je dan de geselecteerdeID mee moet geven via bv een session variabele, en omdat je nu 2 Action gebruikt. Zijn er andere ideeen?

[ Voor 5% gewijzigd door Verwijderd op 25-04-2006 10:44 ]


Verwijderd

Snap niet helemaal wat je bedoelt: wil je de data die je hebt ingevoerd in je form in de action benaderen of wil je de data in een andere jsp benaderen ?

Verwijderd

Nou ik begrijp weinig van je verhaal... maar met struts moet je wel iets op je request of session zetten om een id te kunnen vasthouden. van uitgaande dat je niet een compleet framework boven op strust bent aan het bouwen

Even iets over je DynaActionForms ik snap niet waarom jij ze wilt instantieren... als je dit doet maak je alleen je leven moeilijk... is het dan niet beter om een standaard ActionForm te gebruiken? dan zijn tenminste at compile time je getters en setters aanwezig.

Als je binnen struts variabele wilt uitlezen heb je 3 opties... gebruik de GET, POST, of gebruik je session. gevolg of je jsp's worden een rotzooitje of je gaat session objects gebruiken. Trouwens wat je wel kan doen is dat session object door struts laten managen door een Form op de session te delen over meerdere acties.

als je dit niet bevalt heb je de grens van struts bereikt en kan je beter kijken naar een ander MVC

Verwijderd

Topicstarter
nou, er is ooit eens gekozen om dynamicActionForms(DAF) te gebruiken.
In de struts-config file plak je een DAF aan een Form en Action.
Nu heb ik dus FORM A, via DAF A aan Action A gekoppeld. Nu wil ik in/via Action A DAF B vullen, om zo een ingevuld FORM B te tonen.

Verwijderd

Dat kan op 2 manieren

1. Je form de 'session' scope geven, in jsp B kan je je form dan uit de sessie vissen.

2. In Action A de waardes uit je form ophalen met

Java:
1
String s = (String)PropertyUtils.getSimpleProperty(form, "naam");

en deze dan gebruiken.

[ Voor 9% gewijzigd door Verwijderd op 26-04-2006 14:38 ]