Вопрос по распоркам 2 и Struts-jQuery Autocompleter

#jquery #jquery-plugins #struts2 #struts

#jquery #jquery-плагины #struts2 #struts

Вопрос:

Обновление: я получаю результат с помощью firebug, но результат не отображается на страницах? Кто-нибудь знает почему?

результат выглядит так :

 {"results":["hello","bye"]}
  

(PS: плагин jason, который я опубликовал, устарел, что приводит к ошибке. Теперь я переключился на struts-jason-plugin по умолчанию).

Всем привет, у меня возникла проблема с созданием рабочей. Я использую последнюю версию всех зависимостей. (Struts 2.2.1) Я хочу выполнить поиск в реальном времени из базы данных, используя. вот код в моем файле JSP:

 <sj:autocompleter name="movieName" id="movieName"
                                href="%{jsonlanguages}" 
                                delay="50" 
                                loadMinimumCount="2"
                                ></sj:autocompleter>
  

jsonlanguages ссылается на действие, которое я определил как

  <s:url id="jsonlanguages" action="movieLiveSearch"/> 
  

в настоящее время текущее состояние таково, что это действие вызывается, когда пользователь вводит автозаполнитель, но выпадающий список, содержащий результаты, не возвращается.

Функция выполнения моего действия определяется следующим образом:

 public String display() throws IOException {
    System.out.println("execute movie live search");
    results.add("hello");
    results.add("goodbye");     
    return "SUCCESS";
}
  

где результаты определяются как

 private List<String> results;
  

в настоящее время я просто хочу вернуть переменные результаты.(пока оставьте db отдельно).
И мой struts.xml файл:

 <result-types>
    <result-type name="json" class="com.googlecode.jsonplugin.JSONResult"/>
</result-types>

<action name="movieLiveSearch" class="proj.MovieManagement.controller.MovieLiveSearchAction" method="display">
<result type="json" name="SUCCESS">admin.jsp</result>
</action>
  

Лично я думаю, что действие не вернуло результат, но я понятия не имею, как это сделать, кто-нибудь может сказать мне, как все исправить?

Ответ №1:

Измените результат действия в struts.xml следующим образом:

 <result type="json" name="SUCCESS"><param name="root">results</param></result>
  

Корневой параметр, который мы указываем, — это имя переменной из Action.

Комментарии:

1. ТОЧНО!! Я разобрался с проблемой и хочу записать ответ здесь, но оказалось, что я получаю ответ, ЛОЛ.

2. Ой, забыл сказать СПАСИБО УУУУУУУ