On Wed, Oct 29, 2008 at 12:03 PM, Martijn Dashorst <
[EMAIL PROTECTED]> wrote:

> afiar the proxy based model is null safe.
>
>
Hello Martijn,

But IIUC it's not refactor-friendly (and no navigation and code completion),
right ?

I really hope they add first-class properties (that is, not string-based) in
java 7 ...

city = new TextField<String> (customer#address#city);

Maarten


>
>
> On Wed, Oct 29, 2008 at 11:47 AM, francisco treacy
> <[EMAIL PROTECTED]> wrote:
> > hi maarten
> >
> >> About the null checking, I will see if I can avoid having nested null
> values
> >> in my proof-of-concept project.
> >
> > thing is the object chain is going to be resolved before it gets
> > passed in - there's nothing you can do about it inside your class :(
> > an eventual null pointer exception would be thrown before your
> > constructor is called.
> >
> > francisco
> >
> >
> >
> >
> >
> >>
> >>>
> >>> On Wed, Oct 29, 2008 at 10:42 AM, Maarten Bosteels
> >>> <[EMAIL PROTECTED]>wrote:
> >>>
> >>> > On Wed, Oct 29, 2008 at 8:35 AM, Wayne Pope <
> [EMAIL PROTECTED]
> >>> >
> >>> > wrote:
> >>> > >
> >>> > > Hi,
> >>> > >
> >>> > > Francisco and I here where discussing whether we could figure a way
> of
> >>> > > having some form of static/compile time checking on our
> >>> > > (Compound)PropertyModels, as I'm a bit concerned long term about
> some
> >>> > nasty
> >>> > > runtime bugs that might slip through the testing coverage.
> Francisco
> >>> > found
> >>> > > this thread - I'm wondering what the status is? I had a look at:
> >>> > > https://issues.apache.org/jira/browse/WICKET-1327
> >>> > >
> >>> > > and there doesn't look like any activity since Feb. Anyone been
> using
> >>> > this
> >>> > > or come up with a different solution?
> >>> > >
> >>> > > Ideally I think it would be just great if we had an eclipse plugin
> that
> >>> > > could just check for this (a bit like checkstyle or something) but
> a
> >>> > runtime
> >>> > > solution as proposed above seems really smart as well. However I'd
> >>> rather
> >>> > > keep is 100% java (ie not cglib) if possible.
> >>> >
> >>> > Hello,
> >>> >
> >>> > If you want something 100% java you could copde your domain models
> like
> >>> > this:
> >>> >
> >>> > public class Customer implements Serializable {
> >>> >  public final IModel<String> firstName = new Model<String>();
> >>> >  public final IModel<String> lastName = new Model<String>();
> >>> > }
> >>> >
> >>> > and use it like this:
> >>> >
> >>> > form.add(new TextField<String>("firstName", customer.firstName));
> >>> > form.add(new TextField<String>("lastName", customer.lastName));
> >>> >
> >>> > => no need to generate ugly getters/setters for all your properties
> >>> > => pure java
> >>> > => refactoring-safe
> >>> > => navigation + code-completion from IDE
> >>> > => you can still override setObject() and/or setObject() when needed
> >>> >
> >>> > In this example I have used wicket's IModel and Model but you could
> >>> > also use Property<String> from https://bean-properties.dev.java.net/
> >>> > which has a lot of other benefits (a pity that the project is stalled
> a
> >>> > bit).
> >>> >
> >>> > Note that I haven't used this extensively but I sure do want to test
> >>> > it out in the near future..
> >>> >
> >>> > One problem I see with this approach is when you need null-checking
> >>> > for nested properties:
> >>> > eg:  new TextField<String>("city", customer.address.getObject().city
> );
> >>> >
> >>> > Let me know what you think about it.
> >>> >
> >>> > Maarten
> >>> >
> >>> >
> >>> > > Thanks for any update if anyone knows anything!
> >>> > > Wayne
> >>> > >
> >>> > >
> >>> > >
> >>> > >
> >>> > >
> >>> > > Johan Compagner wrote:
> >>> > >>
> >>> > >> no i really dont like that
> >>> > >> then everywhere there code they need to do that, that is not an
> >>> option.
> >>> > >> and they have to program themselfs agains the proxy api. I dont
> want
> >>> > that
> >>> > >> developers also have the learn/do that
> >>> > >> This is something commons-proxy needs to do
> >>> > >>
> >>> > >> On Sat, Mar 8, 2008 at 3:29 PM, James Carman <
> >>> > [EMAIL PROTECTED]>
> >>> > >> wrote:
> >>> > >>
> >>> > >>> Couldn't you also do:
> >>> > >>>
> >>> > >>> ProxyFactory pf = ...;
> >>> > >>> new SharedPropertyModel<Customer>(pf, customer);
> >>> > >>>
> >>> > >>> So, the client tells you what proxy factory implementation to
> use.
> >>> > >>>
> >>> > >>> On 3/8/08, James Carman <[EMAIL PROTECTED]> wrote:
> >>> > >>> > I see the JIRA, I'll go ahead and start the discussion on the
> dev
> >>> > list.
> >>> > >>> >
> >>> > >>> >
> >>> > >>> >  On 3/8/08, James Carman <[EMAIL PROTECTED]> wrote:
> >>> > >>> >  > On 3/8/08, Johan Compagner <[EMAIL PROTECTED]> wrote:
> >>> > >>> >  >
> >>> > >>> >  > > for wicket this is a feature it really should have
> >>> > >>> >  >  >  now it defeats the purpose i have to make a decission in
> >>> > wicket
> >>> > >>> which
> >>> > >>> >  >  >  factory i use
> >>> > >>> >  >  >  Then i can just as well directly compile against cglib.
> >>> > >>> >  >  >  I cant make the api that way that the developer has to
> give
> >>> > that
> >>> > >>> factory to
> >>> > >>> >  >  >  use. That would be completely horrible,
> >>> > >>> >  >  >
> >>> > >>> >  >
> >>> > >>> >  >
> >>> > >>> >  > You could always implement your own brand of discovery for
> your
> >>> > >>> >  >  project (perhaps by using the service discovery feature
> built
> >>> > into
> >>> > >>> the
> >>> > >>> >  >  jdk).
> >>> > >>> >  >
> >>> > >>> >  >  I like the idea of splitting it (and doing it the slf4j way
> >>> > rather
> >>> > >>> >  >  than the JCL way).  I have actually suggested that we start
> an
> >>> > >>> >  >  exploratory branch of JCL to make it work more like slf4j
> >>> (we've
> >>> > >>> been
> >>> > >>> >  >  talking about this since 2005).  Anyway, if you file a JIRA
> >>> > issue,
> >>> > >>> >  >  I'll make sure we have a discussion with the other devs.
>  For
> >>> > your
> >>> > >>> >  >  immediate purposes, commons-discovery is available also.
> >>> > >>> >  >
> >>> > >>> >
> >>> > >>>
> >>> > >>>
> ---------------------------------------------------------------------
> >>> > >>> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>> > >>> For additional commands, e-mail: [EMAIL PROTECTED]
> >>> > >>>
> >>> > >>>
> >>> > >>
> >>> > >>
> >>> > >
> >>> > > --
> >>> > > View this message in context:
> >>> >
> >>>
> http://www.nabble.com/CompoundModel-based-on-proxies-tp15317807p20222077.html
> >>> > > Sent from the Wicket - User mailing list archive at Nabble.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]
> >>> >
> >>> >
> >>>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
>
> --
> Become a Wicket expert, learn from the best: http://wicketinaction.com
> Apache Wicket 1.3.4 is released
> Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to