Tôi đang sử dụng ant wsimport để tạo sơ khai khách hàng từ các wsdls. Ngoài ra, tôi muốn tạo ra các lớp khách hàng thực hiện Serializable
. Tôi muốn tạo một khác nhau serialVersionUID
cho mỗi lớp học. Tôi đã thử với tệp ràng buộc được hiển thị bên dưới. Nhưng nó tạo ra cùng một serialVersionUID
cho tất cả các lớp. Có cách nào tôi có thể tự mình cung cấp serialVersionUID
cho mỗi lớp học không?Tạo id tuần tự duy nhất cho mỗi lớp được tạo trong JAXB
<wsimport xendorsed="true" binding="binding.xml" debug="true" keep="true"
verbose="false" sourcedestdir="${generated}" wsdl="${src}${wsdl.file}"
wsdlLocation="${wsdl.file}">
</wsimport>
cấu hình ràng buộc
<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 ... Nếu bạn triển khai 'Serializable', bạn đang ràng buộc bản thân để có hợp đồng cho cuộc sống; tạo ra _random_ UUID? – fge
@fge OP không nói rằng anh ta muốn ngẫu nhiên 'uid', OP muốn 'khác nhau' cho các lớp khác nhau (tức là không phải lúc nào cũng giống nhau/'1'). Về mặt lý thuyết, có thể tạo ra một 'uid' dựa trên nội dung của lớp. Nội dung khác nhau - khác nhau 'uid' s. Vì vậy, câu hỏi có ý nghĩa với tôi. – lexicore
' ' chỉ có thể xảy ra trong '' [xem tại đây] (https://jaxb.java.net/jaxb20-ea/docs/vendorCustomizations. html). Dù sao bạn có thể thêm một công việc xung quanh bằng cách sử dụng ràng buộc cho mỗi phần tử được tạo ra. –
Xstian