2017-05-06 66 views
0

我是Spring Integration框架的新手,試圖實現一個基本的例子,但得到一個空指針異常。Spring集成中的java.lang.NullPointerException

整合,spring.xml

<int:gateway service-interface="com.fil.MyService" default-request- 
channel="in"/> 
<int:chain input-channel="in"> 
    <int:transformer expression="'hello:'+payload"></int:transformer> 
    <int:service-activator> 
     <int-groovy:script> 
      <![CDATA[println "processing"+payload]]> 
     </int-groovy:script> 
     </int:service-activator> 
    </int:chain> 
    </beans> 

MyService.java

public interface MyService { 
void single(String foo); 
} 

Test.java

@ContextConfiguration(locations = { "/WEB-INF/integration-spring.xml" }) 
public class MyServiceTest { 

@Autowired 
private MyService service; 

@Test 
public void test() { 
    try{ 
     service.single("hELLO ");//Getting null pointer exception 
    } 
    catch(Exception e){ 
     e.printStackTrace(); 
    } 
}} 
+0

你有沒有在classapth的某處實現MyService?它是否正確註釋? –

+1

正確配置後,Spring集成框架將創建一個代理bean,其中包含''服務接口類型 - 它將方法參數包裝成一個'Message '並將其發送到'channel'。測試類缺少春季測試上下文框架運行器。 –

回答

1

您還需要@Runwith(SpringJunit4ClassRunner.class)您的測試類,以便測試框架載入你的應用程序上下文並自動裝載測試類。

+0

它工作。 Thanx .. !!! –