我正在尝试在一个jaxbmarshaler中自动写入,以便在我的spring boot应用程序中使用。这似乎不符合编组员的要求。下面是我目前所拥有的,任何我遗漏的tipson
Maven依赖:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
</dependency>
--- code
@Component
public class DoSomethingService {
@Autowired
private Jaxb2Marshaller marshaller;
marshaller.marshal(MyObject,Stringwriter)我得到的错误是说它找不到Jaxb2Marsaller的bean,有什么想法吗?
发布于 2016-11-23 07:12:06
为了使用自动连接,您首先需要创建一个Marshaller bean,将必要的类/包指向Marshaller。然后你就可以注射它了。
发布于 2016-11-23 07:34:39
您需要有一个或多个配置类,其中应该定义所有可用于自动装配的bean。它类似于在spring应用程序上下文xml中定义bean
<bean id="marshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller"/>在java config中:
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.oxm.jaxb.Jaxb2Marshaller;
@Configuration
public class SomeName{
@Bean
public Jaxb2Marshaller marshaller() {
Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
//any setters
return marshaller;
}
}https://stackoverflow.com/questions/40753270
复制相似问题