カスタムJAXB外部マッピングファイルを実行する必要があります。これについてはすでに赤いチュートリアルであり、JAXBカスタマイズの適切な例を見つけることができません。私のシナリオでは、メインのWSDLファイルとメインのWSDLに含まれるセカンダリWSDLの2つのWSDLファイルがあります。そして、セカンダリWSDLファイルにはcomplexType
、カスタマイズしたい名前を持つ1つの定義があります。ところで、そのcomplexTypeの名前はですobjectFactory
。これで、外部のカスタマイズが本当に必要なものがわかりました。
私はこれまでに来たので、 wsimport path-to-my-main-wsdl -b customBindings.jaxb
出力を実行すると次のようになります
[ERROR] XPath evaluation of "//xs:complexType[@name='objectFactory']" results in empty target node
line 2 of file:/customBindings.jaxb
ファイルcustomBindings.jaxb
は次のようになります
<jxb:bindings version="1.0" xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jxb:bindings schemaLocation="path-to-my-secondary-wsdl#types?schema1" node="//xs:complexType[@name='objectFactory']">
<jxb:class name="MyObjectFactory" />
</jxb:bindings>
</jxb:bindings>
customBindings.jaxb
私のファイルの2行目には、 2つのプロパティschemaLocation
とがありnode
ます。プロパティschemaLocation
はメインWSDLまたはセカンダリWSD1を指す必要がありますか?そして、プロパティはnode
必要なcomplexTypeへの正確なパス(XPath)ですか、それともこのようなものですか?node
そして、XPath(プロパティ)内の名前空間とは何ですか、それは何である必要がありますxs
か?そして、実際にはこれは何types
をschema1
意味しschemaLocation
ますか?
どうも