Our app hasn't been under active development for a while, so we have fallen
a bit behind. We're about to start a new project with our wicket app, so I
thought our first step should be getting current. I read the migration
guide - it helped get me through a lot of issues. So I've been able to get
past all the obvious stuff (compile errors) and have our app up and running
under 6.19, with a few glaring problems.

#1 is with rendering a full page URL (for inclusion in an email).

After constructing the parameters, our code does this:
    Url url = RequestCycle.get().mapUrlFor(page_class, parameters);
    return _req_cycle.getUrlRenderer().renderFullUrl(url);

In 1.5, this generated a URL like this (which works)

http://localhost/portal/pages/registration/[email protected]&m=-1663176292159862270
but now we get:

http://localhost/portal/pages/registration/pages/registration/[email protected]&m=-1663176292159862270

Note the extra "pages/registration/". Any ideas where I should look into
this? The pages are mounted with a friendlier URL - could this be related?


#2 is with an IndicatingAjaxLink.
The HTML looks like this:
  <a href="#" wicket:id="create_customer_link"><img
src="images/add_button.gif"><wicket:message
key="Create_customer">create...</wicket:message></a>
And we create it with:
_create_customer_link = new
IndicatingAjaxLink<License>("create_customer_link")
    {
    @Override
    public void onClick(AjaxRequestTarget target)
    {
followed by our onClick logic.

But the generated HTML has a bad href and no onClick():
<a href="javascript:;" wicket:id="create_customer_link"
id="create__customer__linkf"><img
src="../../images/add_button.gif"><wicket:message
key="Create_customer">Create customer</wicket:message></a><span
style="display:none;" class="wicket-ajax-indicator"
id="create__customer__linkf--ajax-indicator"><img
src="../wicket/resource/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/indicator-ver-1429197921240.gif"
alt=""/></span>
Before the upgrade, it would render as:
<a href="#" id="id29" onclick="if (function(){return
Wicket.$(&#039;id29&#039;) != null;}.bind(this)()) {
Wicket.showIncrementally(&#039;id29--ajax-indicator&#039;);}var
wcall=wicketAjaxGet(&#039;OrganizationAdministration?15-1.IBehaviorListener.1-form-create_customer_link&#039;,function()
{
;Wicket.hideIncrementally(&#039;id29--ajax-indicator&#039;);}.bind(this),function()
{ ;Wicket.hideIncrementally(&#039;id29--ajax-indicator&#039;);}.bind(this),
function() {return Wicket.$(&#039;id29&#039;) != null;}.bind(this));return
!wcall;"><img src="../../images/add_button.gif">Create customer</a><span
style="display:none;" class="wicket-ajax-indicator"
id="id29--ajax-indicator"><img
src="../wicket/resource/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/indicator-ver-03CE3DCC84AF110E9DA8699A841E5200.gif"
alt=""/></span>

I feel like I should know where to start investigating this, but it's been
a few years since I've been active with Wicket and I'm flailing around a
bit at the moment. Any help would be greatly appreciated!

TIA!
Chris

Reply via email to