Hi everyone,
I need for my work to pass data from one form to two different Java classes and then save with Hibernate JPA in the database.
Here are the code:
In jsp file:
Code:
...
<form:form method="post" modelAttribute="vehicles">
	<fieldset><legend> Fahrer-Angaben </legend>
		<p>Damit der Mitfahrer Sie leichter erkennen kann, sollten Sie Ihr(e) Fahrzeug(e) genauer beschreiben:</p>
		
		<ol>
			<li class="checkboxradio">
				<form:radiobutton path="ownvehicle" value="1" cssClass="checkboxradio" /><label class="checkboxradio">Ich besitze folgendes (Haupt-)Fahrzeug (PKW):</label></li>
			<li class="checkboxradio">
				<label for="carbrand" class="innerlabel">Marke:</label><hh:carbrands path="brandID" />
				<label for="carmodel" class="innerlabel">Modell:</label><form:input path="model" />
			</li>
			<li class="checkboxradio">
				<label for="carcolor" class="innerlabel">Farbe:</label><hh:carcolors path="colorID" />
				<label for="caryearofmanufacture" class="innerlabel">Baujahr:</label><hh:time_YY path="yearofmanufacture" />
			</li>
			<li class="checkboxradio">
				<label for="carplatenumber" class="innerlabel">KFZ-Kennzeichen:<form:input path="licensePlate" /></label></li>
			<li class="checkboxradio">
				<label for="carpic" class="innerlabel">Bild hochladen:</label><form:input path="carpic" /></li>
			<li class="checkboxradio">
				<label for="carluggage" class="innerlabel">Gepäckmenge</label><hh:luggage path="luggage" /></li>
			<li class="checkboxradio">
				<label for="personalaveragespeed" class="innerlabel">Persönliche Richtgeschwindigkeit:</label> <form:input path="avgSpeed"  maxlength="3" cssClass="digits-3"/> km/h (auf der Autobahn)</li>
				
			<!-- <li style="margin-left: 215px;"><input type="submit" name="weitere_fahrzeug" value="Fahrzeug hinzufügen" /></li> -->
				
			<li class="checkboxradio"><form:radiobutton path="ownvehicle" value="2" cssClass="checkboxradio" /><label class="checkboxradio">Ich besitze keinen PKW.</label></li>
		</ol>
	</fieldset>
</form:form>
	
<form:form method="post" modelAttribute="offeroption">
	<fieldset><legend> Zusatz-Optionen</legend>
		<p>Ich möchte bei einer Vorab-Vermittlung eine <strong>Nachricht</strong> erhalten... <strong>[nur Premium-Mitglieder]</strong></p>
		<ol>
			<li class="checkboxradio">
				<form:checkbox path="matchMessage" cssClass="checkboxradio" />wenn für mich ein Partner gefunden wurde.</li>
			<li class="checkboxradio">
				<form:checkbox path="meetReminder" cssClass="checkboxradio" />als Erinnerung, zwei Stunden vor dem Treffzeitpunkt.</li>
		</ol>
		<p>Bei Problemen ist ein <strong>weiterer Ansprechpartner</strong> erreichbar unter:</p>
		<p>Telefon (möglichst Mobilnummer): <form:input path="emergencycallnumber"/> / Email: <form:input path="emergencyemail"/></p>
	</fieldset>
	
	<input type="submit" name="_eventId_back" value="Zurück" class="submit" />
	<input type="submit" name="_eventId_next" value="Weiter" class="submit"/>
	
</form:form>
...
In Java class:
- Vehicle.java:
Code:
...
@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY, generator="vehicle_gen")
	private int vehicleID;
	
	@Transient
	private Short ownvehicle = 1;			
	
	private byte avgSpeed;  			

	private String brandID;  			

	private String colorID;  				

	private String licensePlate;  		

	private byte luggage;  				

	private String model;  				

	private float petrolconsumption;  	

	private byte seats;  				

	private short yearofmanufacture;  	
	
	@Transient
	private String carpic;		

	//bi-directional many-to-one association to Activeoffer
	@OneToMany(mappedBy="vehicle", cascade = CascadeType.ALL)
	private Set<Activeoffer> activeoffers = new HashSet<Activeoffer>();

	//bi-directional many-to-one association to Usermedia
	@OneToMany(mappedBy="vehicle", cascade = CascadeType.ALL)
	private Set<Usermedia> usermedias = new HashSet<Usermedia>();

	//bi-directional many-to-one association to User
    @ManyToOne(cascade = CascadeType.ALL)
	@JoinColumn(name="userID")  		
	private User user;

    public Vehicle() {
    }

    public Vehicle(int vehicleID) {
        this.vehicleID = vehicleID;
    }
// conctructor, getter and setter
- Offeroption.java:
Code:
...
@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY, generator="user_gen")
	private int offerOptionID; 				
	private String emergencycallnumber;		
	private String emergencyemail;
        private boolean matchMessage;  			
	private boolean meetReminder;
// constructor, Getter and setter
...
The Webflow:
Code:
...
<persistence-context />
	
	<var name="usersettings" class="mmv.pojos.Offeroption" />
	<var name="vehicles" class="mmv.pojos.Vehicle" />
		
	<on-start>
		<evaluate expression="userService.getUserIdByUsername(currentUser.name)" result="flowScope.userId" />
		<evaluate expression="userService.getUserSettingsById(flowScope.userId)" result="usersettings" />
	</on-start>
	
	<view-state id="MymmvUserSettings" model="usersettings">
		<transition on="saveData" to="UserSettingsSave" />
	</view-state>
	
	<action-state id="UserSettingsSave">
		<evaluate expression="userService.persistUserSettings(usersettings)" />
		<transition on="success" to="UserSettingsEnd">
			<set name="flashScope.saveDataSuccess" value="true"/>
		</transition>
		<transition on="error" to="UserSettingsEnd" />
	</action-state>
	
	<end-state id="UserSettingsEnd" commit="true" view="MymmvUserSettings" />

</flow>
Now I want to know how I can do it with Spring WebFlow? Shall I use <subflow>-Tag? If so, how?
Thank you in advance for your help?