2

以下に定義された春の注釈付きクラスがあります

@component   
public class FormFilter extends DroplistFilterEditor{    

   @Autowire   
   private PersonService personService;

   @Override
   protected List<Option> getOptions()
   {
      List<Option> options = new ArrayList<Option>();
      try {
         String fieldName = getColumn().getProperty();
         List<StudyListView> studyList = null;
         studyList=personService.findList();
         for(StudyListView study:studyList){
           options.add(new Option(study.getId(),study.getDesc()));
         }       
     } catch (Exception ex) {
       ex.printStackTrace();
     }
     return options;
   }
}

このクラスを jsp から呼び出して、ページの読み込み時にドロップダウン リストを表示しようとしています。テーブルのレンダリングには jMesa を使用しています。

アプリケーションのデプロイ中に上記のクラスがロードされますが、jsp から呼び出されている間は personService オブジェクトは null です。自動配線は行われていません。

Spring MVC と jMesa は初めてです。どんな助けでも感謝します。前もって感謝します。

AppConfig ファイル

@Configuration
@Import({
AppTilesConfig.class,
AppWebConfig.class,
AppJpaConfig.class,
})

@ComponentScan(basePackages = {
    "com.service",
    "com.controller",
    "com.web.ui",
  })
public class AppConfig {
    // This class is a root to import all dependent configurations.
}

そして、Spring mvc (AppWebConfig) の場合、私は以下のクラスを持っています

@Configuration
@EnableWebMvc
public class AppWebConfig {

@Bean
public ReloadableResourceBundleMessageSource messageSource()
{
    ReloadableResourceBundleMessageSource messageSource = new     ReloadableResourceBundleMessageSource();
    String[] resources = {"classpath:messages"};
    messageSource.setBasenames(resources);
    return messageSource;
  }
}

ページの読み込み時に FormFilter が呼び出される jsp コードを見つけます

<jmesa:springTableFacade id="imageTableId" items="${imageList}"
                    stateAttr="restore" var="item" exportTypes="" editable="false" rowFilter=""
                    toolbar="com.bar.FullPaginationToolBar">
                    <jmesa:htmlRow uniqueProperty="rowId" rowRenderer="com.bar.CustomHtmlRowRenderer"><jmesa:htmlTable><jmesa:htmlColumn property="study" style="white-space: nowrap" title="Study" editable="false" filterable="true" filterEditor="com.web.ui.FormFilter" sortable="true" /></jmesa:htmlRow></jmesa:springTableFacade>
4

0 に答える 0