Список фильтров в стойках 1.3

#java #list #jsp #drop-down-menu #struts-1

Вопрос:

Я новичок в распорках. Я хочу отфильтровать список, который отображается в виде выпадающего списка на странице JSP.

SelectClient.jsp:

 <%@ include file="/tiles/taglibs.inc"%>
<div class='block'>
  <h1><bean:message key='selectClient.header' /></h1> 
  <form name='selectClientForm' action='/index.do' method='post'> 
    <table align='center' border='0' cellspacing='0' cellpadding='0'>
    <tr>
      <td height='400px' valign='middle'>
        <bean:message key='selectClient.text'/>
        <gema:permissionSelect name='userInfo' property='client'>
          <html:options name='userInfo' property='possibleClients'/>
        </gema:permissionSelect>
      </td>  
    </tr>
    </table>
      <ul class='buttons'>
        <li>
          <gema:permissionButton action='/index.do' target='selectClient' formName='selectClientForm' defaultButton='true'>
            <bean:message key='global.action.accept' />
          </gema:permissionButton>
        </li>
      </ul>
  </form>
</div>
 

Класс модели, используемый здесь, — userInfo. Но в моем проекте это часть библиотеки, поэтому я не могу ее редактировать.

 public class UserInfo implements Serializable {
    private List<String> possibleClients = null;
    ...............  }
 

Существует struts-config.xml файл, используемый в проекте, который имеет атрибут selectClient, используемый следующим образом

   <global-forwards>
    <forward name='selectClient' module='/' path='.selectClient' redirect='true'/>
  </global-forwards>
 

Мой вопрос в том, как я могу найти соответствующий класс(POJO) или контроллер, который перенаправляет объект userInfo на страницу selectClient, чтобы я мог отфильтровать список объектов java.

Есть некоторые пути действий, присутствующие в struts-config.xml как показано ниже:

  <action path='/logout' type='de.gema.common.web.action.LogoutAction'>
  <forward name='success' path='/index.do' redirect='true'/>
  </action>
 

И, насколько я знаю о теге global-forwards, они используются как часть всех путей действий.
Что я также могу видеть в своем приложении, так как я могу сменить клиента в любое время, когда захочу.

Но когда я попытался просмотреть все классы действий, я нигде не смог найти используемый объект userInfo.

Я также отладил UserInfo.class на Intellij и я выяснили, что объект заполняется из базы данных во время запуска приложения.

Одним из подходов может быть удаление требуемого отфильтрованного атрибута из базы данных. Чтобы он не загружался в первую очередь. Однако я хотел бы знать, как я могу отфильтровать его на стороне Java?

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

1. Не уверен, что я понимаю-это помечено как Распорки 2, но код выглядит как Распорки 1; что это такое? В любом случае, неясно, в чем проблема-похоже, что список отображается через форму действия, и вы можете делать с ним все, что захотите, прежде чем он будет передан на уровень представления.

2. Привет, спасибо, я отредактировал свой вопрос и добавил дополнительную информацию. Я не могу найти соответствующий класс действий для редактирования объекта userInfo.

3. Найдите действие, просмотрев URL-адрес и найдя соответствующую конфигурацию действия.