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

Reply via email to