Hi,
I've got some problems with 404/ 500 error codes in my wicket app that happen
to come from the past... Now, when wicket makes any url for a component this
one gets added to the path, e.g.:
http://examples7x.wicket.apache.org/forminput/?0-1.IFormSubmitListener-inputForm
So when time goes by and the component name changes to e.g.: inputForm3 and one
then calls the above URL wicket annoys with an 500 error...
(attention: it is also related to the fact if there is an active session or
there is not! - happy debugging !)
reason:
org.apache.wicket.core.request.handler.ComponentNotFoundException: Component
'brix-tile-24:form' has been removed from page.
at
org.apache.wicket.core.request.handler.ListenerRequestHandler.respond(ListenerRequestHandler.java:166)
at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:912)
....
(error from my app - u get a bit different one from the wicket examples app if
you manually change the component info part - sometimes just an 404, sometimes
500)
So, how can this be fixed that instead of giving us this 500er error in live
systems that wicket should just ignore the problem? I mean failing in dev is OK
but in deploy? So basically wicket shall treat it as
http://examples7x.wicket.apache.org/forminput/
request;
IMHO the problem here is in ListenerRequestHandler at 164:
if ((component == null && !freshPage) || (component != null &&
component.getPage() != page))
{
throw new ComponentNotFoundException("Component '" +
getComponentPath()
+ "' has been removed from page.");
}
so we know there is no component and then wicket goes berserk and throws it...
Problem arises with many URLs indexed anywhere on the web and pointing to ones
page as well as bookmarked pages from users - they have the old component info
in the paths and there is no way to remove that!
Best
KB
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]