0

我正在尝试将文件上传到 Sourceforge 并在 Eclipse 中使用 Java 中的 Collabnet API 和 SOAP 为其创建文件版本,这工作正常,直到我将类打包到 jar 中,将其添加到构建路径中,然后尝试通过 Ant Java 任务执行它。然后我得到下面给出的故障 fi_sfSoap.upLoadFile 挂起然后超时。这不是文件的大小,起初我以为是文件路径,但文件可以从 jar 内部由文件阅读器读取。任何帮助将不胜感激!

File latest_release = new File(file_path);
    if(!latest_release.canRead()){
        System.out.println("File does not Exist");
}else{
        DataSource ds = new FileDataSource(latest_release);
        DataHandler dh = new DataHandler(ds);
    try{
            String file_id = fi_sfSoap.uploadFile(sessionId, dh);
            f_sfSoap.createFrsFile(sessionId, release_id, fileName, "application/zip", file_id);
        }catch(Exception e){
            e.printStackTrace();
        }


    } 

错误信息

    [java] AxisFault
    [java]  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
    [java]  faultSubcode: 
    [java]  faultString: java.net.SocketTimeoutException: Read timed out
    [java]  faultActor: 
    [java]  faultNode: 
    [java]  faultDetail: 
    [java]  {http://xml.apache.org/axis/}stackTrace:java.net.SocketTimeoutException: Read timed out
    [java]  at java.net.SocketInputStream.socketRead0(Native Method)
    [java]  at java.net.SocketInputStream.read(Unknown Source)    
4

1 回答 1

0

猜测您的文件太大而无法上传。

BTW!latest_release.canRead()并不明确表示该文件不存在。它可能存在但由于访问控制而无法访问。

于 2012-08-14T10:43:09.087 回答