springMVC中使用dubbo註解配置的問題

2021-08-29 07:56:14 字數 1082 閱讀 5509

問題,在controller中無法通過註解自動注入dubbo服務,

但是在service中可以自動注入。

package com.sl;

@controller

public class p{

//期望注入dubbo服務

@reference(version=「1.0.0」)

private i0 o;

//注入service

@autowired

private s s;

//o is null!沒有自動注入

//s 自動注入且s.s()中dubbo服務也注入成功

package com.sl;

@service

public class s{

//成功注入dubbo

@reference(version=「1.0.0」)

private i0 o;

public void s() throws ioexception{

//o is not null!可以直接使用

經過分析,原來配置導致兩個上下文,乙個是根上下文,乙個是springmvc的上下文,

dubbo的註解配置在根上下文中,因此無法解析springmvc bean的注入。

當前配置:

web.xml…

org.springframework.web.context.contextloaderlistener ...

springmvc org.springframework.web.servlet.dispatcherservlet 1

com.sl」 />

springmvc-servlet.xml

…com.sl」 />

解決辦法:

1.只將dubbo服務注入到service和repository中而不是controller中,其實大部分時候都可如此

2.去掉web.xml中listener,將全部配置都放到springmvc-servlet.xml,這樣只生成乙個上下文。

3.在springmvc-servlet.xml也加入duboo的配置,這樣雖然有了冗餘,但是可以保證兩個上下文。

Spring MVC中使用logback的日誌配置

一開始在springmvc中就配置了logback.xml,但是由於放置的路徑不正確,不知道怎麼啟動這個日誌系統。後來在網上看了別人的說明,logback.xml配置都差不多,只需要放置src包下面就會自動啟動日誌了。需要匯入的jar包有 logback core 0.9.29.jar,logbac...

在專案中使用springmvc

springmvc是spring框架的乙個模組,springmvc和spring無需通過中間整個層進行整合,它是乙個基於mvc的web框架。springmvc是基於方法開發的,struts2是基於類開發的。springmvc將url和controller方法對映,對映成功後springmvc生成乙個...

springMVC中使用dubbo註解配置的問題

問題,在controller中無法通過註解自動注入dubbo服務,但是在service中可以自動注入。package com.sl controller public class p package com.sl service public class s 經過分析,原來配置導致兩個上下文,乙個是...