Norbert Sándor wrote:
> You probably haven't implemented the IFormComponent.getName() method.
> 
> Br,
> Norbi

Hm, this sounds right on the money; this is exactly the reason that I
have gotten this exception before: implement IFormComponent, and don't
specify a "name" property in the .jwc.  Looks like you've been bit by
the fact that your class is abstract, so the compiler isn't going to
whine about the fact that some methods of the IFormComponent interface
aren't defined. :)

Robert

> 
> ----- Original Message ----- From: "Warner Onstine"
> <[EMAIL PROTECTED]>
> To: "Tapestry users" <[email protected]>
> Sent: Wednesday, June 29, 2005 8:27 PM
> Subject: Re: very strange exception
> 
> 
>> Hmm, not quite following. NameSet is extending BaseComponent and 
>> implements IFormComponent.
>>
>> I fixed it again by slightly modifying NameSet.jwc (added a line
>> before  the component spec).
>>
>> -warner
>>
>> On Jun 29, 2005, at 11:14 AM, Geoff Longman wrote:
>>
>>> NameSet in a class hierarchy? Not sure how your particular situation
>>> is happening but looking at
>>>
>>>  
>>> org.apache.tapestry.enhance.DefaultComponentClassEnhancer.validateEnhan
>>> cedClass()
>>>
>>> I see that it walks up the class hierarchy looking for abstract method
>>> declarations that  have not been implemented by Tapestry in the
>>> generated subclass.
>>>
>>> So, I would look up in the hierarchy and ensure there are no
>>> unimplement abstract methods that tapestry would miss at enhancement
>>> time (no <property-specification> etc).
>>>
>>> Geoff
>>>
>>> On 6/29/05, Warner Onstine <[EMAIL PROTECTED]> wrote:
>>>
>>>> So, I am developing a Tapestry application and we have started adding
>>>> in components. This the third time I have run into this error and
>>>> cannot figure out the root cause. The second I ran into it I changed
>>>> the .jwc file (removed some extraneous xml) and it went ahead just 
>>>> fine
>>>> no problem. I have since made some other changes and am getting the
>>>> same exact error again (these changes are unrelated to the component).
>>>>
>>>> Here is the error (with part of the stack trace):
>>>> org.apache.tapestry.ApplicationRuntimeException
>>>> Method 'public abstract java.lang.String
>>>> com.stchome.pam.tapestry.components.NameSet.getName()' (declared in
>>>> class com.stchome.pam.tapestry.components.NameSet) has no
>>>> implementation in class com.stchome.pam.tapestry.components.NameSet 
>>>> (or
>>>> enhanced subclass
>>>> com.stchome.pam.tapestry.components.NameSet$Enhance_17).
>>>> location:       context:/WEB-INF/components/NameSet.jwc, line 7, 
>>>> column 125
>>>> Stack Trace:
>>>> org.apache.tapestry.enhance.DefaultComponentClassEnhancer.validateEnha
>>>> nc
>>>> edClass(DefaultComponentClassEnhancer.java:203)
>>>> org.apache.tapestry.enhance.DefaultComponentClassEnhancer.constructCom
>>>> po
>>>> nentClass(DefaultComponentClassEnhancer.java:146)
>>>> org.apache.tapestry.enhance.DefaultComponentClassEnhancer.getEnhancedC
>>>> la
>>>> ss(DefaultComponentClassEnhancer.java:97)
>>>> org.apache.tapestry.pageload.PageLoader.instantiateComponent(PageLoade
>>>> r.
>>>> java:603)
>>>> org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.
>>>> ja
>>>> va:483)
>>>>
>>>> The odd thing is this:
>>>> While we have an abstract class for NameSet, there is no method for
>>>> getName, and there is no property called name in the .jwc file.
>>>>
>>>> I am running it on tomcat 4.1.30 (although had the same exact problem
>>>> on 5.0.something.
>>>>
>>>> Any ideas on this, it's very irritating. If need be, I'll attach the
>>>> .jwc and .html files.
>>>>
>>>> -warner
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>
>>>
>>> -- 
>>> The Spindle guy.           http://spindle.sf.net
>>> Get help with Spindle:
>>> http://lists.sourceforge.net/mailman/listinfo/spindle-user
>>> Announcement Feed:
>>> http://www.jroller.com/rss/glongman?catname=/Announcements
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>>
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to