Ich benutze antwsimport, um Client-Stub aus den WSDLS zu generieren. Außerdem möchte ich Client-Klassen generieren, die Serializable
implementiert. Ich möchte für jede Klasse eine andere serialVersionUID
generieren. Ich versuchte es mit der Bindungsdatei, die unten gezeigt wurde. Aber seine Generierung serialVersionUID
für alle Klassen. Gibt es eine Möglichkeit, meine eigene serialVersionUID
jeder Klasse zu geben?Generieren einer eindeutigen serialisierbaren ID für jede der generierten Klassen in JAXB
<wsimport xendorsed="true" binding="binding.xml" debug="true" keep="true"
verbose="false" sourcedestdir="${generated}" wsdl="${src}${wsdl.file}"
wsdlLocation="${wsdl.file}">
</wsimport>
Bindungskonfiguration
<bindings xmlns="http://java.sun.com/xml/ns/jaxb" version="2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<globalBindings>
<serializable uid="1" />
</globalBindings>
</bindings>
Waitaminute ... Wenn Sie 'Serializable' implementieren, binden Sie sich für einen Vertrag für das Leben; Generieren von _random_ UUIDs? – fge
@fge Das OP sagt nicht, dass er zufällige 'uid's will, das OP will verschiedene' uid's für verschiedene Klassen (d. H. Nicht immer das selbe/'1'). Theoretisch ist es möglich, basierend auf dem Inhalt der Klasse eine "UID" zu erzeugen. Unterschiedliche Inhalte - verschiedene 'uid's. Also macht die Frage Sinn für mich. – lexicore
' ' Anpassung kann nur innerhalb Ihrer '' [siehe hier] (https://jaxb.java.net/jaxb20-ea/docs/vendorCustomizations. html). Jedenfalls können Sie eine Arbeit hinzufügen, die Bindung für jedes generierte Element verwendet. –
Xstian