[Castor][XML] ArrayList et item
Bonjour,
J'ai un petit soucis avec Castor que je viens de prendre en main il y a peine 2 jours.
J'ai 2 Objets, dont le premier est composé une List du deuxième :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
import java.util.ArrayList;
import java.util.List;
public class UnderlyingStocks{
public List underlyingStocks = new ArrayList();
public List getUnderlyingStocks() {
return underlyingStocks;
}
public void addUnderlyingStock(UnderlyingStock anUnderlyingStock) {
this.underlyingStocks.add(anUnderlyingStock);
}
public void setUnderlyingStocks(List underlyingStocks) {
this.underlyingStocks = underlyingStocks;
}
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
import java.math.BigDecimal;
public class UnderlyingStock {
public String underlyingStockId;
public String underlyingStockType;
public String underlyingStockDesc;
public BigDecimal issuedShareCapital;
public String sector;
public String votingRights;
public String listed;
public Exchanges exchanges;
public Issuer issuer;
public Position position;
public Exchanges getExchanges() {
return exchanges;
}
public void setExchanges(Exchanges exchanges) {
this.exchanges = exchanges;
}
public BigDecimal getIssuedShareCapital() {
return issuedShareCapital;
}
public void setIssuedShareCapital(BigDecimal issuedShareCapital) {
this.issuedShareCapital = issuedShareCapital;
}
public Issuer getIssuer() {
return issuer;
}
public void setIssuer(Issuer issuer) {
this.issuer = issuer;
}
public String getListed() {
return listed;
}
public void setListed(String listed) {
this.listed = listed;
}
public Position getPosition() {
return position;
}
public void setPosition(Position position) {
this.position = position;
}
public String getSector() {
return sector;
}
public void setSector(String sector) {
this.sector = sector;
}
public String getUnderlyingStockDesc() {
return underlyingStockDesc;
}
public void setUnderlyingStockDesc(String underlyingStockDesc) {
this.underlyingStockDesc = underlyingStockDesc;
}
public String getUnderlyingStockId() {
return underlyingStockId;
}
public void setUnderlyingStockId(String underlyingStockId) {
this.underlyingStockId = underlyingStockId;
}
public String getUnderlyingStockType() {
return underlyingStockType;
}
public void setUnderlyingStockType(String underlyingStockType) {
this.underlyingStockType = underlyingStockType;
}
public String getVotingRights() {
return votingRights;
}
public void setVotingRights(String votingRights) {
this.votingRights = votingRights;
}
} |
Et voici l'extrait de mon mapping XML :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
<class name="com.hsbc.hbfr.ssds.objects.UnderlyingStocks" standalone="yes">
<field name="underlyingStocks" type="com.hsbc.hbfr.ssds.objects.UnderlyingStock" collection="collection">
<bind-xml name="underlying-stock" />
</field>
</class>
<class name="com.hsbc.hbfr.ssds.objects.UnderlyingStock">
<field name="underlyingStockId" type="string">
<bind-xml name="underlying-stock-id" />
</field>
<field name="underlyingStockType" type="string">
<bind-xml name="underlying-stock-type" />
</field>
<field name="underlyingStockDesc" type="string">
<bind-xml name="underlying-stock-desc" />
</field>
<field name="issuedShareCapital" type="big-decimal">
<bind-xml name="issued-share-capital" />
</field>
<field name="sector" type="string">
<bind-xml name="sector" />
</field>
<field name="votingRights" type="string">
<bind-xml name="voting-rights" />
</field>
<field name="listed" type="string">
<bind-xml name="listed" />
</field>
<field name="exchanges" type="com.hsbc.hbfr.ssds.objects.Exchanges">
<bind-xml name="exchanges" />
</field>
<field name="issuer" type="com.hsbc.hbfr.ssds.objects.Issuer">
<bind-xml name="issuer" />
</field>
<field name="position" type="com.hsbc.hbfr.ssds.objects.Position">
<bind-xml name="position" />
</field>
</class> |
Mon problème est que j'obtiens ceci :
Code:
1 2 3 4 5 6 7 8
|
<underlying-stocks xsi:type="underlying-stock" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<underlying-stock-id>FR0000032609 </underlying-stock-id>
...
<position>
...
</position>
</underlying-stocks> |
au lieu de :
Code:
1 2 3 4 5 6 7 8 9 10
|
<underlying-stocks>
<underlying-stock>
<underlying-stock-id>FR0000032609 </underlying-stock-id>
...
<position>
...
</position>
</underlying-stock>
</underlying-stocks> |
En résumé la balise <underlying-stock> n'apparait pas et le namespace et en trop.
Merci