Nice call Steve!  I built a new Wonder Application, added the external 
framework and changed Main to be:



public class Main extends CSSComponent



and I get the same error.



So I did some more checking with my project. The project is comprised of the 
application, 3 supporting external frameworks with resources and WOComponents, 
plus 7 other frameworks containing EOModels and classes.  Oddly enough, the 
application loads its preferences from a database via one of the database 
frameworks, so this leads me to believe I have really messed up the framework 
with CSSComponent.

Thanks again for the suggestion.  It may not have been a solution, but at least 
you have pointed me in a direction.

David


Could be. I have also seen this error when Eclipse gets confused and then all 
that will fix it is a bunch of restarts, refreshes, and rebuilds.  Did you try 
creating a new Wonder Application and running it to see what happens?


Steve




On May 19, 2016, at 10:51 AM, Ress, David A 
<[email protected]<mailto:[email protected]>> wrote:

Thanks for the suggestion Steve. I implemented the override but now I am 
getting:



Class 'NewMain' exists but is not a subcomponent of WOComponent

Must be something with the application not seeing the external framework.

David


From: Steve Peery [email protected]<mailto:[email protected]>
Subject: Re: Class Main exists but is not a subcomponent of WOComponent

I have had numerous projects where there is a name conflict with the Main 
component. If this is what your problem is, an easy fix is to just change the 
name of your main component.
Here is a my override in Application to change the name of my main component 
from Main to VCAT2Main:

public WOComponent pageWithName(String aName, WOContext aContext) {
// there is a conflict with the object name Main.
// It is caused by the batik.jar file (and maybe others) in the Libraries 
directory
// convert null or Main to VCAT2Main
if (aName == null) {
aName = VCAT2Main.class.getSimpleName();
}
else if (aName.equals("Main")) {
aName = VCAT2Main.class.getSimpleName();
}
return super.pageWithName(aName, aContext);
}

There may be a better solution, but this has worked for me.

Steve




 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to