rest - Grails RestBuilder抛出错误

标签 rest grails

我正在使用grails RestBuilder插件,但是当我尝试发送带有xml的发布请求时,抛出了异常:

Cannot cast object '<BookingRetrievalRQ xmlns="http://www.expediaconnect.com/EQC/BR/2014/01"><Authentication username="testuser" password="ECLPASS"/></BookingRetrievalRQ>' 
with class 'java.lang.String' to class 'grails.converters.XML'

但是我不明白为什么会发生。

那就是我在服务类中的代码请求:
def resource = XmlUtil.marshal(msg)
    def rest = new RestBuilder()
    def resp = rest.post('https://simulator.expediaquickconnect.com/connect/br') {
        contentType "application/xml"
        xml resource
    }
    return XmlUtil.unMarshal(resp.xml, BookingRetrievalRS.class)

[XmlUtil.class]
static String marshal(def source) {
        StringWriter writer = new StringWriter()
        JAXBContext context = JAXBContext.newInstance(source.class)
        Marshaller marshaller = context.createMarshaller()
        marshaller.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE)
        marshaller.marshal(source, writer)
        return writer.toString()
    }   


    static def unMarshal(String strXml, Class targetClass){
        JAXBContext context = JAXBContext.newInstance(targetClass)
        def unMarshaller = context.createUnmarshaller()
        return unMarshaller.unmarshal(new StringReader(strXml))
    }

当我尝试这个:
def rest = new RestBuilder()
def resp = rest.post("https://simulator.expediaquickconnect.com/connect/br") {
        accept 'application/xml'
        contentType 'application/xml'
                    xml {
                        BookingRetrievalRQ(xmlns: "http://www.expediaconnect.com/EQC/BR/2014/01") {
                            Authentication(username: "testuser", password: "ECLPASS")
                        }
                    }
            }

我有此错误信息:
unable to find valid certification path to requested target

最佳答案

免责声明:这是从问题中提取的。

我使用本教程通过在开发人员模式下注册bean解决了该问题:java https problem

关于rest - Grails RestBuilder抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23834157/

相关文章:

javascript - React - 在 api 调用之前填充数据?

asp.net-mvc - Web API和ASP MVC之间的主要区别是什么

spring - RESTful Web 服务对于银行应用程序来说是否足够安全?

grails - 这是在静态映射 block 中访问Grails配置的安全方法吗?

spring - 自定义Spring Security过滤器链返回404

java - 将 BitBucket REST API 与 Java 结合使用

java - 如何配置Spring TestRestTemplate

grails - 在grails中获取动态bean字段

mongodb - Grails - MongoDB 和自定义脏检查

grails - 如何使用Groovy渲染插件在PDF中显示页码