私はこのスキーマを持っており、JAXBを使ってJavaスタブファイルを生成しています。JAXBバインド - リスト<T>の戻り値の型を定義
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:c="http://www.a.com/f/models/types/common"
targetNamespace="http://www.a.com/f/models/types/common"
elementFormDefault="qualified">
<xs:complexType name="constants">
<xs:sequence>
<xs:element name="constant" type="c:constant" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="constant">
<xs:sequence>
<xs:element name="reference" type="c:reference"/>
</xs:sequence>
<xs:attribute name="name" use="required" type="xs:string"/>
<xs:attribute name="type" use="required" type="c:data-type"/>
</xs:complexType>
は、デフォルトのJavaパッケージ名は「com.afmodels.types.common」
私も「定数」と「定数」が定義されたパッケージの「com.afmodel.commonの既存のインタフェースを持っています' 私は生成されたクラスを使用したい。私は 必要なインタフェースに
<jxb:bindings schemaLocation="./commonmodel.xsd" node="/xs:schema">
<jxb:bindings node="xs:complexType[@name='constants']">
<jxb:class/>
<inheritance:implements>com.a.f.model.common.Constants</inheritance:implements>
</jxb:bindings>
を実装して、以下の生成されたクラスが
package com.a.f.models.types.common;
..
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "constants", propOrder = {
"constant"
})
public class Constants
implements com.a.f.model.common.Constants
{
@XmlElement(required = true)
protected List<Constant> constant;
public List<Constant> getConstant() {
しかし、戻り値の型適切なインターフェイスを実装しています生成されたJavaクラスを確保するためにJAXBバインディングファイルを使用していますリストの<> getConstant()メソッドが正しくありません。私はこれが必要です
public List<com.a.f.model.common.Constant> getConstant() {
jaxbバインディングファイル経由でこれを行うには遠いですか?