You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (JIRA)" <de...@tapestry.apache.org> on 2007/05/28 07:33:15 UTC

[jira] Commented: (TAPESTRY-1518) T5 can't support generic type page

    [ https://issues.apache.org/jira/browse/TAPESTRY-1518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12499476 ] 

Howard M. Lewis Ship commented on TAPESTRY-1518:
------------------------------------------------

This could be a bit of a problem because of type erasure.

> T5 can't support generic type page
> ----------------------------------
>
>                 Key: TAPESTRY-1518
>                 URL: https://issues.apache.org/jira/browse/TAPESTRY-1518
>             Project: Tapestry
>          Issue Type: Bug
>    Affects Versions: 5.0.3, 5.0.4, 5.0
>            Reporter: Jun Tsai
>
> Base.java
> class abstract Base<T>{
>  private T entity;
>  public void setEntity(T t){
>   this.entity=entity;
>  }
>  public T getEntity(T t){
>   return this.entity;
>  }
>  protected abstract Class<T> getEntityClass();
>  onPrepareFromMyForm(){
>   if(this.entity == null){
>    try{
>      this.entity=getEntityClass().newInstance();
>    }catch(Exception e){
>      throw new RuntimeException(e);
>    }
>   }
>  }
>  .....
> }
> ProductPage.java
> public class ProductPage extends Base<Product>{
>  protected Class<Product> getEntityClass(){
>    return Product.class;
>  }
> }
> ProductPage.html
> <t:form t:id="MyForm">
>  <t:errors/>
>        <t:label for="input"/>
>        <input t:type="textfield" t:id="input" value="entity.name" size="40" t:validate="required,minlength=3"/> 
>       <br/>
>       <input type="submit" value="Submit"/>
> </t:form>
> exception:
> Could not convert 'entity.name' into a component parameter binding: Class java.lang.Object does not contain a property named 'name' (within property expression 'entity.name').
> When I debug the app,I fiind PropertyConduitSourceImpl.readMethodForTerm before onPrepareFromMyForm method. 
> I think the method should be after onPrepareFromMyForm method.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org