0
나는 머리를 감당할 수 없다는 예외가 발생했다. xmlns를 required = false로 설정하면 모든 것이 작동하지만 xmlns 값은 null입니다. 다른 모든 값은 예상대로 설정됩니다.Simplexml valuerequired exception
XML 내가 읽고있다가 :
02-15 18 : 05 : 55.988 : System.err에/W (31450) : org.simpleframework.xml
<test xmlns="somestring"
id="123456"
timestamp="2013-05">
<value1>12</value1>
<value2>3 </value2>
</test>
이 오류 메시지입니다. core.ValueRequiredException : 필드 'xmlns'에서 @ org.simpleframework.xml.Attribute (empty =, name = xmlns, required = true)를 만족할 수 없습니다. parsing.Test 클래스의 private java.lang.String parsing.Test.xmlns 1
코드 :
@Root(name = "test")
public class Test {
@Element(name = "value1")
private String value1;
@Element(name ="value2")
private String value2;
@Attribute(name = "xmlns")
private String xmlns;
@Attribute(name = "id")
private String id;
@Attribute(name = "timestamp")
private String timestamp;
public Test() {
}
public Test (String value1, String value2, String xmlns, String id, String timestamp) {
this.value1 = value1;
this.value2 = value2;
this.xmlns = xmlns;
this.id = id;
this.timestamp = timestamp;
}
public String getValue1() {
return value1;
}
public String getValue2() {
return value2;
}
public String getXMLns() {
return xmlns;
}
public String getId() {
return id;
}
public String getTimeStamp() {
return timestamp;
}}
직렬화 방법 : 당신이 오류가 발생하는 이유
public Test DeSerialize (String xml) {
//System.out.println("xml: \n " + xml);
try {
test = serializer.read(Test.class, xml);
} catch (Exception e) {
e.printStackTrace();
}
return test;
}