相关疑难解决方法(0)

如何防止在CXF Web服务客户端中生成JAXBElement <String>?

我正在尝试使用CXF创建一个Web服务客户端来使用WCF Web服务.当我使用wsdl2java时,它使用JAXBElement类型而不是String生成对象.

我读到了使用jaxb bindings.xml文件设置generateElementProperty ="false"来尝试解决问题,但我正在使用的Web服务包含7个导入的模式.

如何指定generateElementProperty="false"所有七个模式,或者是否有办法将其应用于所有模式?

java wcf web-services cxf jaxb

47
推荐指数
1
解决办法
2万
查看次数

JAXB:如何自定义双字段的Xml序列化

我有一个遗留类,有很多公共双字段.所有双字段都初始化Double.MAX_VALUE为表示它们是空的.(遗留序列化编码为忽略字段,如果字段等于则不进行序列化Double.MAX_VALUE).

我们现在尝试使用JAXB Marshaller将此类序列化为Xml.它工作正常,除了我们想要阻止为相等的字段生成Xml Double.MAX_VALUE.

我们没有使用单独的JAXB模式,只是用各种javax.xml.bind.annotation注释标记我们的类.如果使用模式,则可以添加<javaType>元素以指定自定义DataType转换器.有没有办法使用Annotations或以编程方式执行此操作?

在尝试下面推荐的方法后,我仍然无法XmlAdapter接受:

@XmlJavaTypeAdapters({
@XmlJavaTypeAdapter(value=EmptyDoubleValueHandler.class, type=Double.class), @XmlJavaTypeAdapter(value=EmptyDoubleValueHandler.class, type=double.class)})
package tta.penstock.data.iserver;

import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters;
Run Code Online (Sandbox Code Playgroud)

我的顶级课程是:tta.penstock.data.iserver.OrderBlotter,其中包含一个扩展的tta.penstock.data.iserver.OrderResponseWrappers列表com.eztech.OrderResponse.所有双字段都包含在com.eztech.OrderResponse.

我的单元测试代码执行以下操作:

JAXBContext context = JAXBContext.newInstance(new Class[] { OrderBlotter.class, OrderResponseWrapper.class, OrderResponse.class});

Marshaller marshaller = context.createMarshaller();
StringWriter stringWriter = new StringWriter();
marshaller.marshal(blotter, stringWriter);
System.out.println("result xml=\n" + stringWriter.toString());
Run Code Online (Sandbox Code Playgroud)

但双重值仍然没有得到处理XmlAdapter.我知道我遗漏了一些基本的东西,但我不确定它是什么.

java jaxb xml-serialization

7
推荐指数
1
解决办法
1万
查看次数

JAXB:如何使JAXB NOT将空字符串解组为0

我有一个DTO类,其字段如下:

@XmlAttribute
@NotNull
private Integer number = null;
Run Code Online (Sandbox Code Playgroud)

我正在尝试解组xml等

...  number=""  ...
Run Code Online (Sandbox Code Playgroud)

我需要nuber字段保持为null,以便抛出验证异常.相反,JAXB将其解组为0.如何才能使其正常运行?

java jaxb unmarshalling

7
推荐指数
1
解决办法
6435
查看次数

标签 统计

java ×3

jaxb ×3

cxf ×1

unmarshalling ×1

wcf ×1

web-services ×1

xml-serialization ×1