Кажется немного странным, что вам нужен доступ к параметрам в закрытии вашего тега, так как вывод должен действительно зависеть только от атрибутов тега и тела. Вполне возможно, что я что-то не так понял, но если вам нужен доступ к параметру запроса в вашем теге, я бы ожидал, что поток будет похож на этот.
Сначала в контроллере отправьте значение параметров в GSP View / Template:
//Some controller method
def viewSomething = {
render(view:'viewWithTag', model:['tableId':params.tableId])
}
Затем в вашем GSP установите tableId в качестве атрибута тега, чтобы ему не нужно было ничего знать о параметрах запроса напрямую:
...
<renderAutoComplete tableId="${tableId}" />
...
Тогда в вашем закрытии taglib:
def renderAutoComplete = { attrs, body ->
def t = Table.get(attrs.tableId)
...
}
Надеюсь, это поможет! Если я неправильно понял ваш вопрос, дайте мне знать.
Обновление:
Хорошо, я думаю, что теперь я понимаю смысл путаницы. Рендеринг вывода вашего тега является неотъемлемой частью ответа, тогда как встроенные параметры являются неотъемлемой частью запроса. Таким образом, ваш тег не может устанавливать параметры запроса напрямую. Часть функциональности gui.autoComplete и его аналога YUI заключается в том, что он генерирует URL-адрес, который будет использоваться позже для отправки запроса AJAX вашему действию. Этот URL содержит параметры HTTP-запроса в типичной форме? Name = value. Grails автоматически подставит их в переменную params, доступную вам в действии.
Это работает так же, как и тег grails createLink. Вы можете указать параметры запроса, определив значение атрибута params:
<g:createLink action='act' controller='cont' params="[foo: 'bar', boo: 'far'] />
В рамках реализации createLink он просто устанавливает параметры HTTP, а grails помещает их в параметры, чтобы они были в логике контроллера. Кроме того, вы также можете установить параметры запроса, включив тот же атрибут params в свой вызов gui: autoComplete. Я не проверял это, но код, который используется для реализации этого, кажется, в конечном итоге делает переход к grails createLink, и я думаю, что по совпадению он может установить параметры запроса для вас.