2016-07-21 20 views
0

我寫了一個自定義轉換器,我想將json消息轉換爲java。彈簧集成定製變壓器返回空值

<int:transformer ref="myCustomTransformer" input-channel="myInputChannel" output-channel="outputMsgChannel"/> 

變壓器代碼:

@Component ("myCustomTransformer") 

公共類MyCustomTransformer {

@Transformer 
public Message<Staff> converToObj(Message<String> message){ 

    return MessageBuilder.withPayload(new Staff()).copyHeaders(message.getHeaders()).build();  
    } 

} 

Staff類:

public class Staff { 

@JsonProperty("name") 
String name; 

@JsonProperty("age")  
String age; 

@JsonProperty("status") 
String status; 

// setters and getters 

在我service-activator CLA ss:

public void handleUser(Staff obj) { 

    System.out.println(obj instanceof Staff); // returns true 

    System.out.println("Handling the response message from the jms"); 
    System.out.println(obj.getName()); 
    System.out.println(obj.getStatus()); 
    System.out.println(obj.getAge()); 
} 

服務激活器顯示對象是類型的工作人員,但所有實例變量都是空的。請讓我知道我出錯的地方。

回答

0

我的不好。我使用舊版本的jaxson罐子。春季文檔提到jaxson jar應該在版本2.0以上。