Hi Matt;
I may be able to achieve my goal by calling a stored procedure using
hibernate. The last part of chapter 7 of your book has me thinking
this will work.
I am going to give this a try tomorrow.
Luke
On 3/6/07, Luke Shannon <[EMAIL PROTECTED]> wrote:
Ah, I know the feeling. Thanks for getting back to me though :-)
I am reading your chapter in Spring Live on Hibernate (Chapter 7). I'm
hoping to figure out a better way to do this from that.
BTW: This is a great book!
Luke
On 3/6/07, Matt Raible <[EMAIL PROTECTED]> wrote:
> Nope, I'm just swamped with work right now and couldn't think of an
> easy answer. ;-)
>
> Matt
>
> On 3/6/07, Luke Shannon <[EMAIL PROTECTED]> wrote:
> > Hi Matt;
> >
> > Am I totally missing the point with the code I sent?
> >
> > Thanks,
> >
> > Luke
> >
> > On 3/5/07, Luke Shannon <[EMAIL PROTECTED]> wrote:
> > > 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]
> >
> >
>
>
> --
> 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]