Any chance of getting the simper webapp to use DynaActionForm without too much
trouble?

Also - how does simper handle transactions, and SQLExceptions?

Thanks,

Matt

--- Bryan Field-Elliot <[EMAIL PROTECTED]> wrote:
> Simper's representation of a database row is in the class SimperBean.
> SimperBean is a relatively shallow extension of the DynaBean (actually
> DynaBean is an interface -- BasicDynaBean is a concrete class which
> SimperBean extends) -- see the commons project "BeanUtils" for the
> source to DynaBean.
> 
> Table columns, as well as relations, are represented as dynamic
> properties using the DynaBean/DynaClass mechanisms. It does NOT produce
> "get" and "set" methods for each column or relation. Instead, there is a
> single "get" method and a single "set" method, whose first parameter is
> the property name. This isn't a Simper convention, it's a DynaBean
> convention.
> 
> DynaBeans/DynaClasses are supported by the latest (nightly builds) of
> the other "beanutils" classes, which is why the Struts tags like
> <bean:write>, <logic:iterate>, etc., all work with SimperBeans (and why
> I chose DynaBeans as a basis).
> 
> With all that said, I really don't know much about the new Nesting tags
> or how they work. If they rely upon the same introspection mechanisms as
> <logic:iterate>, <bean:write>, etc., then they should work with Simper
> just fine. That's just a guess.
> 
> Bryan
> 
> 
> On Wed, 2002-03-06 at 08:04, John Menke wrote:
> 
>     >> Just give it a bash. Run a simper model through the NeXt tags. I lay
> my
>     >> money on it working as-is.
>     
>     Sounds great.  I will do this today.  Just trying to understand the
>     internals a little better.
>     
>     >> So as long as the simper beans have bean property conformity (eg:
>     >> getMyProperty, setMyProperty) then the beans are ready to go with NeXt
>     >> as they are wihout mods. I'd be very surprised if it needed mods,
>     >> really. You can use Castor types straight up because the properties
> are
>     >> valid bean properties.
>     
>     I understand this it looks like Simper will create these methods property
>     methods
>     
>     >> A nested bean is simply one object that is returned by the method of
>     >> another.
>     
>     This is what was unclear to me.  I guess when you create relations
> between
>     tables in Simper these get Methods to return another bean will be created
> in
>     the SimperBean automatically?
>     
>     
>     
>     
>     
>     -----Original Message-----
>     From: Arron Bates [mailto:[EMAIL PROTECTED]]
>     Sent: Wednesday, March 06, 2002 12:47 AM
>     To: Struts Users Mailing List
>     Subject: Re: simper-NeXt
>     
>     
>     Almost.
>     NeXt is only working off of Bean properties, and as with all beans, it
>     doesn't care as to what goes on behind those method definitions. The
>     constructor is one of those details it cares not about.
>     
>     So as long as the simper beans have bean property conformity (eg:
>     getMyProperty, setMyProperty) then the beans are ready to go with NeXt
>     as they are wihout mods. I'd be very surprised if it needed mods,
>     really. You can use Castor types straight up because the properties are
>     valid bean properties.
>     
>     A nested bean is simply one object that is returned by the method of
>     another. As each property getter method has "get" on the front of it,
>     we're laughin'. At the point of changing a property, you'll need that
>     "set" on the front of it, naturally. For example, to get the nesting
>     level deeper in my Monkey examples, I had a "fake" nested property that
>     returned "this".
>     
>     eg:
>     public MonkeyBean getOtherMonkey() { return this; }
>     
>     To the internals of BeanUtils (the part of Struts that makes it all
>     happen), it's treated as an entirely different object. It makes no other
>     assumptions, rightly so. The system is that explicit.
>     
>     Just give it a bash. Run a simper model through the NeXt tags. I lay my
>     money on it working as-is.
>     
>     Arron.
>     
>     
>     John Menke wrote:
>     
>     >I'm working through the Simper examples and the NeXt examples and trying
> to
>     >understand how I can use both together. Here is what I have so far:
>     >
>     >
>     >In the NeXt you associate nested beans with a parent and children
>     >relationship by inserting a private member variable to the parent bean
> the
>     >will create a new child bean:
>     >
>     >ie.
>     >
>     ><snip - from MonkeyStruts Tutorial>
>     >
>     >private BunchBean bunchBean = new BunchBean();
>     >
>     >
>     >This will give us a new instance of the BunchBean when this MonkeyBean
> is
>     >created. Just what we want. Now we need to provide the getter method to
> the
>     >bean under the property name "pickedBunch". This will create a getter
> which
>     >will look something like this example...
>     >
>     >Example...
>     >    public BunchBean getPickedBunch() {
>     >      return this.bunchBean;
>     >
>     ></snip>
>     >
>     >This enables you to make forms like this:
>     >
>     ><snip - from MonkeyStruts Tutorial>
>     >
>     ><html:form action="/action-tutorial.do">
>     >    Monkey Name: <nested:text property="monkeyName" /><br>
>     >    Monkey Age: <nested:text property="monkeyAge" /><br>
>     >    <br>
>     >    <nested:nest property="pickedBunch">
>     >      Bunch Size: <nested:text property="bunchSize" /><br>
>     >      Bunch Weight: <nested:text property="bunchWeight" /><br>
>     >      Bunch Price: <nested:text property="bunchPrice" /><br>
>     >    </nested:nest>
>     >
>     >    <br>
>     >    <html:submit>Submit Form</html:submit>
>     >  </html:form>
>     >
>     ></snip>
>     >
>     >In order to use the NeXt with Simper it looks like the SimperBeans will
>     need
>     >to include methods like those above in order to establish the
> relationship.
>     >
>     >Is this correct? If so, Simper will not work with the NeXt in it's
> current
>     >form.
>     >
>     >I think if this can be coded Simper should be able to dynamically update
>     the
>     >contents of a database since the nested beans have their Set methods
> called
>     >automatically since they are nested within the ActionForm bean?  (Aaron
> is
>     >this correct?)
>     >
>     >Inserts into the database will require creation of a new bean and can be
>     >handled by logic in the Action that will create a SimperBean with
>     >information obtained from the ActionForm.
>     >
>     >It says in the Simper source code comments that deletes happen
>     >automatically.  I'm not sure at the moment how this is going to work.  I
>     >think you could call the Simper delete method from an Action but not
> sure
>     >how the automatic part effects this.  Does the automatic feature of
> deletes
>     >in Simper just mean that you don't have to call the writechanges()
> method
>     in
>     >Simper?
>     >
>     >
>     >Any comments and additions will be appreciated.  In my opinion, the
>     >integration of these two struts additions could be extremely useful.
>     >
>     >Bryan, (If we have to) do you think it's worth adding some code to
> Simper
>     to
>     >integrate with the NeXt?
>     >
>     >-john
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >--
>     >To unsubscribe, e-mail:
>     <mailto:[EMAIL PROTECTED]>
>     >For additional commands, e-mail:
>     <mailto:[EMAIL PROTECTED]>
>     >
>     >
>     
>     
>     
>     --
>     To unsubscribe, e-mail:
>     <mailto:[EMAIL PROTECTED]>
>     For additional commands, e-mail:
>     <mailto:[EMAIL PROTECTED]>
>     
>     
>     --
>     To unsubscribe, e-mail:  
> <mailto:[EMAIL PROTECTED]>
>     For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
>     
>     
> 


__________________________________________________
Do You Yahoo!?
Try FREE Yahoo! Mail - the world's greatest free email!
http://mail.yahoo.com/

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to