[
https://issues.apache.org/jira/browse/TAP5-2560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16744623#comment-16744623
]
Hudson commented on TAP5-2560:
------------------------------
FAILURE: Integrated in Jenkins build tapestry-trunk-freestyle #1729 (See
[https://builds.apache.org/job/tapestry-trunk-freestyle/1729/])
TAP5-2560: fixing build errors (thiago: rev
7590909a2882f75e2272c9a6661a4b6071cb2f21)
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/SimpleBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/Bedrock.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/BeanWithStaticField.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/WriteOnlyBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/StoogeBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/StringHolder.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/VisibilityBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/StringSource.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/NestedObject.java
* (edit)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/AbstractBeanModelSourceImplTest.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/ComplexObject.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/CompositeBean.java
* (edit)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/GuavaBeanModelSourceImplTest.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/EchoBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/NonVisualBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/ReadOnlyBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/SimpleBeanSubclass.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/StringHolderBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/EnumBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/DataBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/StringArrayBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/GenericBean.java
* (add)
genericsresolver-guava/src/test/java/org/apache/tapestry5/internal/genericsresolverguava/PropertyOrderBean.java
> Error in GenericsUtils affecting property access
> ------------------------------------------------
>
> Key: TAP5-2560
> URL: https://issues.apache.org/jira/browse/TAP5-2560
> Project: Tapestry 5
> Issue Type: Bug
> Affects Versions: 5.4.1
> Reporter: Chris Poulsen
> Assignee: Thiago H. de Paula Figueiredo
> Priority: Major
> Attachments: generics-utils.patch
>
>
> There is an error somewhere in the GenericsUtils.resolve( TypeVariable
> typeVariable, Type containingType ) method.
> It resolves some type variables to their lower bound instead of the correct
> version.
> We have model classes that uses lots of generics and in some cases tapestry
> reports that a given property expression is invalid because some lower bound
> interface does not contain the property in the expression.
> I tried to see if I could find an easy fix, but ended up running out of time
> and simply replaced the bodies of the 5 resolution methods in the
> GenericsUtils with guava reflect code and then things started working as
> expected.
> The interface setup that gives the error looks like this:
> {code}
> public interface NonTranslatableContentUnit<T extends ContentData> {
> T getContent();
> }
> public interface BinaryContentUnit<T extends BinaryContent> extends
> NonTranslatableContentUnit<T> {}
> public interface FileContentUnit extends BinaryContentUnit<FileContent> {}
> public interface ContentData {
> isEmpty();
> ...
> }
> public interface BinaryContent extends ContentData {
> String getMimeType();
> ...
> }
> public interface FileContent extends BinaryContent {}
> {code}
> Then we have a property expression on a FileContentUnit like:
> "content.mimeType" and that fails with an error that says something like
> ContentData does not have a property MimeType.
> As far as I can tell the resolve(TypeVariable, ..) method fails to do
> anything sensible if the Type of the "containing class" is not an instance of
> ParameterizedType
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)