BTW: PatientData is an inner class of the PatientFormController class (just in case it wasn't clear).
On 3/5/07, Luke Shannon <[EMAIL PROTECTED]> wrote:
Hi Matt; Actually I am going to do something like below. The data I'm getting this from is a seperate DB table than the ones I have generated using appfuse (I have created my own ETL process to build it). Is this the hard way to do it? I am still learning hibernate and spring so I am not totally comfortable with the framework. Thanks, Luke public ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command, BindException errors) throws Exception { if (log.isDebugEnabled()) { log.debug("entering 'onSubmit' method..."); } Patient patient = (Patient) command; boolean isNew = (patient.getPatientId() == null); Locale locale = request.getLocale(); if (request.getParameter("delete") != null) { patientManager.removePatient(patient.getPatientId().toString()); saveMessage(request, getText("patient.deleted", locale)); } else { String countryId = request.getParameter("countryId"); String doctorId = request.getParameter("doctorId"); PatientData p_data = new PatientData(countryId); patient.setPatientTag(p_data.getTag()); patient.setTreatmentarm(p_data.getTreatmentArm()); patient.setDoctorId(new Long(doctorId));//this is going to come from the request patientManager.savePatient(patient); String key = (isNew) ? "patient.added" : "patient.updated"; saveMessage(request, getText(key, locale)); if (!isNew) { return new ModelAndView("redirect:editPatient.html", "patientId", patient.getPatientId()); } } return new ModelAndView(getSuccessView()); } public class PatientData { private String tag; private int treatmentArm; PatientData(String countryId) { //connect to the DB to get the next available values for the countryId this.tag = "value from DB"; this.treatmentArm = 0;//value from the DB //update the assignment date so these values will not be selected again } /** * @return the tag */ public String getTag() { return tag; } /** * @param tag the tag to set */ public void setTag(String tag) { this.tag = tag; } /** * @return the treatmentArm */ public int getTreatmentArm() { return treatmentArm; } /** * @param treatmentArm the treatmentArm to set */ public void setTreatmentArm(int treatmentArm) { this.treatmentArm = treatmentArm; } } On 3/5/07, Matt Raible <[EMAIL PROTECTED]> wrote: > The method of how data is retrieved from the database should already > be setup for you - with Managers, DAOs, etc. Showing us pseudo code > for what you're trying to do with make it much easier to help. > > Matt > > On 3/5/07, Luke Shannon <[EMAIL PROTECTED]> wrote: > > Thanks Mat, formBackingObject() seems to be the way to go. Do you see > > any problem using the Jakarta-Commons DB connection pool to obtain the > > data from the DB? Or is there a better approach to this? > > > > On 3/4/07, Matt Raible <[EMAIL PROTECTED]> wrote: > > > You could do this in your DAO where you originally fetch everything. Also, > > > there's logic in your FormController's formBackingObject() that gets your > > > object from the database before populating it from request parameters. This > > > means you don't have to store these fields in hidden fields. If this > > > doesn't work, you might try storing the non-editable fields in hidden fields > > > or read-only fields. > > > > > > Matt > > > > > > > > > On 3/4/07, Luke Shannon <[EMAIL PROTECTED]> wrote: > > > > > > > > Hi; > > > > > > > > This may be a more of a Spring question, although I am hoping there is > > > > something within the Appfuse tools to assist with this. > > > > > > > > I have a Pojo I have created in my application and I have used Appgen > > > > to create everything I need for the CRUD operations. > > > > > > > > What I would like to do now is modify the application so specific > > > > fields in the Pojo are set using data from a DB and not from user > > > > input from the web tier. > > > > > > > > Working within the Struts framework (Appfuse 1.9.4) where is the best > > > > place to implement such a change? Is there a best practise for > > > > something like this? > > > > > > > > Thanks, > > > > > > > > Luke > > > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: > > > [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > -- > > > http://raibledesigns.com > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > http://raibledesigns.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]