strange behaviour of an Wonder application
strange behaviour of an Wonder application
- Subject: strange behaviour of an Wonder application
- From: Lars Sonchocky-Helldorf <email@hidden>
- Date: Sun, 12 Sep 2010 02:04:08 +0200
Hi everybody,
I am maintaining a mavenized WebObjects Application which makes use
of wonder.core.JavaWOExtensions and wonder.ajax.Ajax of Wonder. Until
recently this WOApp made use of a 4.0.0.412 of Wonder despite being
an WO 5.4 app. At first I removed this dependency since I wasn't able
to get it from somewhere and the WOApp did run until it hit a wall
when trying to use some JSConfirmPanel and some Ajax stuff.
So I included the 5.0.0-r11124 version of Wonder only to experience
problems with the class loader now (It did not find my Main class any
longer but tried instead to use one of Log4J.
A co-worker told me to "Wonderize" the app completely as mentioned
here: http://wiki.objectstyle.org/confluence/display/WONDER/Integrate
+Wonder+Into+an+Existing+Application under "Minimum Wonder
Integration" and to override the method installPatches() of
ERXApplication as follows:
@Override
public void installPatches() {
super.installPatches();
ERXPatcher.setClassForName(Main.class, "Main");
}
The correct main class was found and used now but I got in trouble
with every single component in the project. Somehow WO did no longer
find the correct classes for the components but somehow assumed that
every component was just of type WOComponent, so all the bindings did
not work any longer:
UnknownKeyException: [<com.webobjects.appserver.WOComponent name:
MenuItemLink subcomponents: null > takeValueForKey()]: attempt to
assign value to unknown key: 'item'.
This WOComponent does not have an instance variable of the name item
or _item, nor a method of the name setItem or _setItem
at
com.webobjects.appserver.WOComponent.handleTakeValueForUnboundKey
(WOComponent.java:1781)
... skipped 4 stack elements
at com.webobjects.appserver.WOComponent.pullValuesFromParent
(WOComponent.java:525)
... skipped 17 stack elements
at de.intercom.intranet.wi.MenuDirectAction.menuActionWithID
(MenuDirectAction.java:115)
at de.intercom.intranet.wi.MenuDirectAction.homeAction
(MenuDirectAction.java:51)
... skipped 4 stack elements
at com.webobjects.appserver.WODirectAction.performActionNamed
(WODirectAction.java:144)
at er.extensions.appserver.ERXDirectAction.performActionNamed
(ERXDirectAction.java:385)
... skipped 9 stack elements
At first I tried to "fix" that this way:
@Override
public void installPatches() {
super.installPatches();
ERXPatcher.setClassForName(Main.class, "Main");
ERXPatcher.setClassForName(Layout.class, "Layout");
ERXPatcher.setClassForName(MenuDirectAction.class,
"MenuDirectAction");
ERXPatcher.setClassForName(CssTag.class, "CssTag");
ERXPatcher.setClassForName(MainMenu.class, "MainMenu");
}
which somehow worked but in the end I did not like the idea to do
this for every single component in the project, especially since it
worked before.
Does somebody have an idea what is going wrong here and how to fix it
the right way?
Thanks,
Lars
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden