[ https://issues.apache.org/jira/browse/TAP5-1530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Thiago H. de Paula Figueiredo closed TAP5-1530. ----------------------------------------------- Resolution: Invalid Hi! Please post on the dev or user mailing list before posting a bug. Since 5.2 it's not possible to add a library with a "core" mapping. <t:pagelink page="index" w:mixins="myMixin">...</t:pagelink> is wrong: it should be t:mixins, not w:mixins. Cheers! Thiago > Library of mixins > ----------------- > > Key: TAP5-1530 > URL: https://issues.apache.org/jira/browse/TAP5-1530 > Project: Tapestry 5 > Issue Type: Bug > Components: tapestry-core > Affects Versions: 5.2.5 > Reporter: Aleksandar Nikolov > > I had developed a library of several mixins in Tapestry v.5.1.0.5. Classes > are packed by maven in a jar file and added to the main project as a maven > dependency. It worked pretty well with Tapestry 5.1.0.5. > I followed the rules at http://tapestry.apache.org/component-libraries.html > and the eldest http://tapestry.apache.org/tapestry5/cookbook/lib.html. > Now I am trying to migrate the library to Tapestry 5.2.5, but found a problem > in loading mixins in the main project: > Case 1: When I use "core" library mapping in library module class: > public static void > contributeComponentClassResolver(Configuration<LibraryMapping> configuration) > { > configuration.add(new LibraryMapping("core", "com.mylib")); > } > and template code like this: "<t:pagelink page="index" > t:mixins="myMixin">...</t:pagelink>" then the following exception is thrown: > Caused by: org.apache.tapestry5.ioc.util.UnknownValueException: Unable to > resolve 'myMixin' to a mixin class name. > at > org.apache.tapestry5.internal.services.ComponentClassResolverImpl$7.invoke(ComponentClassResolverImpl.java:516) > at > org.apache.tapestry5.internal.services.ComponentClassResolverImpl$7.invoke(ComponentClassResolverImpl.java:511) > at > org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85) > at > org.apache.tapestry5.internal.services.ComponentClassResolverImpl.resolveMixinTypeToClassName(ComponentClassResolverImpl.java:509) > at > $ComponentClassResolver_1301a3347ae.resolveMixinTypeToClassName($ComponentClassResolver_1301a3347ae.java) > at > org.apache.tapestry5.internal.pageload.EmbeddedComponentAssemblerImpl.<init>(EmbeddedComponentAssemblerImpl.java:110) > at > org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.createEmbeddedAssembler(ComponentAssemblerImpl.java:276) > ... 106 more > Case 2: When I use another (my own) library mapping name and template code > like this: "<t:pagelink page="index" w:mixins="myMixin">...</t:pagelink>" > then Tapestry acts as the mixins is not attached to the Pagelink. Just > nothing happens. > The only workaround I found is to move the mixins from the library to the > main project. Then all mixins can be attached. The problem appears only when > the mixins are placed in external library. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira