[
https://issues.apache.org/jira/browse/TAPESTRY-1586?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506080
]
Alexander Gavrilov commented on TAPESTRY-1586:
----------------------------------------------
Yes. You're right. And we ported our code to ognl: binding instead. But there
is not solving the problem in a whole. Why there is two ClassFactory services?
Why thay both implemented by the same class? Which one (hivemind or tapestry)
could we use in our extensions?
> tapestry-prop does not working after ClassFactory changes
> ---------------------------------------------------------
>
> Key: TAPESTRY-1586
> URL: https://issues.apache.org/jira/browse/TAPESTRY-1586
> Project: Tapestry
> Issue Type: Bug
> Components: Framework
> Affects Versions: 4.1.2
> Reporter: Alexander Gavrilov
> Priority: Critical
>
> After changes in ClassFactory configuration
> http://svn.apache.org/viewvc?view=rev&rev=547813 the tapestry-prop does not
> worknig.
> In every page, where is prop: binbig used we get the exception
> javassist.NotFoundException $BaseComponent_19 Stack Trace:
> javassist.ClassPool.get(ClassPool.java:417)
> org.apache.tapestry.enhance.CtClassSource.getCtClass(CtClassSource.java:51)
> org.apache.tapestry.enhance.AbstractFab.convertClass(AbstractFab.java:82)
> org.apache.tapestry.enhance.ClassFabImpl.addField(ClassFabImpl.java:238)
> com.javaforge.tapestry.prop.PropertyAccessorClassFactoryImpl.constructClass(PropertyAccessorClassFactoryImpl.java:74)
>
> $PropertyAccessorClassFactory_1133e4154d1.constructClass($PropertyAccessorClassFactory_1133e4154d1.java)
>
> $PropertyAccessorClassFactory_1133e4154d0.constructClass($PropertyAccessorClassFactory_1133e4154d0.java)
>
> com.javaforge.tapestry.prop.PropertyAccessorSourceImpl.createNewAccessorClass(PropertyAccessorSourceImpl.java:139)
>
> com.javaforge.tapestry.prop.PropertyAccessorSourceImpl.getCachedPropertyAccessorClass(PropertyAccessorSourceImpl.java:87)
>
> com.javaforge.tapestry.prop.PropertyAccessorSourceImpl.getAccessor(PropertyAccessorSourceImpl.java:55)
>
> $PropertyAccessorSource_1133e4154cf.getAccessor($PropertyAccessorSource_1133e4154cf.java)
>
> $PropertyAccessorSource_1133e4154ce.getAccessor($PropertyAccessorSource_1133e4154ce.java)
>
> com.javaforge.tapestry.prop.PropertyAccessorBindingFactory.createBinding(PropertyAccessorBindingFactory.java:36)
>
> $BindingFactory_1133e4154a6.createBinding($BindingFactory_1133e4154a6.java)
> $BindingFactory_1133e4154a5.createBinding($BindingFactory_1133e4154a5.java)
> org.apache.tapestry.services.impl.BindingSourceImpl.createBinding(BindingSourceImpl.java:99)
>
> $BindingSource_1133e415343.createBinding($BindingSource_1133e415343.java)
> org.apache.tapestry.pageload.PageLoader.convert(PageLoader.java:320)
> org.apache.tapestry.pageload.PageLoader.bind(PageLoader.java:280)
> org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:393)
>
> org.apache.tapestry.pageload.PageLoader.createImplicitComponent(PageLoader.java:506)
>
> $IPageLoader_1133e41540a.createImplicitComponent($IPageLoader_1133e41540a.java)
>
> $IPageLoader_1133e41540b.createImplicitComponent($IPageLoader_1133e41540b.java)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.createImplicitComponent(ComponentTemplateLoaderLogic.java:203)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(ComponentTemplateLoaderLogic.java:158)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(ComponentTemplateLoaderLogic.java:98)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.loadTemplate(ComponentTemplateLoaderLogic.java:75)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderImpl.loadTemplate(ComponentTemplateLoaderImpl.java:60)
>
> $ComponentTemplateLoader_1133e415414.loadTemplate($ComponentTemplateLoader_1133e415414.java)
>
> org.apache.tapestry.pageload.PageLoader.loadTemplateForComponent(PageLoader.java:676)
>
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:92)
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:122)
> $BaseComponent_4.finishLoad($BaseComponent_4.java)
> org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:410)
>
> org.apache.tapestry.pageload.PageLoader.createImplicitComponent(PageLoader.java:506)
>
> $IPageLoader_1133e41540a.createImplicitComponent($IPageLoader_1133e41540a.java)
>
> $IPageLoader_1133e41540b.createImplicitComponent($IPageLoader_1133e41540b.java)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.createImplicitComponent(ComponentTemplateLoaderLogic.java:203)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(ComponentTemplateLoaderLogic.java:158)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(ComponentTemplateLoaderLogic.java:98)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.loadTemplate(ComponentTemplateLoaderLogic.java:75)
>
> org.apache.tapestry.services.impl.ComponentTemplateLoaderImpl.loadTemplate(ComponentTemplateLoaderImpl.java:60)
>
> $ComponentTemplateLoader_1133e415414.loadTemplate($ComponentTemplateLoader_1133e415414.java)
>
> org.apache.tapestry.pageload.PageLoader.loadTemplateForComponent(PageLoader.java:676)
>
> org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:92)
> org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:122)
> $Border_1.finishLoad($Border_1.java)
> I believe this is because the tapestry-prop used hivemind.ClassFactory
> service, but the specified modification change all tapestry services to use
> tapestry.ClassFactory service.
> Maybe there are not required to introduce tapestry.ClassFactory, but instead
> everywhere use hivemind.ClassFactory
--
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]