1

我正在尝试从文件中读取服务器端对象的序列化 DTO,我可以毫无例外地读取它,但是当 rpc 回复客户端时抛出一些异常

 java.lang.NullPointerException
at com.extjs.gxt.ui.client.data.RpcMap.size(RpcMap.java:198)

问题是什么?

我使用 GXT 2.2.5。

这是服务器端代码

public List<ShellCommand> getCommands(String user, String platform)
        throws CVSServiceException {
        readFromFile();
        if(commands.isEmpty())
            return null;
        else
            return commands;
}

private void readFromFile(){
    File readFile = new File(DIR, SHELLCOMMAND);
    if(readFile.exists()){
        try{
            InputStream file = new FileInputStream(readFile);
            InputStream buffer = new BufferedInputStream( file );
            ObjectInput input = new ObjectInputStream ( buffer );
            try{
                commands = (List<ShellCommand>) input.readObject();
            } catch(Exception e){
                e.printStackTrace();
            } finally{
                input.close();
            }
        } catch(Exception e){
            e.printStackTrace();
        }
    }

我可以准确地阅读和感受我的列表commands,但是在getcommands()从客户端调用后,它会抛出此错误导致我的 RPC 调用失败?

4

0 回答 0