Re: org.apache.wicket.WicketRuntimeException: No get method defined for class: class java.lang.String expression: userName;

2011-04-20 Thread cablepuff
Hi Martin, yesterday that was the domain (persistent object was called User). 

The command object was call Account hence AccountCommand.

Anyways I solve my problem by adding a additional parameter. 

new DropDownChoice("userChoice", new
CompoundPropertyModel(selectedUser),
   new ListModel(users),
new ChoiceRenderer("userName", "userName")); 

This solve the problem. 

Thanks. 

--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/org-apache-wicket-WicketRuntimeException-No-get-method-defined-for-class-class-java-lang-String-expr-tp3459462p3465163.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: org.apache.wicket.WicketRuntimeException: No get method defined for class: class java.lang.String expression: userName;

2011-04-20 Thread Martin Grigorov
Yesterday you pasted code with class User which is nowhere in the today's
paste.
We are not oracles. We cannot help you if you give us wrong information.

On Wed, Apr 20, 2011 at 4:28 PM, cablepuff  wrote:

> final LoadableDetachableModel accountCommand = new
> AccountDetachableModel(userId, personId);
>
>
> final AccountForm form = new AccountForm("accountForm", accountCommand);
>
>
> My AccountCommand {
>  private Integer userId;
>private Integer accountId;
>private String  accountName;
>private String  accountFN;
>private String  accountLN;
> }
>
>  it does not have userName field since the userName getters is on the User
> domain object not Account command object.
>
> My AccountDetachableModel is just
>
> @Override
> protected AccountCommand load() {
>AccountCommand accountCommand = new AccountCommand();
>// query id and set the account command field.
>return accountCommand;
> }
>
> --
> View this message in context:
> http://apache-wicket.1842946.n4.nabble.com/org-apache-wicket-WicketRuntimeException-No-get-method-defined-for-class-class-java-lang-String-expr-tp3459462p3462988.html
> Sent from the Users forum mailing list archive at Nabble.com.
>
> -
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>


-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com 


Re: org.apache.wicket.WicketRuntimeException: No get method defined for class: class java.lang.String expression: userName;

2011-04-20 Thread cablepuff
final LoadableDetachableModel accountCommand = new
AccountDetachableModel(userId, personId);


final AccountForm form = new AccountForm("accountForm", accountCommand);


My AccountCommand {
 private Integer userId;
private Integer accountId;
private String  accountName;
private String  accountFN;
private String  accountLN;
}

 it does not have userName field since the userName getters is on the User
domain object not Account command object. 

My AccountDetachableModel is just 

@Override
protected AccountCommand load() {
AccountCommand accountCommand = new AccountCommand();  
// query id and set the account command field. 
return accountCommand;
}

--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/org-apache-wicket-WicketRuntimeException-No-get-method-defined-for-class-class-java-lang-String-expr-tp3459462p3462988.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: org.apache.wicket.WicketRuntimeException: No get method defined for class: class java.lang.String expression: userName;

2011-04-18 Thread Clint Checketts
The error is in the model you gave your form. Since you aren't explicitly
stating a model for the DDC, it is assuming a CompoundPropertyModel on the
parent form.

I suspect your form declaration is something like

 new Form("form",new CompoundPropertyModel(getUserName()))

It should be something like

 new Form("form",new CompoundPropertyModel(new User()))

I'm personally not a fan of CPMs and prefer explicitly setting the model for
each of my components.

-Clint

On Mon, Apr 18, 2011 at 11:59 PM, cablepuff  wrote:

> Hi I have the following domain object
>
> public class User {
>   private String email;
>   private String firstName;
>   private String lastName;
>   private Account account;
>
>   public String getUserName() {
>  return this.account.getName();
>   }
>
>   public void setUserName(String username) {
>this.account.setName(username);
>  }
> }
>
> I have a form with dropdownchoice.
>
> final DropDownChoice userChoice = new
> DropDownChoice("userChoice",
>   new ListModel(users),
> new ChoiceRenderer("userName", "userName"));
>
> When the page loads i get this error!
>
> org.apache.wicket.WicketRuntimeException: No get method defined for class:
> class java.lang.String expression: userName
>at
>
> org.apache.wicket.util.lang.PropertyResolver.getGetAndSetter(PropertyResolver.java:492)
>at
>
> org.apache.wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:332)
>at
>
> org.apache.wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:242)
>at
>
> org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:95)
>at
>
> org.apache.wicket.markup.html.form.ChoiceRenderer.getIdValue(ChoiceRenderer.java:145)
>at
>
> org.apache.wicket.markup.html.form.AbstractSingleSelectChoice.getModelValue(AbstractSingleSelectChoice.java:166)
>at
>
> org.apache.wicket.markup.html.form.FormComponent.getValue(FormComponent.java:879)
>at
>
> org.apache.wicket.markup.html.form.AbstractChoice.onComponentTagBody(AbstractChoice.java:353)
>at org.apache.wicket.Component.renderComponent(Component.java:2690)
>at
> org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
>at org.apache.wicket.Component.render(Component.java:2521)
>at
> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1441)
>at
>
> org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
>at
>
> org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1528)
>at
> org.apache.wicket.markup.html.form.Form.onComponentTagBody(Form.java:2012)
>at org.apache.wicket.Component.renderComponent(Component.java:2690)
>at
> org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
>at org.apache.wicket.Component.render(Component.java:2521)
>at
>
> org.apache.wicket.markup.html.border.Border$BorderBodyContainer.resolve(Border.java:421)
>at
>
> org.apache.wicket.markup.resolver.ComponentResolvers.resolve(ComponentResolvers.java:65)
>at
> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1445)
>at
>
> org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
>at
>
> org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1528)
>at
>
> org.apache.wicket.markup.html.border.Border$BorderBodyContainer.onComponentTagBody(Border.java:403)
>at org.apache.wicket.Component.renderComponent(Component.java:2690)
>at
> org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
>at org.apache.wicket.Component.render(Component.java:2521)
>at
> org.apache.wicket.markup.html.border.Border.resolve(Border.java:287)
>at
>
> org.apache.wicket.markup.resolver.ComponentResolvers.resolve(ComponentResolvers.java:65)
>at
> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1445)
>at
>
> org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
>at
>
> org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1528)
>at
>
> org.apache.wicket.markup.html.border.Border$BorderBodyContainer.onComponentTagBody(Border.java:403)
>at org.apache.wicket.Component.renderComponent(Component.java:2690)
>at
> org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
>at org.apache.wicket.Component.render(Compone

org.apache.wicket.WicketRuntimeException: No get method defined for class: class java.lang.String expression: userName;

2011-04-18 Thread cablepuff
Hi I have the following domain object

public class User {
   private String email;
   private String firstName;
   private String lastName;
   private Account account;
   
   public String getUserName() {
  return this.account.getName();
   }

   public void setUserName(String username) {
this.account.setName(username); 
  }
}

I have a form with dropdownchoice.

final DropDownChoice userChoice = new
DropDownChoice("userChoice",
   new ListModel(users),
new ChoiceRenderer("userName", "userName"));

When the page loads i get this error!

org.apache.wicket.WicketRuntimeException: No get method defined for class:
class java.lang.String expression: userName
at
org.apache.wicket.util.lang.PropertyResolver.getGetAndSetter(PropertyResolver.java:492)
at
org.apache.wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:332)
at
org.apache.wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:242)
at
org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:95)
at
org.apache.wicket.markup.html.form.ChoiceRenderer.getIdValue(ChoiceRenderer.java:145)
at
org.apache.wicket.markup.html.form.AbstractSingleSelectChoice.getModelValue(AbstractSingleSelectChoice.java:166)
at
org.apache.wicket.markup.html.form.FormComponent.getValue(FormComponent.java:879)
at
org.apache.wicket.markup.html.form.AbstractChoice.onComponentTagBody(AbstractChoice.java:353)
at org.apache.wicket.Component.renderComponent(Component.java:2690)
at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
at org.apache.wicket.Component.render(Component.java:2521)
at 
org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1441)
at
org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
at
org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1528)
at
org.apache.wicket.markup.html.form.Form.onComponentTagBody(Form.java:2012)
at org.apache.wicket.Component.renderComponent(Component.java:2690)
at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
at org.apache.wicket.Component.render(Component.java:2521)
at
org.apache.wicket.markup.html.border.Border$BorderBodyContainer.resolve(Border.java:421)
at
org.apache.wicket.markup.resolver.ComponentResolvers.resolve(ComponentResolvers.java:65)
at 
org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1445)
at
org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
at
org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1528)
at
org.apache.wicket.markup.html.border.Border$BorderBodyContainer.onComponentTagBody(Border.java:403)
at org.apache.wicket.Component.renderComponent(Component.java:2690)
at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
at org.apache.wicket.Component.render(Component.java:2521)
at org.apache.wicket.markup.html.border.Border.resolve(Border.java:287)
at
org.apache.wicket.markup.resolver.ComponentResolvers.resolve(ComponentResolvers.java:65)
at 
org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1445)
at
org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
at
org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1528)
at
org.apache.wicket.markup.html.border.Border$BorderBodyContainer.onComponentTagBody(Border.java:403)
at org.apache.wicket.Component.renderComponent(Component.java:2690)
at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
at org.apache.wicket.Component.render(Component.java:2521)
at 
org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1441)
at
org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
at
org.apache.wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:697)
at
org.apache.wicket.markup.html.border.Border.onComponentTagBody(Border.java:328)
at org.apache.wicket.Component.renderComponent(Component.java:2690)
at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1539)
at org.apache.wicket.Component.render(Component.java:2521)
at 
org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1441)
at
org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1604)
at
org.apache.wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:697)
at
org.apache.wicket.markup.html.border.Border.onComponentTagBody(Border.java:328)
at org.apache.wicket.Component.renderComponent(C