IntelliJでwsdlを介してWebClientを作成すると、名前空間タグが正しく読み取られないようで、代わりにすべてのクラスがフラット化されたパッケージで作成されます。
私がやったことはこれです:新しいJavaプロジェクトを作成します。Webサービスを有効にします。右クリックしてWebサービスに移動し、「wsdlまたはwadlからJavaコードを作成」を選択します。
次に、wsdlの場所とapache軸、バージョン1.1を選択し、出力パッケージを選択して、残りのオプションはそのままにします。
コードを生成しますが、私が言ったように、すべてを1つのフラット化されたパッケージにまとめています。
ただし、wsdlは次のようになります。
<wsdl:types>
<xsd:schema targetNamespace="http://company.com/ServiceContracts/2008/08/Imports">
<xsd:import namespace="http://company.com/ServiceContracts/2008/08" schemaLocation="http://999.999.999.98/company.Qrs.Consumer.Host/service.svc?xsd=xsd0"/>
<xsd:import namespace="http://company.com/FaultContracts/2008/08" schemaLocation="http://999.999.999.98/company.Qrs.Consumer.Host/service.svc?xsd=xsd3"/>
<xsd:import namespace="http://www.microsoft.com/practices/EnterpriseLibrary/2007/01/wcf/validation" schemaLocation="http://999.999.999.98/company.Qrs.Consumer.Host/service.svc?xsd=xsd4"/>
<xsd:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" schemaLocation="http://999.999.999.98/company.Qrs.Consumer.Host/service.svc?xsd=xsd1"/>
<xsd:import namespace="http://company.com/DataContracts/2008/08" schemaLocation="http://999.999.999.98/company.Qrs.Consumer.Host/service.svc?xsd=xsd2"/>
<xsd:import namespace="http://schemas.datacontract.org/2004/07/Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF" schemaLocation="http://999.999.999.98/company.Qrs.Consumer.Host/service.svc?xsd=xsd5"/>
</xsd:schema>
</wsdl:types>
同じwsdlをEclipseでインポートすると、名前空間に従って適切なパッケージとサブディレクトリが生成されます。
名前空間を生成するようにintelliJIDEAにwsdlをインポートする方法を知っている人はいますか?
ありがとう、