当前位置: 首页 > 知识库问答 >
问题:

CXF WebClient将xml解析为未知模式

宗政英才
2023-03-14

我有一个CXF WebClient,它尝试从REST服务读取XML请求。

我正在使用代码:

WebClient client = WebClient.create(baseURL);
String authorizationHeader = "Basic "+ org.apache.cxf.common.util.Base64Utility.encode(("user:password").getBytes());
client.header("Authorization", authorizationHeader);
client.accept(MediaType.APPLICATION_XML).path(path);
System.out.println(client.get(String.class));
return client.get(Skill.class);

技能课程:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "self",
    "skillId",
    "skillName"
})
@XmlRootElement(name = "Skill")
public class Skill implements RootObject{

    protected Self self;
    protected int skillId;
    @XmlElement(required = true)
    protected String skillName;

getters...setters...
}

System.out.println返回:

<?xml version="1.0" encoding="UTF-8"?>
<Skill><self>http://192.168.45.159/adminapi/skill/4</self><skillId>4</skillId><skillName>ICD2</skillName></Skill>

但我有个例外:

com.sun.istack.internal.SAXParseException2; lineNumber: 2; columnNumber: 1; unexpected element (uri:"", local:"Skill"). Expected elements are <{}link>,<{}nameUriPair>,<{}trigger>

它似乎试图将技能解析为其他东西,其中似乎包含链接、nameUriPair和触发器。我没有这样的类。(我确实检查了导入,这是我的技能,而不是其他东西)

我在3.0.2和3.1.5版本中都尝试了以下工件

GroupID:

组织。阿帕奇。cxf公司

工件:

cxf-rt-rs-客户端

cxf rt前端JAXR

cxf rt传输http

共有1个答案

龙嘉玉
2023-03-14

显然我来晚了,但我认为问题在于:

return client.get(Skill.class);

我认为需要做的是:

Response r = client.get();
Skill skill = (Skill) r.readEntity(Skill.class);
 类似资料:
  • 问题内容: 我有一个XML文件,例如 如何将其解析为JSON结构文件? 问题答案: 对于一个简单的解决方案,我建议使用Jackson库,它是一个Java库,用于生成和读取带有XML扩展名的JSON,因为它只需几行简单的代码就可以将任意复杂的XML转换为JSON。 input.xml Java代码: 该演示使用Jackson 1.7.7 (较新的1.7.8也可以使用),Jackson XML Dat

  • 我有一些信息存储在XML中,我需要解析XML并将一些值存储在Hashmap中。以下是XML: 我想要的关键是:Room1和值:16.412094,48.19719(例如为部分ID=1) 这是第一部分的示例。我有100多个部分,所以我想像我在第一个示例中解释的那样为每个部分存储键和值。 输出为: 房间1: 16.412094,48.19719;房间2: 16.369865,48.199006; 房间

  • 问题内容: 我从网络上获取了日期字符串,然后我想将其切成对象。但是应用程序以某种方式崩溃。这是我正在解析的字符串: onStartCommand() stringToDate() LogCat: 编辑: onDestroy()为定期更新设置警报… 问题答案: 从中删除“ XXX” 一切都会正常。 浏览可在构造函数内使用的符号列表。尽管文档显示的是“ XXX”格式,但这在Android上不起作用,并

  • 问题内容: 我有一个要解析的xml示例 我想从此xml中编写一个方法,将该方法解析为键是字符串且值是字符串列表的hashmap。 例如:键“ detail a” value = {“ detail a的属性1”,“ detail a的属性2”,“ detail a的属性3”} 等等.. 做这个的最好方式是什么 ?因为我很困惑:\ 我走了这么远才能尝试打印detail-a和detail-b,但我还是

  • 问题内容: 当我尝试解析xml时,出现以下异常:- 我用来解析xml的代码如下:- 我试图解析已为休眠编写的xml,实际上它是一个休眠映射文件。 我尝试解析的xml如下: 请帮忙。 问题答案: 我用下面的代码,这对我来说很好。

  • 问题内容: 我有一组要解析的超简单XML文件…但是…它们使用自定义定义的实体。我不需要将它们映射到字符,但是我确实希望对每个字符进行解析和操作。例如: 在http://effbot.org/elementtree/elementtree- xmlparser.htm 上有一个诱人的提示,即XMLParser对实体的支持有限,但是我找不到所提到的方法,所有的东西都会出错: 取决于您如何调整注释而得出