Hi,
I am trying to write a Java Bean Deserializer, the structure I have to
deserialize is:
- <soapenc:Array id="id1" soapenc:arrayType="types:SimpleQuote[1]">
� <Item href="#id2" />
� </soapenc:Array>
- <types:SimpleQuote id="id2" xsi:type="types:SimpleQuote">
� <Symbol xsi:type="xsd:string">ABC</Symbol>
� <CompanyName xsi:type="xsd:string">COMPANY NAME</CompanyName>
� <LastPrice xsi:type="xsd:decimal">0.18</LastPrice>
� <LastPriceTime
xsi:type="xsd:dateTime">2001-07-20T09:55:00.0000000-07:00</LastPriceTime
>
� <Change xsi:type="xsd:decimal">0</Change>
� <PercentChange xsi:type="xsd:double">0</PercentChange>
� <DayLow xsi:type="xsd:decimal">0.17</DayLow>
� <DayHigh xsi:type="xsd:decimal">0.18</DayHigh>
� <Volume xsi:type="xsd:long">2600</Volume>
� <Valid href="#id2" />
</types:SimpleQuote>
- <types:SimpleQuoteValues id="id2" xsi:type="types:SimpleQuoteValues">
� <Symbol xsi:type="xsd:boolean">true</Symbol>
� <CompanyName xsi:type="xsd:boolean">true</CompanyName>
� <LastPrice xsi:type="xsd:boolean">true</LastPrice>
� <LastPriceTime xsi:type="xsd:boolean">true</LastPriceTime>
� <Change xsi:type="xsd:boolean">true</Change>
� <PercentChange xsi:type="xsd:boolean">true</PercentChange>
� <DayLow xsi:type="xsd:boolean">true</DayLow>
� <DayHigh xsi:type="xsd:boolean">true</DayHigh>
� <Volume xsi:type="xsd:boolean">true</Volume>
� </types:SimpleQuoteValues>
My bean is:
package Quote;
import java.awt.*;
import java.io.Serializable;
public class SimpleBean extends Canvas
implements Serializable{
private String Symbol = "NAME";
private String CompanyName = "NAME";
private double LastPrice = 0;
private String LastPriceTime = "NAME";
private double Change = 0;
private long Volume = 0;
private String Tick = "NAME";
private double Bid = 0;
private double Ask = 0;
private int BidSize = 0;
private int AskSize = 0;
private double DayLow = 0;
private double DayHigh = 0;
private double Open = 0;
private double PreviousClose = 0;
private int LastTradeVolume = 0;
private boolean[] Valid = { false,false,false,false,
false,false,false,false,
false,false,false,false,
false,false,false,false
};
//property getter method
public boolean[] getValid(){
return Valid;
}
public void setValid (boolean[] newName)
{
for (int i=0;i<16 ;i++ )
{
Valid[i] = newName[i];
}
}
public double getOpen (){
return Open;
}
public void setOpen (double newName){
Open = newName;
}
public double getPreviousClose (){
return PreviousClose;
}
public void setPreviousClose (double newName){
PreviousClose = newName;
}
public double getDayLow (){
return DayLow;
}
public void setDayLow (double newName){
DayLow = newName;
}
public double getDayHigh (){
return DayHigh;
}
public void setDayHigh (double newName){
DayHigh = newName;
}
public int getBidSize (){
return BidSize;
}
public void setBidSize (int newName){
BidSize = newName;
}
public int getLastTradeVolume (){
return LastTradeVolume;
}
public void setLastTradeVolume (int newName){
LastTradeVolume = newName;
}
public int getAskSize (){
return AskSize;
}
public void setAskSize (int newName){
AskSize = newName;
}
public double getBid (){
return Bid;
}
public void setBid (double newName){
Bid = newName;
}
public double getAsk (){
return Ask;
}
public void setAsk (double newName){
Ask = newName;
}
public String getSymbol (){
return Symbol ;
}
public void setSymbol (String newName){
Symbol = newName;
}
public String getTick (){
return Tick ;
}
public void setTick (String newName){
Tick = newName;
}
public String getLastPriceTime (){
return LastPriceTime;
}
public void setLastPriceTime (String newName){
LastPriceTime = newName;
}
public double getLastPrice (){
return LastPrice;
}
public void setLastPrice (double newName){
LastPrice = newName;
}
public double getChange (){
return Change;
}
public void setChange (double newName){
Change = newName;
}
public long getVolume (){
return Volume;
}
public void setVolume (long newName){
Volume = newName;
}
public String getCompanyName (){
return CompanyName;
}
public void setCompanyName (String newName){
CompanyName = newName;
}
//Constructor sets inherited properties
public SimpleBean(){
}
}
but when I run the program that deserialize using this bean, I get:
Caught SOAPException (SOAP-ENV:Client): Unable to retrieve
PropertyDescriptor for property 'Symbol' of class 'class
Quote.SimpleBean'.
However, when I load the bean into the Beanbox, I can see my properties
are shown. What am I doing wrong?
Thanks,
Adrian