Re: T5: @Propery can not be an Interface? No default coercion?

2008-12-01 Thread Ville Virtanen

You can have interface parameters, but the problem here is that you define a
parameter of type PageDelegate, and try to assign a default value of string
false to that parameter. Perhaps you meant @Property(required=false) ?

 - Ville



Maximilian Weißböck wrote:
 
 I have a component that has a delegate as parameter binding like this:
 
  
 
@Parameter(false)
 
@Property
 
private PageDelegate pageDelegate;
 
  
 
 Inside the page I'm testing if the delegate is set (only then an
 ActionLink will be shown)
 
  
 
t:if test=pageDelegate
 
  
 
  
 
 PageDelegate is an Interface, and I'm getting this error on startup:
 
  
 
 [ERROR] ipeople.Index Render queue error in
 BeginRender[ipeople/Index:iphonelistlayout.if_0]: Failure reading
 parameter 'test' of component ipeople/Index:iphonelistlayout.if_0: Failure
 reading parameter 'pageDelegate' of component
 ipeople/Index:iphonelistlayout: Could not find a coercion from type
 java.lang.Boolean to type at.sphinx.sxfinder.util.PageDelegate.  Available
 coercions: Double -- Float, Float -- Double, Long -- Boolean, Long --
 Byte, Long -- Double, Long -- Integer, Long -- Short, Number -- Long,
 Object -- Object[], Object -- String,  ... [deleted]
 
  
 
 Everything works fine if I change pageDelegate to type Object, as there is
 a default coercion for Object.
 
 Now what I would like is the exact same behaviour for an Interface as it
 is for Object (test returns true if not null, false if null)
 
  
 
 Is there e generic way to do this, or even better could that be standard
 behaviour in T5?
 
 Anything that is against this possible standard behaviour?
 
  
 
  
 
 And a second question:
 
  
 
 What I'm doing with this PageDelegate is to give the Component access to
 the Page it is contained in.
 
 Is there a better/standard way to do this?
 
  
 
 Thanks, Max
 
  
 
 
 

-- 
View this message in context: 
http://www.nabble.com/T5%3A-%40Propery-can-not-be-an-Interface--No-default-coercion--tp20700914p20768313.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



AW: T5: @Propery can not be an Interface? No default coercion?

2008-12-01 Thread Maximilian Weißböck
Thanks, yes exactly this is what I meant...
I feel so ... still learning T5 :-)

Thanks again, Max

 -Ursprüngliche Nachricht-
 Von: Ville Virtanen [mailto:[EMAIL PROTECTED]
 Gesendet: Montag, 1. Dezember 2008 10:04
 An: users@tapestry.apache.org
 Betreff: Re: T5: @Propery can not be an Interface? No default coercion?
 
 
 You can have interface parameters, but the problem here is that you define
 a
 parameter of type PageDelegate, and try to assign a default value of
 string
 false to that parameter. Perhaps you meant @Property(required=false) ?
 
  - Ville
 
 
 
 Maximilian Weißböck wrote:
 
  I have a component that has a delegate as parameter binding like this:
 
 
 
 @Parameter(false)
 
 @Property
 
 private PageDelegate pageDelegate;
 
 
 
  Inside the page I'm testing if the delegate is set (only then an
  ActionLink will be shown)
 
 
 
 t:if test=pageDelegate
 
 
 
 
 
  PageDelegate is an Interface, and I'm getting this error on startup:
 
 
 
  [ERROR] ipeople.Index Render queue error in
  BeginRender[ipeople/Index:iphonelistlayout.if_0]: Failure reading
  parameter 'test' of component ipeople/Index:iphonelistlayout.if_0:
 Failure
  reading parameter 'pageDelegate' of component
  ipeople/Index:iphonelistlayout: Could not find a coercion from type
  java.lang.Boolean to type at.sphinx.sxfinder.util.PageDelegate.
 Available
  coercions: Double -- Float, Float -- Double, Long -- Boolean, Long --
 
  Byte, Long -- Double, Long -- Integer, Long -- Short, Number --
 Long,
  Object -- Object[], Object -- String,  ... [deleted]
 
 
 
  Everything works fine if I change pageDelegate to type Object, as there
 is
  a default coercion for Object.
 
  Now what I would like is the exact same behaviour for an Interface as it
  is for Object (test returns true if not null, false if null)
 
 
 
  Is there e generic way to do this, or even better could that be standard
  behaviour in T5?
 
  Anything that is against this possible standard behaviour?
 
 
 
 
 
  And a second question:
 
 
 
  What I'm doing with this PageDelegate is to give the Component access to
  the Page it is contained in.
 
  Is there a better/standard way to do this?
 
 
 
  Thanks, Max
 
 
 
 
 
 
 --
 View this message in context: http://www.nabble.com/T5%3A-%40Propery-can-
 not-be-an-Interface--No-default-coercion--tp20700914p20768313.html
 Sent from the Tapestry - 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]



Re: T5: @Propery can not be an Interface? No default coercion?

2008-11-28 Thread Howard Lewis Ship
How to you convert the string false to an instance of whatever
PageDelegate is?  Tapestry doesn't know either.

On Wed, Nov 26, 2008 at 3:41 AM, Maximilian Weißböck
[EMAIL PROTECTED] wrote:
 I have a component that has a delegate as parameter binding like this:



   @Parameter(false)

   @Property

   private PageDelegate pageDelegate;



 Inside the page I'm testing if the delegate is set (only then an ActionLink 
 will be shown)



   t:if test=pageDelegate





 PageDelegate is an Interface, and I'm getting this error on startup:



 [ERROR] ipeople.Index Render queue error in 
 BeginRender[ipeople/Index:iphonelistlayout.if_0]: Failure reading parameter 
 'test' of component ipeople/Index:iphonelistlayout.if_0: Failure reading 
 parameter 'pageDelegate' of component ipeople/Index:iphonelistlayout: Could 
 not find a coercion from type java.lang.Boolean to type 
 at.sphinx.sxfinder.util.PageDelegate.  Available coercions: Double -- Float, 
 Float -- Double, Long -- Boolean, Long -- Byte, Long -- Double, Long -- 
 Integer, Long -- Short, Number -- Long, Object -- Object[], Object -- 
 String,  ... [deleted]



 Everything works fine if I change pageDelegate to type Object, as there is a 
 default coercion for Object.

 Now what I would like is the exact same behaviour for an Interface as it is 
 for Object (test returns true if not null, false if null)



 Is there e generic way to do this, or even better could that be standard 
 behaviour in T5?

 Anything that is against this possible standard behaviour?





 And a second question:



 What I'm doing with this PageDelegate is to give the Component access to the 
 Page it is contained in.

 Is there a better/standard way to do this?



 Thanks, Max







-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

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



T5: @Propery can not be an Interface? No default coercion?

2008-11-26 Thread Maximilian Weißböck
I have a component that has a delegate as parameter binding like this:

 

   @Parameter(false)

   @Property

   private PageDelegate pageDelegate;

 

Inside the page I'm testing if the delegate is set (only then an ActionLink 
will be shown)

 

   t:if test=pageDelegate

 

 

PageDelegate is an Interface, and I'm getting this error on startup:

 

[ERROR] ipeople.Index Render queue error in 
BeginRender[ipeople/Index:iphonelistlayout.if_0]: Failure reading parameter 
'test' of component ipeople/Index:iphonelistlayout.if_0: Failure reading 
parameter 'pageDelegate' of component ipeople/Index:iphonelistlayout: Could not 
find a coercion from type java.lang.Boolean to type 
at.sphinx.sxfinder.util.PageDelegate.  Available coercions: Double -- Float, 
Float -- Double, Long -- Boolean, Long -- Byte, Long -- Double, Long -- 
Integer, Long -- Short, Number -- Long, Object -- Object[], Object -- 
String,  ... [deleted]

 

Everything works fine if I change pageDelegate to type Object, as there is a 
default coercion for Object.

Now what I would like is the exact same behaviour for an Interface as it is for 
Object (test returns true if not null, false if null)

 

Is there e generic way to do this, or even better could that be standard 
behaviour in T5?

Anything that is against this possible standard behaviour?

 

 

And a second question:

 

What I'm doing with this PageDelegate is to give the Component access to the 
Page it is contained in.

Is there a better/standard way to do this?

 

Thanks, Max