Ah. You need to instantiate instances using
container.newTransientInstance(ClassName.class).

Cheers, Dan

Sorry to be brief, sent from my phone
On Jan 6, 2013 9:48 PM, "Christian Steinebach" <
[email protected]> wrote:

> Hi Dan!
>
> Thank you very much again. It seems if you can make
> it to the point where you can 'Edit' an instance, the necessary services
> are injected
> and you will get a drop down list.
> The injections 'setDomainObjectContainer' and 'setToDoItems' etc.
> are called when you edit an existing object but not when you try to
> allocate a new one.
> That would mean, only if you make a property @Optional the
> choiceProperty() method will
> be called (but only when editing the instance afterwards).
> Maybe I'm completely on the wrong track here...?
> Anyway, thanks to your suggestion it now works as expected with the
> autoComplete annotation, so my problem
> is solved in a way. :-)
>
>                 So long
>                      Christian
>
> ________________________________________
> From: Dan Haywood [[email protected]]
> Sent: Sunday, January 06, 2013 7:02 PM
> To: [email protected]
> Subject: Re: problem with choices for properties
>
> Hi Christian,
>
> Just coming back to you on this...
>
> I added a new property to the quickstart archetype's ToDoItem [1], and it
> seems to be working ok [2], [3], [4].
>
> The only thing that might be a bit odd is the rendering of "(null)" when no
> reference is set... perhaps that should simply be blank.  Otherwise, seems
> ok...
>
> Dan
>
>
> [1] http://danhaywood.com/?attachment_id=1067
> [2] http://danhaywood.com/?attachment_id=1068
> [3] http://danhaywood.com/?attachment_id=1069
> [4] http://danhaywood.com/?attachment_id=1070
>
>
>
> On 6 January 2013 10:15, Dan Haywood <[email protected]> wrote:
>
> > Hi Christian,
> > Welcome to the list, and thanks for trying out Isis.
> >
> > From a quick skim over your code, it doesn't look like there's anything
> > wrong, so you might have uncovered an issue with the Wicket viewer.
> >
> > I do know that the autocomplete functionality works [1], [2], and this
> may
> > be a better UI experience anyway... so try that out too.
> >
> > I'll take a look when I get a chance, but if you could also create a very
> > simple example test case on github, that'd be really helpful.
> >
> > Cheers
> > Dan
> >
> > [1] http://isis.apache.org/core/guides/isis-applib.html#d5e779
> > [2] http://isis.apache.org/core/guides/isis-applib.html#d5e2277
> >
> >
> >
> > On 5 January 2013 19:24, Christian Steinebach <
> > [email protected]> wrote:
> >
> >> Hei everybody!
> >>
> >> I'm trying to learn isis and DDD, using the wicket viewer.
> >> I have a class TransportDemand which has as a property a pickup
> >> destination and a delivery destination.
> >>
> >> The Destination is again defined as a class.
> >> The TransportDemands 'factory and repository' has an action
> >> newTransportDemand();
> >>
> >> In order to give the user a choice for the pickup/delivery destinations
> I
> >> created a method
> >> choicesPickup() in the class TransportDemand
> >>
> >> But, in the UI there are no choices presented when selecting 'New
> >> Transport Demand'. Only 'null' is written.
> >>
> >> When removing choicesPickup() and declaring the class Destination as
> >> @Bounded, the list of destinations is shown.
> >>
> >> What have I done wrong? Some code fragments below.
> >>
> >>           Thank your for any help
> >>                  Christian
> >>
> >>
> >>
> >>
> >>
> >> ---- TransportDemand.java
> >> public class TransportDemand extends AbstractDomainObject implements
> >> Comparable<TransportDemand> {
> >>
> >>     private Destination pickup;
> >>     public Destination getPickup() {
> >>         return pickup;
> >>     }
> >>     public List<Destination> choicesPickup(){
> >>         return destinations.allDestinations();
> >>     }
> >> .....
> >>     private Destinations destinations;
> >>     public void setDestinations(final Destinations destinations) {
> >>         this.destinations = destinations;
> >>     }
> >> }
> >>
> >> ---- TransportDemands.java
> >> public class TransportDemands extends AbstractFactoryAndRepository{
> >> ...
> >>     public TransportDemand newTransportDemand(
> >>             @Named("Pickup") Destination pickup,
> >>             @Named("Delivery") Destination delivery
> >>             )
> >>             {
> >>         final TransportDemand transportDemand =
> >> newTransientInstance(TransportDemand.class);
> >>         transportDemand.setPickup(pickup);
> >>         transportDemand.setDelivery(delivery);
> >>         transportDemand.setOwnedBy(currentUserName());
> >>         persist(transportDemand);
> >>         return transportDemand;
> >>     }
> >>
> >>     public List<TransportDemand> allTransportDemands(){
> >>         final String currentUser = currentUserName();
> >>         final List<TransportDemand> items =
> >> allMatches(TransportDemand.class,
> >> TransportDemand.thoseOwnedBy(currentUser));
> >>         Collections.sort(items);
> >>         return items;
> >>     }
> >>
> >>
> >> ---- Destinations.java
> >> public class Destinations extends AbstractFactoryAndRepository{
> >> ....
> >>     public List<Destination> allDestinations() {
> >>         final List<Destination> items = allInstances(Destination.class);
> >>         Collections.sort(items);
> >>         return items;
> >>     }
> >> }
> >
> >
> >
>

Reply via email to