SerializableEnumeration不是vector

时间:2017-03-28 07:43:20

标签: java enumeration

我有一个SerializableEnumeration,我正在尝试将一个向量元素添加到SerializableEnumeration中。 以下是代码。

if(objTempVector !=null)
                {
                    CommonUtils.log("objTempVector:::::::::::::::::::::: objTempVector not null::::");

                try{

                    hlpOrder.mOrderDetail = new SerializableEnumeration(objTempVector);


                }
                catch(NullPointerException ex)
                {
                    CommonUtils.log("Exception in  SerializableEnumeration::::::::::::::::::::::" + ex.toString());

                } 
                }

但即使向量不为null,上面的代码也会生成空指针异常。

错误日志: SerializableEnumeration中的异常::::::::::::::::::::::: java.lang.NullPointerException

这是SerializableEnumeration

的方法
public SerializableEnumeration(Vector data) {
            if (data == null) {
                size = 0;
            } else {
                this.data = data.toArray();
                this.size = data.size();
            }
            i = 0;
        }

请帮我解决问题。

这是SerializableEnumeration的整个类

import java.io.Serializable;
import java.util.Enumeration;
import java.util.NoSuchElementException;
import java.util.Vector;


    public class SerializableEnumeration implements Enumeration, Serializable {

    private static final long serialVersionUID = 1L;
    private Object[] data = null;
    private int i;
    private int size;

    public SerializableEnumeration(Vector data) {
        if (data == null) {
            size = 0;
        } else {
            this.data = data.toArray();
            this.size = data.size();
        }
        i = 0;
    }

    public boolean hasMoreElements() {
        return ((size > 0 ) ? true : false);
    }

    public Object nextElement() throws NoSuchElementException {
        try {
            Object element = data[i];
            ++i;
            --size;
            return element;
        } catch (Exception e) {
            throw new NoSuchElementException();
        }
    }

    public int getSize() {
        return size;
    }
    public void reset(){
        if(data==null){
            size=0;
        }else{
            size=data.length;
            i=0;
        }
    }

}

我在JSP文件中使用该变量,当我尝试使用Enumeration时,我收到以下错误:

enter image description here

0 个答案:

没有答案