Bramka 6.2 AbstractDefaultAjaxBehavior getCallbackUrl nie rozwiązuje już zmiennych JS
Ostatnio pracowałem nad aktualizacją dużej aplikacji internetowej, która korzystała z wicket 1.4.18 do 6.2. Mieliśmy sytuację, w której tworzyliśmy zmienne javascript, aby śledzić pozycjonowanie w obrębie listy przeciągnij i upuść. To jest tylko strona kodu, ponieważ js zawsze działał i nie został zmieniony.
ListItem.add(new AbstractDefaultAjaxBehavior()
{
private static final long serialVersionUID = 1L;
@Override
public void onComponentTag(ComponentTag tag)
{
tag.put("ondrop", "var value = $(ui.item[0]).attr('hiddenvalue');"
+ this.getCallbackScript());
}
@Override
public final CharSequence getCallbackUrl()
{
return super.getCallbackUrl() + "&hiddenvalue' + value + '";
}
}
Jednak problem, z którym się spotykam, to zmienne javascript, które nie są rozpoznawane jako wartości i są teraz traktowane jako ciągi literalne (np. „Wartość” zamiast 5) w getCallbackUrl. Nie miało to miejsca w wicket 1.4.18 i nie sądzę, aby ten problem pojawił się w naszej migracji do wersji 1.5.8.
W końcu po prostu chcemy być w stanie wyciągnąć wartość za pomocą
@Override
protected void respond(AjaxRequestTarget target)
{
getRequest().getRequestParameters().getParameterValue("hiddenvalue");
}
Jakieś rady na ten temat? Mam nadzieję, że dostarczyłem wystarczająco dużo informacji. Z góry dziękuję za wszelką pomoc. Część z nich jest trochę poza moją wiedzą i może być onieśmielająca, nie wiedząc, gdzie szukać.