web-dev-qa-db-ja.com

JAXBElement <String>オブジェクトをインスタンス化するにはどうすればよいですか?

インターフェイスが必要とするため、これらのいずれかを作成する必要があります...定義されたc'torがないように、誰かが作成方法を教えてもらえますか?

106
miguel

WSDLをインポートすると、さまざまな入力パラメーターを作成するためのメソッドの束を持つObjectFactoryクラスが必要になります。

ObjectFactory factory = new ObjectFactory();
JAXBElement<String> createMessageDescription = factory.createMessageDescription("description");
message.setDescription(createMessageDescription);
163
Gaurav

ここに私がそれをする方法があります。生成されたコードから名前空間URLと要素名を取得する必要があります。

new JAXBElement(new QName("http://www.novell.com/role/service","userDN"),
                new String("").getClass(),testDN);
6
JC.
ObjectFactory fact = new ObjectFactory();   
JAXBElement<String> str = fact.createCompositeTypeStringValue("vik");    
comp.setStringValue(str);
CompositeType retcomp = service.getDataUsingDataContract(comp);
System.out.println(retcomp.getStringValue().getValue());
5
vik

コンストラクターがないと思う理由がわかりません。 API を参照してください。

2

その他の選択肢:

JAXBElement<String> element = new JAXBElement<>(new QName("Your localPart"),
                                                String.class, "Your message");

次に:

System.out.println(element.getValue()); // Result: Your message
1
alditis