编程语言
首页 > 编程语言> > java – 在Spring MVC控制器中注入Jaxb2Marshaller

java – 在Spring MVC控制器中注入Jaxb2Marshaller

作者:互联网

我试图在我的控制器类中将静态xml转换为POJO(解组).我正在使用Jaxb2Marshaller,我在根上下文中以下列方式进行配置

<oxm:jaxb2-marshaller id="marshaller">
    <oxm:class-to-be-bound name="org.springframework.ws.samples.airline.schema.Airport"/>        
</oxm:jaxb2-marshaller>

我正在尝试使用自动装配注入编组.但它会抛出No Bean Found Exception.

@AutoWired
private Unmarshaller marshaller;

如何在控制器中注入编组器.任何其他方式或指出我的代码中的错误将有所帮助?

解决方法:

Spring上下文配置

<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:util="http://www.springframework.org/schema/util" xmlns:context="http://www.springframework.org/schema/context"
        xmlns:automation="http://www.springframework.org/schema/automation"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xmlns:oxm="http://www.springframework.org/schema/oxm"
        xmlns:task="http://www.springframework.org/schema/task"
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
                            http://www.springframework.org/schema/beans/spring-beans.xsd
                            http://www.springframework.org/schema/util 
                            http://www.springframework.org/schema/util/spring-util.xsd
                            http://www.springframework.org/schema/context 
                            http://www.springframework.org/schema/context/spring-context.xsd
                            http://www.springframework.org/schema/automation
                            http://www.springframework.org/schema/automation/automation.xsd
                            http://www.springframework.org/schema/task 
                            http://www.springframework.org/schema/task/spring-task.xsd
                            http://www.springframework.org/schema/oxm
                            http://www.springframework.org/schema/oxm/spring-oxm.xsd">

        <context:annotation-config/>

        <oxm:jaxb2-marshaller id="jaxb2Marshaller">
            <oxm:class-to-be-bound name="your.package.Prova" />
        </oxm:jaxb2-marshaller>

    </beans>

@AutoWired
private org.springframework.oxm.Unmarshaller jaxb2Marshaller;

标签:java,spring-mvc,spring,jaxb2
来源: https://codeday.me/bug/20190628/1320342.html