You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ofbiz.apache.org by harish84 <ha...@gmail.com> on 2009/04/14 12:22:00 UTC

IO exception

When i try to upload file i get error as 

waitingwaited 21 times, bailing out while still expecting 18 bytes.
java.io.IOException: waited 21 times, bailing out while still expecting 18
bytes.


How to solve this problem.
-- 
View this message in context: http://www.nabble.com/IO-exception-tp23036760p23036760.html
Sent from the OFBiz - User mailing list archive at Nabble.com.


Re: IO exception

Posted by BJ Freeman <bj...@free-man.net>.
http://commons.apache.org/fileupload/using.html
will get you a file from a users desktop, using a browser
Note this load the file into memory on the server so make sure you
server memory can accommodate the file your going to upload.

The other way is to have a folder under the ofbiz root, then put a
parameter in the web.xml you can look up in the code.
the user then ftp's into that folder.


harish84 sent the following on 4/14/2009 3:41 AM:
> Actually when i try to upload a file by using apache  poi library i get this
> error.When i used request.getParameter i was not able to get complete path
> in mozilla so i have written a code as
> 
> 
> 
> package org.ofbiz.product.product;
> 
> //~--- non-JDK imports
> --------------------------------------------------------
> 
> import org.apache.poi.hssf.usermodel.HSSFCell;
> import org.apache.poi.hssf.usermodel.HSSFRichTextString;
> import org.apache.poi.hssf.usermodel.HSSFRow;
> import org.apache.poi.hssf.usermodel.HSSFSheet;
> import org.apache.poi.hssf.usermodel.HSSFWorkbook;
> import org.apache.poi.poifs.filesystem.POIFSFileSystem;
> import org.ofbiz.base.util.UtilDateTime;
> import org.ofbiz.base.util.UtilMisc;
> import org.ofbiz.base.util.UtilProperties;
> import org.ofbiz.base.util.UtilValidate;
> import org.ofbiz.entity.GenericDelegator;
> import org.ofbiz.entity.GenericEntityException;
> import org.ofbiz.entity.GenericValue;
> import org.ofbiz.entity.util.EntityUtil;
> import java.util.HashMap;
> import java.util.Map;
> import org.apache.commons.fileupload.*; 
> import org.apache.commons.fileupload.servlet.ServletFileUpload;
> import org.apache.commons.fileupload.disk.DiskFileItemFactory;
> import org.apache.commons.io.FilenameUtils;
> import javax.servlet.http.HttpServletRequest;
> import javax.servlet.http.HttpServletResponse;
> import org.ofbiz.base.util.string.FlexibleStringExpander;
> 
> 
> //~--- JDK imports
> ------------------------------------------------------------
> import java.io.File;
> import java.io.FileInputStream;
> import java.io.FileNotFoundException;
> import java.io.IOException;
> import java.io.InputStream;
> import org.ofbiz.base.util.HttpRequestFileUpload;
> 
> import java.util.Iterator;
> import java.util.ArrayList;
> import java.util.List;
> 
> import org.ofbiz.base.util.Debug;
> /**
> * This java program is used to read the data from a Excel file and display
> them
> * on the console output.
> *
> * @author dhanago
> */
> public class POIExcelReader
> {
> 	   public static String module = POIExcelReader.class.getName();
> 	   
> /** Creates a new instance of POIExcelReader */
> public POIExcelReader ()
> {}
> 
> /**
> * This method is used to display the Excel content to command line.
> *
> * @param xlsPath
> */
> //@SuppressWarnings ("unchecked")
> public static String displayFromExcel (HttpServletRequest
> request,HttpServletResponse response)
> {
> 	
>   Debug.logInfo("################## Inside method displayFromExcel",module);
>   //String xlsPath = "C:\\harish.xls";
>   //String path = System.getProperty("user.dir") + "\\framework";  
>   //String path = request.getParameter("product");
>   String imageFilenameFormat = UtilProperties.getPropertyValue("catalog",
> "image.filename.format");
>   String imageServerPath = UtilProperties.getPropertyValue("catalog",
> "image.server.path");
>   String imageUrlPrefix = UtilProperties.getPropertyValue("catalog",
> "image.url.prefix");
> 
>   FlexibleStringExpander filenameExpander = new
> FlexibleStringExpander(imageFilenameFormat);
>   
>   String contentType = null;
>   String path = request.getParameter("product");
>   if (path != null) {
>     
>          
>       String fileLocation =
> filenameExpander.expandString(UtilMisc.toMap("location",
> "productsspreadsheet", "type", "spreadsheet", "id", "productexecl"));
>       String filePathPrefix = "";
>       String filenameToUse = fileLocation;
>       if (fileLocation.lastIndexOf("/") != -1) {
>           filePathPrefix = fileLocation.substring(0,
> fileLocation.lastIndexOf("/") + 1); // adding 1 to include the trailing
> slash
>           filenameToUse =
> fileLocation.substring(fileLocation.lastIndexOf("/") + 1);
>       }
>       
>       int i1;
>       if (contentType != null && (i1 = contentType.indexOf("boundary=")) !=
> -1) {
>           contentType = contentType.substring(i1 + 9);
>           contentType = "--" + contentType;
>       }
>           
>       String defaultFileName = filenameToUse + "_temp";
>       HttpRequestFileUpload uploadObject = new HttpRequestFileUpload();
>       uploadObject.setOverrideFilename(defaultFileName);
>       uploadObject.setSavePath(imageServerPath + "/" + filePathPrefix);
>       try{
>       uploadObject.doUpload(request);
>       }
>       catch(Exception e)
>       {
>     	  e.printStackTrace(); 
>       }
>       
>       String clientFileName = uploadObject.getFilename();
>      
>       if (clientFileName != null && clientFileName.length() > 0) {
>           if (clientFileName.lastIndexOf(".") > 0 &&
> clientFileName.lastIndexOf(".") < clientFileName.length()) {
>               filenameToUse +=
> clientFileName.substring(clientFileName.lastIndexOf("."));
>           } else {
>               filenameToUse += ".xls";
>           }
>       
>           
>           String characterEncoding = request.getCharacterEncoding();
>           try{
>           String imageUrl = imageUrlPrefix + "/" + filePathPrefix +
> java.net.URLEncoder.encode(filenameToUse, characterEncoding);
>           }
>           catch(Exception e) { 
>               e.printStackTrace();
>           }
>   
> 
>           
>           try {
>               File file = new File(imageServerPath + "/" + filePathPrefix,
> defaultFileName);
>               File file1 = new File(imageServerPath + "/" + filePathPrefix,
> filenameToUse);
>               try {
>                   file1.delete();
>               } catch(Exception e) { 
>                   Debug.logInfo("error deleting existing file (not
> neccessarily a problem)",module);
>               }
>               file.renameTo(file1);
>           } catch(Exception e) { 
>               e.printStackTrace();
>           }
>   
> 
>   Debug.logInfo("################## xlsPath"+path,module);
>   GenericDelegator delegator = (GenericDelegator)
> request.getAttribute("delegator");
> 	InputStream inputStream = null;
> 
> try
> {
> inputStream = new FileInputStream (path);
> }
> catch (FileNotFoundException e)
> {
> Debug.logInfo("################## File not found in the specified
> path"+path,module);
> e.printStackTrace ();
> }
> 
> POIFSFileSystem fileSystem = null;
> 
> try
> {
> fileSystem = new POIFSFileSystem (inputStream);
> Debug.logInfo("################## fileSystem"+fileSystem,module);
> HSSFWorkbook      workBook = new HSSFWorkbook (fileSystem);
> HSSFSheet         sheet    = workBook.getSheetAt (0);
> Iterator rows     = sheet.rowIterator();
> rows.next ();
> 
> 
> //String productId = null;
> //String productTypeId = null;
> //String internalName = null;
> //String productName = null;
> //String description = null;
> //String is_Virtual = null;
> //String is_Variant = null;
> //String on_Ebay = null;
> //String on_Amazon = null;
> List products = new ArrayList(); 
> List finalresult = new ArrayList();
> while(rows.hasNext()){
>     HSSFRow row=(HSSFRow)rows.next();
>    
>     Iterator cells=row.cellIterator();
>     Debug.logInfo("cells="+cells,module);
>     while(cells.hasNext()){
>         HSSFCell cell=(HSSFCell)cells.next();
>         int cellType=cell.getCellType();
>        Debug.logInfo("cells="+cellType,module);
> 		        if(cellType==HSSFCell.CELL_TYPE_STRING){
> 		            HSSFRichTextString strData=cell.getRichStringCellValue();
> 		            int strData1=cell.getColumnIndex();
> 		            Debug.logInfo("################## productId"+ strData,module);
> 		            List result = new ArrayList();
> 		                 if (row != null) {
> 			                    // read productId from first column "sheet column
> index
> 			                    // starts from 0"
> 		        			    HSSFCell cell0 = row.getCell((short) 0);
> 			                    cell0.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String productId = cell0.getStringCellValue();
> 			                    // read QOH from ninth column
> 			                    Debug.logInfo("##################
> productId"+productId,module);
> 			                    
> 			                    boolean productExists =
> FileImportHelper.checkProductExists(productId, delegator); 
> 			                    if (productId != null &&
> !productId.trim().equalsIgnoreCase("")) 
> 			                    {
> 			                    	
> products.add(FileImportHelper.prepareProduct(productId)); 
> 			                    }
> 			                    HSSFCell cell1 = row.getCell((short) 1);
> 			                    cell1.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String productTypeId = cell1.getStringCellValue();
> 			                    Debug.logInfo("##################
> productTypeId"+productTypeId,module);
> 			                    HSSFCell cell2 = row.getCell((short) 2);
> 			                    cell2.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String internalName = cell2.getStringCellValue();
> 			                    Debug.logInfo("##################
> internalName"+internalName,module);
> 			                    HSSFCell cell3 = row.getCell((short) 3);
> 			                    cell3.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String productName = cell3.getStringCellValue();
> 			                    Debug.logInfo("##################
> productName"+productName,module);
> 			                    HSSFCell cell4 = row.getCell((short) 4);
> 			                    cell4.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String description = cell4.getStringCellValue();
> 			                    Debug.logInfo("##################
> description"+description,module);
> 			                    HSSFCell cell5 = row.getCell((short) 5);
> 			                    cell5.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String isVirtual =
> cell5.getStringCellValue().toString();
> 			                    Debug.logInfo("##################
> is_Virtual"+isVirtual,module);
> 			                    HSSFCell cell6 = row.getCell((short) 6);
> 			                    cell6.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String isVariant =
> cell6.getStringCellValue().toString();
> 			                    Debug.logInfo("##################
> is_Variant"+isVariant,module);
> 			                    HSSFCell cell7 = row.getCell((short) 7);
> 			                    cell7.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String onEbay =
> cell7.getStringCellValue().toString();
> 			                    Debug.logInfo("##################
> on_Ebay"+onEbay,module);
> 			                    HSSFCell cell8 = row.getCell((short) 8);
> 			                    cell8.setCellType(HSSFCell.CELL_TYPE_STRING);
> 			                    String onAmazon =
> cell8.getStringCellValue().toString();
> 			                    Debug.logInfo("##################
> on_Amazon"+onAmazon,module);
> 			                    Map abs=new HashMap();
>                                 abs.put("productId",productId);
>                                 abs.put("productTypeId",productTypeId);
>                                 abs.put("internalName",internalName);
>                                 abs.put("productName",productName);
>                                 abs.put("description",description);
>                                 abs.put("isvirtual",isVirtual);
>                                 abs.put("isvariant",isVariant);
>                                 abs.put("onEbay",onEbay);
>                                 abs.put("onAmazon",onAmazon);
>                                 finalresult.add(abs);
> 			                    //HSSFCell cell8 = row.getCell((short) 8); 
>                                // Debug.logInfo("################## setting
> productId"+ productId,module);
>         						//Debug.logInfo("################## setting productTypeId"+
> productTypeId,module);
>         						//Debug.logInfo("################## setting internalname"+
> internalName,module);
>         						//Debug.logInfo("################## setting productname"+
> productName,module);
>         						//Debug.logInfo("################## setting
> productTypeId"+productTypeId,module);
>         						//Debug.logInfo("################## setting internalname"+
> onEbay,module);
>         						//Debug.logInfo("################## setting internalname"+
> onAmazon,module);
>         						//Debug.logInfo("################## setting internalname"+
> isVirtual,module);
>         						//Debug.logInfo("################## setting internalname"+
> isVariant,module);
> 		        		//GenericDelegator delegator = (GenericDelegator)
> request.getAttribute("delegator");
> 		        		GenericValue Prod =
> delegator.findByPrimaryKey("Product",UtilMisc.toMap("productId",
> productId));
> 		        		Debug.logInfo("################## Prod" +Prod,module);
> 					    if (Prod==null)
> 					    {
> 
> 						Prod = delegator.makeValue("Product", null);
>                         Prod.set("productId",productId);
> 						Prod.set("productTypeId", productTypeId);
> 						Prod.set("internalName", internalName);
> 						Prod.set("productName", productName);
> 						Prod.set("description", description);
> 				        Prod.set("isVariant", isVariant);
> 				        Prod.set("isVirtual", isVirtual);
> 		                Prod.set("onEbay", onEbay);
> 					    Prod.set("onAmazon", onAmazon);
> 					    Prod.create();
> 						//Prod.set("productId", productId);
> 					    }
> 					     
> 		            }
> 		        }
> 		            
> 		        		
> 		        
> 		        		
> 		        		 
> 		        else if(cellType==HSSFCell.CELL_TYPE_NUMERIC){
> 		            double data=cell.getNumericCellValue();
> 		            Debug.logInfo("################## else"+ data,module);
> 		        
> 		        }
>     
>     //Debug.logInfo("################## finalresult" +finalresult,module);
> }
> //Debug.logInfo("################## after whiles finalresult"
> +finalresult,module);
>     }
> }
> 
> 
> 
> catch(Exception e)
> {
> 	return "error";	
> }
> 
> return "success";	
> }
>   }
> return "success";
> }
> }
> 
> 
> 
> ###############################################################
> 
> Getting error as
> 
> 
> ##################################################################
> 
> waitingwaited 21 times, bailing out while still expecting 18 bytes.
> java.io.IOException: waited 21 times, bailing out while still expecting 18
> bytes.
>         at
> org.ofbiz.base.util.HttpRequestFileUpload.waitingReadLine(HttpRequestFileUpload.java:280)
>         at
> org.ofbiz.base.util.HttpRequestFileUpload.doUpload(HttpRequestFileUpload.java:134)
>         at
> org.ofbiz.product.product.POIExcelReader.displayFromExcel(POIExcelReader.java:100)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>         at java.lang.reflect.Method.invoke(Unknown Source)
>         at
> org.ofbiz.webapp.event.JavaEventHandler.invoke(JavaEventHandler.java:88)
>         at
> org.ofbiz.webapp.event.JavaEventHandler.invoke(JavaEventHandler.java:74)
>         at
> org.ofbiz.webapp.control.RequestHandler.runEvent(RequestHandler.java:471)
>         at
> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:304)
>         at
> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:189)
>         at
> org.ofbiz.webapp.control.ControlServlet.doPost(ControlServlet.java:77)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at
> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:248)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>         at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>         at
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>         at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>         at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
>         at java.lang.Thread.run(Unknown Source)
> 
> 
> 
> 
> 		
> 

Re: IO exception

Posted by harish84 <ha...@gmail.com>.
Actually when i try to upload a file by using apache  poi library i get this
error.When i used request.getParameter i was not able to get complete path
in mozilla so i have written a code as



package org.ofbiz.product.product;

//~--- non-JDK imports
--------------------------------------------------------

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.ofbiz.base.util.UtilDateTime;
import org.ofbiz.base.util.UtilMisc;
import org.ofbiz.base.util.UtilProperties;
import org.ofbiz.base.util.UtilValidate;
import org.ofbiz.entity.GenericDelegator;
import org.ofbiz.entity.GenericEntityException;
import org.ofbiz.entity.GenericValue;
import org.ofbiz.entity.util.EntityUtil;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.fileupload.*; 
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.io.FilenameUtils;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.ofbiz.base.util.string.FlexibleStringExpander;


//~--- JDK imports
------------------------------------------------------------
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import org.ofbiz.base.util.HttpRequestFileUpload;

import java.util.Iterator;
import java.util.ArrayList;
import java.util.List;

import org.ofbiz.base.util.Debug;
/**
* This java program is used to read the data from a Excel file and display
them
* on the console output.
*
* @author dhanago
*/
public class POIExcelReader
{
	   public static String module = POIExcelReader.class.getName();
	   
/** Creates a new instance of POIExcelReader */
public POIExcelReader ()
{}

/**
* This method is used to display the Excel content to command line.
*
* @param xlsPath
*/
//@SuppressWarnings ("unchecked")
public static String displayFromExcel (HttpServletRequest
request,HttpServletResponse response)
{
	
  Debug.logInfo("################## Inside method displayFromExcel",module);
  //String xlsPath = "C:\\harish.xls";
  //String path = System.getProperty("user.dir") + "\\framework";  
  //String path = request.getParameter("product");
  String imageFilenameFormat = UtilProperties.getPropertyValue("catalog",
"image.filename.format");
  String imageServerPath = UtilProperties.getPropertyValue("catalog",
"image.server.path");
  String imageUrlPrefix = UtilProperties.getPropertyValue("catalog",
"image.url.prefix");

  FlexibleStringExpander filenameExpander = new
FlexibleStringExpander(imageFilenameFormat);
  
  String contentType = null;
  String path = request.getParameter("product");
  if (path != null) {
    
         
      String fileLocation =
filenameExpander.expandString(UtilMisc.toMap("location",
"productsspreadsheet", "type", "spreadsheet", "id", "productexecl"));
      String filePathPrefix = "";
      String filenameToUse = fileLocation;
      if (fileLocation.lastIndexOf("/") != -1) {
          filePathPrefix = fileLocation.substring(0,
fileLocation.lastIndexOf("/") + 1); // adding 1 to include the trailing
slash
          filenameToUse =
fileLocation.substring(fileLocation.lastIndexOf("/") + 1);
      }
      
      int i1;
      if (contentType != null && (i1 = contentType.indexOf("boundary=")) !=
-1) {
          contentType = contentType.substring(i1 + 9);
          contentType = "--" + contentType;
      }
          
      String defaultFileName = filenameToUse + "_temp";
      HttpRequestFileUpload uploadObject = new HttpRequestFileUpload();
      uploadObject.setOverrideFilename(defaultFileName);
      uploadObject.setSavePath(imageServerPath + "/" + filePathPrefix);
      try{
      uploadObject.doUpload(request);
      }
      catch(Exception e)
      {
    	  e.printStackTrace(); 
      }
      
      String clientFileName = uploadObject.getFilename();
     
      if (clientFileName != null && clientFileName.length() > 0) {
          if (clientFileName.lastIndexOf(".") > 0 &&
clientFileName.lastIndexOf(".") < clientFileName.length()) {
              filenameToUse +=
clientFileName.substring(clientFileName.lastIndexOf("."));
          } else {
              filenameToUse += ".xls";
          }
      
          
          String characterEncoding = request.getCharacterEncoding();
          try{
          String imageUrl = imageUrlPrefix + "/" + filePathPrefix +
java.net.URLEncoder.encode(filenameToUse, characterEncoding);
          }
          catch(Exception e) { 
              e.printStackTrace();
          }
  

          
          try {
              File file = new File(imageServerPath + "/" + filePathPrefix,
defaultFileName);
              File file1 = new File(imageServerPath + "/" + filePathPrefix,
filenameToUse);
              try {
                  file1.delete();
              } catch(Exception e) { 
                  Debug.logInfo("error deleting existing file (not
neccessarily a problem)",module);
              }
              file.renameTo(file1);
          } catch(Exception e) { 
              e.printStackTrace();
          }
  

  Debug.logInfo("################## xlsPath"+path,module);
  GenericDelegator delegator = (GenericDelegator)
request.getAttribute("delegator");
	InputStream inputStream = null;

try
{
inputStream = new FileInputStream (path);
}
catch (FileNotFoundException e)
{
Debug.logInfo("################## File not found in the specified
path"+path,module);
e.printStackTrace ();
}

POIFSFileSystem fileSystem = null;

try
{
fileSystem = new POIFSFileSystem (inputStream);
Debug.logInfo("################## fileSystem"+fileSystem,module);
HSSFWorkbook      workBook = new HSSFWorkbook (fileSystem);
HSSFSheet         sheet    = workBook.getSheetAt (0);
Iterator rows     = sheet.rowIterator();
rows.next ();


//String productId = null;
//String productTypeId = null;
//String internalName = null;
//String productName = null;
//String description = null;
//String is_Virtual = null;
//String is_Variant = null;
//String on_Ebay = null;
//String on_Amazon = null;
List products = new ArrayList(); 
List finalresult = new ArrayList();
while(rows.hasNext()){
    HSSFRow row=(HSSFRow)rows.next();
   
    Iterator cells=row.cellIterator();
    Debug.logInfo("cells="+cells,module);
    while(cells.hasNext()){
        HSSFCell cell=(HSSFCell)cells.next();
        int cellType=cell.getCellType();
       Debug.logInfo("cells="+cellType,module);
		        if(cellType==HSSFCell.CELL_TYPE_STRING){
		            HSSFRichTextString strData=cell.getRichStringCellValue();
		            int strData1=cell.getColumnIndex();
		            Debug.logInfo("################## productId"+ strData,module);
		            List result = new ArrayList();
		                 if (row != null) {
			                    // read productId from first column "sheet column
index
			                    // starts from 0"
		        			    HSSFCell cell0 = row.getCell((short) 0);
			                    cell0.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String productId = cell0.getStringCellValue();
			                    // read QOH from ninth column
			                    Debug.logInfo("##################
productId"+productId,module);
			                    
			                    boolean productExists =
FileImportHelper.checkProductExists(productId, delegator); 
			                    if (productId != null &&
!productId.trim().equalsIgnoreCase("")) 
			                    {
			                    	
products.add(FileImportHelper.prepareProduct(productId)); 
			                    }
			                    HSSFCell cell1 = row.getCell((short) 1);
			                    cell1.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String productTypeId = cell1.getStringCellValue();
			                    Debug.logInfo("##################
productTypeId"+productTypeId,module);
			                    HSSFCell cell2 = row.getCell((short) 2);
			                    cell2.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String internalName = cell2.getStringCellValue();
			                    Debug.logInfo("##################
internalName"+internalName,module);
			                    HSSFCell cell3 = row.getCell((short) 3);
			                    cell3.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String productName = cell3.getStringCellValue();
			                    Debug.logInfo("##################
productName"+productName,module);
			                    HSSFCell cell4 = row.getCell((short) 4);
			                    cell4.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String description = cell4.getStringCellValue();
			                    Debug.logInfo("##################
description"+description,module);
			                    HSSFCell cell5 = row.getCell((short) 5);
			                    cell5.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String isVirtual =
cell5.getStringCellValue().toString();
			                    Debug.logInfo("##################
is_Virtual"+isVirtual,module);
			                    HSSFCell cell6 = row.getCell((short) 6);
			                    cell6.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String isVariant =
cell6.getStringCellValue().toString();
			                    Debug.logInfo("##################
is_Variant"+isVariant,module);
			                    HSSFCell cell7 = row.getCell((short) 7);
			                    cell7.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String onEbay =
cell7.getStringCellValue().toString();
			                    Debug.logInfo("##################
on_Ebay"+onEbay,module);
			                    HSSFCell cell8 = row.getCell((short) 8);
			                    cell8.setCellType(HSSFCell.CELL_TYPE_STRING);
			                    String onAmazon =
cell8.getStringCellValue().toString();
			                    Debug.logInfo("##################
on_Amazon"+onAmazon,module);
			                    Map abs=new HashMap();
                                abs.put("productId",productId);
                                abs.put("productTypeId",productTypeId);
                                abs.put("internalName",internalName);
                                abs.put("productName",productName);
                                abs.put("description",description);
                                abs.put("isvirtual",isVirtual);
                                abs.put("isvariant",isVariant);
                                abs.put("onEbay",onEbay);
                                abs.put("onAmazon",onAmazon);
                                finalresult.add(abs);
			                    //HSSFCell cell8 = row.getCell((short) 8); 
                               // Debug.logInfo("################## setting
productId"+ productId,module);
        						//Debug.logInfo("################## setting productTypeId"+
productTypeId,module);
        						//Debug.logInfo("################## setting internalname"+
internalName,module);
        						//Debug.logInfo("################## setting productname"+
productName,module);
        						//Debug.logInfo("################## setting
productTypeId"+productTypeId,module);
        						//Debug.logInfo("################## setting internalname"+
onEbay,module);
        						//Debug.logInfo("################## setting internalname"+
onAmazon,module);
        						//Debug.logInfo("################## setting internalname"+
isVirtual,module);
        						//Debug.logInfo("################## setting internalname"+
isVariant,module);
		        		//GenericDelegator delegator = (GenericDelegator)
request.getAttribute("delegator");
		        		GenericValue Prod =
delegator.findByPrimaryKey("Product",UtilMisc.toMap("productId",
productId));
		        		Debug.logInfo("################## Prod" +Prod,module);
					    if (Prod==null)
					    {

						Prod = delegator.makeValue("Product", null);
                        Prod.set("productId",productId);
						Prod.set("productTypeId", productTypeId);
						Prod.set("internalName", internalName);
						Prod.set("productName", productName);
						Prod.set("description", description);
				        Prod.set("isVariant", isVariant);
				        Prod.set("isVirtual", isVirtual);
		                Prod.set("onEbay", onEbay);
					    Prod.set("onAmazon", onAmazon);
					    Prod.create();
						//Prod.set("productId", productId);
					    }
					     
		            }
		        }
		            
		        		
		        
		        		
		        		 
		        else if(cellType==HSSFCell.CELL_TYPE_NUMERIC){
		            double data=cell.getNumericCellValue();
		            Debug.logInfo("################## else"+ data,module);
		        
		        }
    
    //Debug.logInfo("################## finalresult" +finalresult,module);
}
//Debug.logInfo("################## after whiles finalresult"
+finalresult,module);
    }
}



catch(Exception e)
{
	return "error";	
}

return "success";	
}
  }
return "success";
}
}



###############################################################

Getting error as


##################################################################

waitingwaited 21 times, bailing out while still expecting 18 bytes.
java.io.IOException: waited 21 times, bailing out while still expecting 18
bytes.
        at
org.ofbiz.base.util.HttpRequestFileUpload.waitingReadLine(HttpRequestFileUpload.java:280)
        at
org.ofbiz.base.util.HttpRequestFileUpload.doUpload(HttpRequestFileUpload.java:134)
        at
org.ofbiz.product.product.POIExcelReader.displayFromExcel(POIExcelReader.java:100)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.ofbiz.webapp.event.JavaEventHandler.invoke(JavaEventHandler.java:88)
        at
org.ofbiz.webapp.event.JavaEventHandler.invoke(JavaEventHandler.java:74)
        at
org.ofbiz.webapp.control.RequestHandler.runEvent(RequestHandler.java:471)
        at
org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:304)
        at
org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:189)
        at
org.ofbiz.webapp.control.ControlServlet.doPost(ControlServlet.java:77)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:248)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
        at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
        at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
        at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
        at java.lang.Thread.run(Unknown Source)




		

-- 
View this message in context: http://www.nabble.com/IO-exception-tp23036760p23037133.html
Sent from the OFBiz - User mailing list archive at Nabble.com.


Re: IO exception

Posted by Ashish Vijaywargiya <as...@hotwaxmedia.com>.
What are you doing ?
Where are you uploading file ?
Complete Log details will be of great help.

Please provide few more details.
Thanks !

--
Ashish

harish84 wrote:
> When i try to upload file i get error as 
>
> waitingwaited 21 times, bailing out while still expecting 18 bytes.
> java.io.IOException: waited 21 times, bailing out while still expecting 18
> bytes.
>
>
> How to solve this problem.
>   

Re: IO exception

Posted by BJ Freeman <bj...@free-man.net>.
please supply following information to help:
if you using the Trunk or release 4.0
the log files before and after this error.
what steps you took to get this error.

thanks.

harish84 sent the following on 4/14/2009 3:22 AM:
> When i try to upload file i get error as 
> 
> waitingwaited 21 times, bailing out while still expecting 18 bytes.
> java.io.IOException: waited 21 times, bailing out while still expecting 18
> bytes.
> 
> 
> How to solve this problem.