You probably haven't implemented the IFormComponent.getName() method.

Br,
Norbi

----- 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]

Reply via email to