web-services - spring web services - 如何在方法端点中获取字符串

如何在 spring ws 端点方法中将传入的 XML 有效负载作为字符串参数获取? 例如我有以下代码,注意我将 XML 作为 JDOM 元素获取,我现在需要手动将其转换为字符串。很高兴知道如何将其自动转换为字符串。

@PayloadRoot(namespace=HOLIDAY_NAMESPACE_URI, localPart="holidayRequest")
@ResponsePayload
public Element handleHolidayRequest(@RequestPayload Element holidayRequest)
//public Element handleHolidayRequest(@XPathParam("holidayRequest") String holidayRequest)
{
    System.out.println("In handleHolidayRequest method with payload: " + holidayRequest);
    return getHolidayResponse(HOLIDAY_NAMESPACE);
}

注释掉的方法签名,只是我在尝试 XPath,它也没有按我预期的方式工作。

最佳答案

我正要说您应该尝试使用 XPathParam 批注来解决这个问题,但我看到您已经尝试过了。为什么这对你不起作用?

我不确定您是否需要将元素的值作为字符串,或者是否需要将完整的 XML 作为字符串。对于后者,您可以尝试将 MessageContext 添加到您的方法签名中,并通过使用类似以下内容的方法将其作为字符串获取 PayLoadSource:

DOMSource source = (DOMSource) messageContext.getRequest().getPayloadSource();

关于web-services - spring web services - 如何在方法端点中获取字符串有效负载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7156807/

相关文章:

python - os.walk 某些文件类型到现有的 ZipFile?

eclipse - 无法在 Eclipse + EPIC 中查看本地

maven-2 - 来自另一个模块的 Maven 模块属性

python - 创建 StringToSign

regex - Nginx:如何重写除图像以外的所有 URL?

xml - Spring:java.util.Locale 类型的 bean 的 Autowirin

iis - Windows 身份验证通过反向代理问题

csv - 如何使用 RSqlite 将 sqlite 导出为 CSV?

eclipse - 如何从 Eclipse 类路径中排除一个 jar?

google-maps - 我如何知道哪个标记正在被 Google Maps API 拖动事件拖动?