7

クラスA:

package myproject.web.factory.components;

@Component
public class AppComponentFactory{
}

クラスB

package myproject.web.components;
import myproject.web.factory.components.AppComponentFactory;

@Component
public class AdminTabSheet{

   @Autowired
   private AppComponentFactory appComponentFactory;

   public AdminTabSheet() {
   }

   @PostConstruct
   public void init() {
      // does something with appComponentFactory
   }
}

構成 XML:

<context:component-scan base-package="myproject.spring" />

WebConfig.java:

package myproject.spring.config;

@Configuration
@ComponentScan(basePackages = { "myproject.web.components"})
public class WebConfig {

http://docs.oracle.com/javaee/5/api/javax/annotation/PostConstruct.htmlのすべてのルールに従いました。

  • このアノテーションでアノテーションを付けることができるメソッドは 1 つだけです。
  • メソッドは、EJB インターセプターの場合を除き、パラメーターを持ってはなりません (MUST NOT)。
  • メソッドの戻り値の型は void でなければなりません。
  • メソッドは、チェック例外をスローしてはなりません。
  • PostConstruct が適用されるメソッドは、パブリック、プロテクト、パッケージ プライベート、またはプライベートの場合があります。
  • メソッドは static であってはなりません。

何か案は?

4

1 に答える 1