2016-12-09 8 views
1

spring 4.2.0、Dwr 3を使用してください。 注釈を使用してすべてのスプリングコントローラ、サービス、およびdaosを作成します。それは春だけの環境になるまでうまく動作します。 DWRを別個のスプリングコントローラサービスオブジェクトとして追加しようとすると、そのDWRコントローラに注入されません。 NullPointerExceptionで以下のエラーが発生するDWRをSpringとマージすることはできません。

found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)} 

以下はコードスニペットです。 呼び出しながらDWRコントローラは、ここで(私はXMLでDWRコントローラを定義する場合

@Service("brandNameService") 
@Transactional 
public class BrandNameServiceImpl implements BrandNameService{ 
    public List<String> getEmployeeDetails(int id) { 
    return brandNameDAO.getEmployeeDetails(id); 
    } 
: 
} 

のようなものです

@Controller 
@RemoteProxy(name = "dwrDemo") 
public class DwrDemoController { 
@Autowired 
private BrandNameService brandNameService; 


public void setBrandNameService(BrandNameService brandNameService) { 
    this.brandNameService = brandNameService; 
} 


@RemoteMethod 
public List<String> getEmployeeDetails(int id) { 
    return brandNameService.getEmployeeDetails(id); 
} 
: 
} 

サービスクラスであり、それがサービスオブジェクトを初期化せずに立ち上がっDWRコントローラ、サーバ内のすべての注釈を削除しますNullPointerExceptionが取得DWR)以下 私はbrandNameServiceのコメントを解除した場合、私はtomcatに、XML

<beans:bean id="dwrDemoController" 
    class="com.classified.dwr.controller.DwrDemoController"> 
    <!-- <beans:property name="brandNameService" ref="brandNameService"/> --> 
    <dwr:remote javascript="dwrService"> 
     <dwr:include method="getEmployeeDetails" /> 
    </dwr:remote> 
</beans:bean> 

です起きていない、例外を超えている/エラーが発生しているとき

+0

代わりにコンストラクタインジェクションを使用して、問題が識別できるかどうかを確認します。 DWRがSpringコンテナと正しく協調していないと思われます。 – chrylis

答えて

0

myapp-servlet.xmlではなくapplicationContext.xmlですべてのBeanを定義したときにうまくいきました。

関連する問題