标签: eofexception

Facebook SDK 3 EOFException

我正在使用新的FaceBook SDK 3.0.在将图片从URL发布到"我/照片"时,我间歇性地获得了一个EOFException.我偶尔会遇到这个错误(约20次中有1次).

我还必须在获得之后添加,EOFException如果我再次重新发布,它会成功发布.

所以,暂时我编码自动重试一次,如果我得到EOFException解决方案似乎令人满意.

但是我需要知道导致它的原因,这是Android SDK中的一个错误.我用Google搜索了很多但却无法得到任何东西.

我发布了日志(出于安全原因删除了我的访问令牌和图片网址)

06-05 15:09:42.585: D/FacebookSDK.Request(16611): Request:
06-05 15:09:42.585: D/FacebookSDK.Request(16611):   Id: 9
06-05 15:09:42.585: D/FacebookSDK.Request(16611):   URL:https://graph.facebook.com/me/photos?caption=abc&format=json&sdk=android&migration_bundle=fbsdk%3A20121026&access_token=ADBCEFG&url=http%3A%2F%2Ftest.test.test%2Ftest%2Ftest%2F201695%2Ftest%2F18629
06-05 15:09:42.585: D/FacebookSDK.Request(16611):   Method: POST
06-05 15:09:42.585: D/FacebookSDK.Request(16611):   User-Agent: FBAndroidSDK.3.0.0
06-05 15:09:42.585: D/FacebookSDK.Request(16611):   Content-Type:   multipart/form-data; boundary=3i2ndDfv2rTHiSisAbouNdArYfORhtTPEefj3q2f
06-05 15:09:42.585: D/FacebookSDK.Request(16611):   Parameters:
06-05 15:09:42.585: D/FacebookSDK.Request(16611):       caption:    abc
06-05 15:09:42.585: D/FacebookSDK.Request(16611):       format: json
06-05 15:09:42.585: D/FacebookSDK.Request(16611):       sdk:    android
06-05 15:09:42.585: D/FacebookSDK.Request(16611):       migration_bundle:   fbsdk:20121026
06-05 15:09:42.585: D/FacebookSDK.Request(16611):       access_token:   ABCDEF
06-05 15:09:42.585: D/FacebookSDK.Request(16611):       url:    http://test.test.test/test/test/201695/test/18629
06-05 15:09:42.585: D/FacebookSDK.Request(16611): …
Run Code Online (Sandbox Code Playgroud)

android eofexception facebook-android-sdk

51
推荐指数
1
解决办法
1480
查看次数

Android HttpsUrlConnection eofexception

我有一个问题,当我尝试读取任何输入时,我的HttpsURLConnection将抛出一个EOFException.该代码适用于某些网络调用,但在其他网络调用上失败.如果我尝试从连接中读取任何内容,则会因上述错误而失败.

例:

urlConnect.getResponseCode() // will throw error
urlConnect.getResponseMessage() // will throw error
BufferedInputStream in = new BufferedInputStream(urlConnect.getInputStream()); //will throw error
Run Code Online (Sandbox Code Playgroud)

以下是每个的堆栈跟踪:

GETRESPONSE:

03-14 09:49:18.547: W/System.err(6270): java.io.EOFException
03-14 09:49:18.547: W/System.err(6270):     at libcore.io.Streams.readAsciiLine(Streams.java:203)
03-14 09:49:18.547: W/System.err(6270):     at libcore.net.http.HttpEngine.readResponseHeaders(HttpEngine.java:573)
03-14 09:49:18.547: W/System.err(6270):     at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:821)
03-14 09:49:18.547: W/System.err(6270):     at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:283)
03-14 09:49:18.547: W/System.err(6270):     at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:495)
03-14 09:49:18.547: W/System.err(6270):     at libcore.net.http.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:134)
Run Code Online (Sandbox Code Playgroud)

的BufferedInputStream:

03-14 09:39:14.077: W/System.err(5935): java.io.EOFException
03-14 09:39:14.077: W/System.err(5935):     at libcore.io.Streams.readAsciiLine(Streams.java:203)
03-14 09:39:14.077: W/System.err(5935):     at libcore.net.http.HttpEngine.readResponseHeaders(HttpEngine.java:573)
03-14 09:39:14.077: W/System.err(5935):     at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:821)
03-14 09:39:14.077: W/System.err(5935):     at …
Run Code Online (Sandbox Code Playgroud)

android httpurlconnection eofexception

40
推荐指数
1
解决办法
2万
查看次数

执行同步PUT请求时在Retrofit中的EOFException

在我的应用程序中,我使用Retrofit库进行同步 PUT请求.问题是:有时候图书馆会抛出EOFExceptions.

以下是其中一种情况的堆栈跟踪

29099-29269/com.mycompany.myapp D/Retrofit? java.io.EOFException
  at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:192)
  at com.squareup.okhttp.internal.http.HttpConnection.readResponse(HttpConnection.java:189)
  at com.squareup.okhttp.internal.http.HttpTransport.readResponseHeaders(HttpTransport.java:101)
  at com.squareup.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:676)
  at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:426)
  at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:371)
  at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:466)
  at retrofit.client.UrlConnectionClient.readResponse(UrlConnectionClient.java:73)
  at retrofit.client.UrlConnectionClient.execute(UrlConnectionClient.java:38)
  at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:321)
  at retrofit.RestAdapter$RestHandler.invoke(RestAdapter.java:240)
  at $Proxy7.addEvents(Native Method)
  at com.mycompany.myapp.api.MyService.addEvents(MyService.java:59)
Run Code Online (Sandbox Code Playgroud)

我尝试了以下展示的解决方案,但在我的案例中没有一个有用:

以下是我RestAdapter在我的应用中创建的方式:

OkHttpClient okHttpClient = new OkHttpClient();

RestAdapter restAdapter = new RestAdapter.Builder()
  .setEndpoint(Url)
  .setRequestInterceptor(new RequestInterceptor()
  {
      @Override
      public void intercept(RequestFacade request)
      {
          request.addHeader("Accept", "application/json");
          request.addHeader("Content-Type", "application/json");
      }
  })
  .setClient(new OkClient(okHttpClient))
  .setLogLevel(RestAdapter.LogLevel.FULL)
  .setErrorHandler(new MyErrorHandler())
  .build();
Run Code Online (Sandbox Code Playgroud)

有没有人知道这个问题的其他解决方案?

顺便说一句,我不能使用涉及的解决方案, …

java rest android eofexception retrofit

27
推荐指数
1
解决办法
2113
查看次数

何时会在JAVA的流中发生EOFException

我正在使用DataInputStream并且有一个关于EOFExceptions的问题.

根据java文档:

表示在输入期间意外到达文件末尾或流末尾的信号.

此异常主要由数据输入流用于信号流的结束.请注意,许多其他输入操作在流末尾返回特殊值而不是抛出异常.

这是否意味着当生成EOFException时,流不会再次打开?这是否意味着你永远不会期待它的更多数据?

如果输出流连接到输入流并且调用了outputstream.close(),输入流是否会收到EOFException或IOException?

IOException被描述为:

表示发生某种I/O异常的信号.此类是由失败或中断的I/O操作产生的一般异常类.

输出流上的close是否会在datainputstream端产生EOFException或IOException?

java input stream eofexception

16
推荐指数
2
解决办法
4万
查看次数

Android HttpURLConnection抛出EOFException

这是最简单的问题.

我使用HttpUrlConnection对象通过代理创建到我的服务器的HTTPS连接.

我的代理关闭连接但我的代码仍尝试重用相同的连接.所以我得到了EOFException.

我该如何处理这类案件?

android httpurlconnection eofexception

15
推荐指数
3
解决办法
1万
查看次数

带有readObject的Java神秘EOF异常

以下代码生成一个EOFException.这是为什么?

public static Info readInfoDataFromFile(Context context) {
    Info InfoData = null;
    FileInputStream fis = null;
    ObjectInputStream ois = null;
    Object object = null;

    if (context.getFileStreamPath("InfoFile.dat").exists()) {
        try {
            fis = context.openFileInput("InfoFile.dat");
            ois = new ObjectInputStream(fis);
            Object temp;
            try {
                // here it throws EOF exception in while loop 
                while ((temp = ois.readObject()) != null) {
                    object = temp;
                }
            } catch (NullPointerException npe) {
                npe.printStackTrace();
            } catch (EOFException eof) {
                eof.printStackTrace();
            } catch (FileNotFoundException fnfe) {
                fnfe.printStackTrace();
            } …
Run Code Online (Sandbox Code Playgroud)

java serialization exception eofexception

11
推荐指数
3
解决办法
3万
查看次数

如何使用PDFClown将图片添加到pdf文件

我使用PDFClown .jar库将jpeg图像转换为pdf文件.但是,我得到以下错误:

java.lang.RuntimeException:java.io.EOFException

在这里你可以找到代码:

org.pdfclown.documents.contents.entities.Image image = 
org.pdfclown.documents.contents.entities.Image.get("c:" + java.io.File.separator + "bg.jpg");
org.pdfclown.documents.contents.xObjects.XObject imageXObject = image.toXObject(document);
composer.showXObject(imageXObject);                 
composer.flush();       
document.getFile().save("c:\\test.pdf" , SerializationModeEnum.Standard);
Run Code Online (Sandbox Code Playgroud)

请告诉我有什么问题?

java eofexception pdfclown

6
推荐指数
1
解决办法
743
查看次数

磁盘空间有多低会导致java.IO.EOFException类

今天我在java序列化和反序列化中遇到了奇怪的行为("奇怪",因为我不明白)

我正在从linux共享目录序列化和反序列化一个对象.序列化一切都没有任何问题,但当我试图反序列化它抛出的同一个文件 java. io. EOFException.此外,反序列化仅对此新创建的文件失败,并且正在为该目录中的所有其他旧文件工作.

所以我在互联网上搜索,发现一个线程说低磁盘空间也可能导致此错误.

所以我清理了一些临时文件,瞧它工作了.我不明白磁盘空间不足只会影响反序列化而不是序列化?

我正在使用apache commons SerializationUtils类.下面是序列化和反序列化的代码

SerializationUtils. serialize(myObject, new FileOutputStream(new File(sharePath+FILEName) ;


MyObject object=SerializationUtils. deserialize( new FileInputStream(new File(sharePath+FILEName);
Run Code Online (Sandbox Code Playgroud)

如果有人可以解释这种行为,那将非常有帮助.我怀疑它在SerializationUtils中的一个错误可能会吞噬IOException.

谢谢

java file-io serialization eofexception

6
推荐指数
1
解决办法
285
查看次数

Java的EOFException是特殊的吗?

使用异常来指示已到达文件的末尾似乎很脏.我们阅读的每个文件都有一个结尾,所以它似乎并不特殊或意外.此外,我不喜欢对我的程序的非异常流程使用异常.

我正在谈论使用java.io.EOFException来表示数据输入流的结束:

想象一个包含以下消息的文件......

----------------- ------------------
- 2-byte LENGTH - - N-byte PAYLOAD - , where N = LENGTH;
----------------- ------------------
Run Code Online (Sandbox Code Playgroud)

...并使用DataInputStream读取此文件:

DataInputStream in = new DataInputStream(...);

...

try {
    while (true) {
        short length = in.readShort();
        byte[] b = new byte[length];
        in.readFully(b);
    }
} catch (EOFException e) { }

...
Run Code Online (Sandbox Code Playgroud)

在此示例中,调用将抛出EOFException in.readShort().我应该弄清楚文件中的字节数,并准确读取该字节数(由total -= length零开始确定),并退出while循环而没有异常?我正在寻找最佳实践.

我应该这样做吗?

long total = file.length();
while (total > 0) {
    short length = in.readShort();
    total -= length;
    byte[] b = new …
Run Code Online (Sandbox Code Playgroud)

java io exception inputstream eofexception

5
推荐指数
1
解决办法
3968
查看次数

在文件上传中处理套接字上意外 EOF 读取的更好方法?

我在后端使用Spring MVC实现文件上传,前端只是一个普通的HTML

<form method="POST" enctype="multipart/form-data" action="/upload">
    file to upload: <input type="file" name="file"><br>
    <input type="submit" value="Upload" />
</form>
Run Code Online (Sandbox Code Playgroud)

一切正常,除非我在上传过程中关闭浏览器,否则我会看到服务器抛出错误(您必须尽早中断该过程才能看到它)

java.io.EOFException: Unexpected EOF read on the socket
at org.apache.coyote.http11.InternalNioInputBuffer.fill(InternalNioInputBuffer.java:152)
at org.apache.coyote.http11.InternalNioInputBuffer$SocketInputBuffer.doRead(InternalNioInputBuffer.java:177)
at org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFilter.java:110)
at org.apache.coyote.http11.AbstractInputBuffer.doRead(AbstractInputBuffer.java:416)
at org.apache.coyote.Request.doRead(Request.java:460)
at org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:338)
at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:395)
...
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更好的方法来处理异常,或者我可以安全地保持原样?

java file-upload spring-mvc eofexception

5
推荐指数
1
解决办法
1万
查看次数