Codenameone MultipartRequest.calculateContentLength错误

Codenameone MultipartRequest.calculateContentLength错误,codenameone,Codenameone,我正在尝试使用一些二进制数据进行多部分上传。然而,我得到了一个非常奇怪的错误,我从来没有遇到过。这是我的密码 MultipartRequest request = new MultipartRequest(); request.setPost(true); request.setUrl(URL+"/agenci/worker/addWorker/"); .., request.ad

我正在尝试使用一些二进制数据进行多部分上传。然而,我得到了一个非常奇怪的错误,我从来没有遇到过。这是我的密码

MultipartRequest request = new MultipartRequest();
            request.setPost(true);
            request.setUrl(URL+"/agenci/worker/addWorker/");
            ..,
            request.addData("photoFile", dir  + "user.jpg", "image/jpeg");
我在运行时得到这个异常

[EDT] 0:0:0,1 - Exception: java.lang.NullPointerException - null
    at com.codename1.io.MultipartRequest.calculateContentLength(MultipartRequest.java:295)
    at com.codename1.io.MultipartRequest.initConnection(MultipartRequest.java:128)
    at com.codename1.io.ConnectionRequest.performOperationComplete(ConnectionRequest.java:798)
    at com.codename1.io.NetworkManager$NetworkThread.run(NetworkManager.java:340)
    at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
user.jpg存在于提供的路径中。这是一个新的错误吗

[编辑]

我认为,即使文件存在于文件系统存储中,文件的路径也会一直返回null。当我尝试创建要从InputStream上载的图像时,这是一个例外

[EDT] 0:0:0,1 - Exception: java.lang.NullPointerException - null
    at com.codename1.io.Storage.createInputStream(Storage.java:172)
    at com.jajitech.agenci.webservice.SignUpService.saveWorker(SignUpService.java:49)
    at com.jajitech.agenci.login.signup.SignUp.completeSignUp(SignUp.java:333)
    at com.jajitech.agenci.login.signup.SignUp.lambda$completeSignUpForm$3(SignUp.java:304)
    at com.codename1.ui.util.EventDispatcher.fireActionSync(EventDispatcher.java:459)
    at com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:362)
    at com.codename1.ui.Button.fireActionEvent(Button.java:687)
    at com.codename1.ui.Button.released(Button.java:728)
    at com.codename1.ui.Button.pointerReleased(Button.java:835)
    at com.codename1.ui.LeadUtil.pointerReleased(LeadUtil.java:153)
    at com.codename1.ui.Form.pointerReleased(Form.java:3694)
    at com.codename1.ui.Component.pointerReleased(Component.java:4691)
    at com.codename1.ui.Display.handleEvent(Display.java:2352)
    at com.codename1.ui.Display.edtLoopImpl(Display.java:1244)
    at com.codename1.ui.Display.mainEDTLoop(Display.java:1162)
    at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120)
    at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
请注意,如果我对文件系统存储中现有文件的调用返回null,可能会有什么问题

[编辑2]

这是我的完整方法,使用InputStream。我曾尝试使用正常路径,但出现了相同的错误。createInputStream上的行返回null

try {
            MultipartRequest request = new MultipartRequest();
            request.setPost(true);
            request.setUrl(URL+"/agenci/worker/addWorker/");
            request.addArgument("name", getName());
            request.addArgument("dob", getDob());
            request.addArgument("address", getAddress());
            request.addArgument("email", getEmail());
            request.addArgument("phone", getPhone());
            request.addArgument("agencyId", getPass());
            request.addArgument("gender", getGender());
            try
            {
                InputStream is = Storage.getInstance().createInputStream(dir  + "a.jpg");
                Image img = Image.createImage(is);
                EncodedImage em = EncodedImage.createFromImage(img, true);
                byte[] data = em.getImageData();
                is.close();
                request.addData("photoFile", data , "image/jpeg");
            }catch(Exception er){System.out.println("error3");er.printStackTrace();}
            NetworkManager.getInstance().addToQueueAndWait(request);
            if(request.getResponseData() == null)
            {
                return "error1";
            }
例外

Exception: java.lang.NullPointerException - null
    at com.codename1.io.Storage.createInputStream(Storage.java:172)

这就是全部吗?对于空mime类型,该行失败。所以我猜有另一个文件被添加了?经过几个小时的尝试,我可能已经找到了根本原因。文件系统存储中的文件路径为returing null,即使该文件存在。哪行代码返回null?我已经编辑了代码Shai。这是InpuStream创建的行。我百分之百确定文件存在于文件系统存储中您使用的是
存储
而不是
文件系统存储
这就是全部吗?对于空mime类型,该行失败。所以我猜有另一个文件被添加了?经过几个小时的尝试,我可能已经找到了根本原因。文件系统存储中的文件路径为returing null,即使该文件存在。哪行代码返回null?我已经编辑了代码Shai。这是InpuStream创建的行。我百分之百确定该文件存在于文件系统存储中您使用的是
存储
而不是
文件系统存储