2017-08-26 140 views
0

這是我第一次使用jaxb和xml編組。有一個Utils項目具有基本的實用程序和共享類,兩個其他項目Foo和Bar依賴於Utils。我在Foo and Bar需要做的事情是發送一條消息給RabbitMQ。這兩個項目的信息是一樣的。未知的JAXB異常,嵌套的異常是java.xml.bind.JAXBException,這個類未知的類

我可以創建一個在Foo和Bar之間共享的服務,該服務在Utils項目中發送沒有任何spring-context.xml文件(我們使用Spring)的消息。因爲當我嘗試時,我得到了Unknown JAXB exception, nested exception is java.xml.bind.JAXBException, class not known to this context錯誤。當我看看我們團隊中使用jaxb2並將消息成功發送給兔子的其他項目時,所有這些單獨的組件都會引入對象在總線上發送的模式,並且所有這些項目都有一個spring-context文件,並且所有那些項目有類似

<oxm:jaxb2-marshaller id="marshaller" 
    context-path="com.my.awesome.proj" /> 

定義。即使我在Foo和Bar的sprint-context文件中定義了jaxb2-marshaller,我也遇到了這個錯誤。所以我基本上在問什麼是推薦的方法。大多數項目是否拉入要在公交車上發送的對象模式,然後在每個單獨的項目中發送消息?謝謝。

回答

0

從例外看來,消息類未添加到JaxbContext中。嘗試實例化

JaxbContext.newInstance(yourMessageClassName.class)