我需要创建其中一个,因为界面需要它...有人可以让我知道如何创建一个,因为似乎没有定义c'tor?
答案 0 :(得分:156)
当您导入WSDL时,您应该有一个ObjectFactory
类,它应该有许多方法来创建各种输入参数。
ObjectFactory factory = new ObjectFactory();
JAXBElement<String> createMessageDescription = factory.createMessageDescription("description");
message.setDescription(createMessageDescription);
答案 1 :(得分:6)
我是这样做的。您需要从生成的代码中获取命名空间URL和元素名称。
new JAXBElement(new QName("http://www.novell.com/role/service","userDN"),
new String("").getClass(),testDN);
答案 2 :(得分:5)
ObjectFactory fact = new ObjectFactory();
JAXBElement<String> str = fact.createCompositeTypeStringValue("vik");
comp.setStringValue(str);
CompositeType retcomp = service.getDataUsingDataContract(comp);
System.out.println(retcomp.getStringValue().getValue());
答案 3 :(得分:2)
我不知道为什么你认为没有构造函数。请参阅the API。
答案 4 :(得分:1)
其他替代方法:
JAXBElement<String> element = new JAXBElement<>(new QName("Your localPart"),
String.class, "Your message");
然后:
System.out.println(element.getValue()); // Result: Your message