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