我正在使用https://github.com/highsource/ogc-schemas中的OGC架构。
我正在查看从反序列化XML到JaxB对象的unmarshalled对象结构。
我正在尝试使用JaxB构建一个自定义对象以序列化为XML。
可以看到过滤器架构http://schemas.opengis.net/filter/2.0/filter.xsd
我像这样解组对象:
JAXBElement<FilterType> filter = (JAXBElement<FilterType>) unmarshal.unmarshal(new File("Filter01.xml"));
现在,我正在查看内部对象,看到我有不同的过滤器类型。我想创建一个二进制逻辑操作符的过滤器类型,并使用适当的数据对其进行初始化。这个初始化部分让我感到困惑。
IE:
BinaryLogicOpType blop = new BinaryLogicOpType();
答案 0 :(得分:2)
有些事情:
ObjectFactory objectFactory = new ObjectFactory()
BinaryLogicOpType _or = new BinaryLogicOpType();
JAXBElement<BinaryLogicOpType> root = objectFactory.createOr(_or);
BinaryComparisonOpType weightIsLessThan100 = new BinaryComparisonOpType();
_or.getOps()
.add(objectFactory.createPropertyIsLessThan(weightIsLessThan100));
JAXBElement<String> weightValueReference =
objectFactory.createValueReference("weight");
LiteralType _100 = new LiteralType();
_100.getContent().add(100);
JAXBElement<LiteralType> _100Literal = objectFactory.createLiteral(_100);
weightIsLessThan100.getExpression().add(weightValueReference);
weightIsLessThan100.getExpression().add(_100Literal);
等等。