Hello.
I am having a strange problem with tapestry and some cayenne objects
that some of you might be able to help me with. I mailed the tapestry
list about the same problem in june. See attached message.
I have a realy simple Page called VesselDownloadReport. It has a
tapestry Insert component that looks like this:
<span jwcid=..nsert" value="ognl:currentVessel.name"/>
I have a method in VesselDownloadReport.java named getCurrentVessel()
that returns a Vessel object. The Vessel object is a cayenne object. In
its parrent, _Vessel, there are the usual methods for setName(String)
and getName().
Rendering the page leads to the errormessage in this screenshot:
http://www.pvv.ntnu.no/~halset/tmp/propertydescriptor.png and in the
attached message.
Howard M. Lewis Ship (tapestry guru) answered "Perhaps you are
overriding a property provided by a super class", but I have not done
so.
Regards,
- Tore.
Begin forwarded message:
> From: Tore Halset <halse..vv.ntnu.no>
> Date: June 17, 2004 12:58:23 CEST
> To: "Tapestry users" <tapestry-use..akarta.apache.org>
> Subject: Re: Internal error while merging PDs?
> Reply-To: "Tapestry users" <tapestry-use..akarta.apache.org>
>
> On Jun 11, 2004, at 18:23, Jamis Buck wrote:
>
>> Here's a new one (for me, anyway). I'm now getting the following
>> error when I run my Tapestry app:
>>
>> PropertyDescriptor: internal error while merging PDs: type mismatch
>> between read and write methods
>>
>> Has anyone else seen this? It doesn't say which methods are causing
>> the problem, or even which object. I've looked at all of my property
>> accessors (on all of my pages and components) and they all seem to
>> have consistent types. I'm not sure where else to look.
>
> I am getting the same error. The page is realy simple and I have not
> found a set/get combination with different types. I am using
> tapestry-3.0 with ognl-2.6.3. Upgrading ognl to 2.6.5 did not fix the
> problem. Here is the stacktrace:
>
> PropertyDescriptor: internal error while merging PDs: type mismatch
> between read and write methods
>
> Stack Trace:
>
> • java.beans.PropertyDescriptor.<init>(PropertyDescriptor.java:343)
> •
> java.beans.Introspector.processPropertyDescriptors(Introspector.java:
> 649)
> •
> java.beans.Introspector.getTargetPropertyInfo(Introspector.java:572)
> • java.beans.Introspector.getBeanInfo(Introspector.java:372)
> • java.beans.Introspector.getBeanInfo(Introspector.java:144)
> • ognl.OgnlRuntime.getPropertyDescriptors(OgnlRuntime.java:1253)
> • ognl.OgnlRuntime.getPropertyDescriptor(OgnlRuntime.java:1272)
> • ognl.OgnlRuntime.getIndexedPropertyType(OgnlRuntime.java:1474)
> • ognl.ASTProperty.getIndexedPropertyType(ASTProperty.java:79)
> • ognl.ASTChain.getValueBody(ASTChain.java:63)
> • ognl.SimpleNode.getValue(SimpleNode.java:192)
> • ognl.Ognl.getValue(Ognl.java:335)
> • ognl.Ognl.getValue(Ognl.java:310)
> •
> org.apache.tapestry.binding.ExpressionBinding.resolveProperty(Expressio
> nBinding.java:201)
> •
> org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBindi
> ng.java:194)
> •
> org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.j
> ava:208)
> •
> org.apache.tapestry.param.AbstractParameterConnector.getBindingValue(Ab
> stractParameterConnector.java:105)
> •
> org.apache.tapestry.param.ObjectParameterConnector.setParameter(ObjectP
> arameterConnector.java:53)
> •
> org.apache.tapestry.param.ParameterManager.setParameters(ParameterManag
> er.java:105)
> •
> org.apache.tapestry.AbstractComponent.prepareForRender(AbstractComponen
> t.java:898)
> •
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:
> 853)
> •
> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java
> :624)
> •
> org.apache.tapestry.components.Foreach.renderComponent(Foreach.java:
> 122)
> •
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:
> 857)
> •
> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java
> :624)
> •
> org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.ja
> va:45)
> •
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:
> 857)
> •
> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java
> :624)
> • org.apache.tapestry.html.Body.renderComponent(Body.java:269)
> •
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:
> 857)
> •
> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java
> :624)
> • org.apache.tapestry.html.Shell.renderComponent(Shell.java:123)
> •
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:
> 857)
> •
> org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:
> 118)
> •
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:
> 857)
> •
> org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:
> 118)
> •
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:
> 857)
> • org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:300)
> •
> org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:
> 371)
> •
> org.apache.tapestry.engine.AbstractEngine.renderResponse(AbstractEngine
> .java:732)
> •
> org.apache.tapestry.engine.DirectService.service(DirectService.java:
> 174)
> •
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:
> 872)
> •
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.jav
> a:197)
> •
> org.apache.tapestry.ApplicationServlet.doPost(ApplicationServlet.java:
> 326)
> • javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
> • javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>
> Regards,
> - Tore.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscrib..akarta.apache.org
> For additional commands, e-mail: tapestry-user-hel..akarta.apache.org
This archive was generated by hypermail 2.0.0 : Mon Nov 01 2004 - 07:55:02 EST