2011-02-01 126 views
0

我想在Java RMI實現的服務器端調用一個方法。該方法將打開,閱讀並在Excel電子表格中執行一些數據操作。Java Apache POI NoClassDefFoundError WorkbookFacory

Workbook wb = WorkbookFactory.create(inp); 

這是我得到以下例外的代碼。 inp是具有指定文件路徑的InputStream。

Exception: java.rmi.ServerError: Error occurred in server thread; nested exception is: java.lang.NoClassDefFoundError: org/apache/poi/ss/usermodel/WorkbookFacory

我也嘗試在本地調用此方法,但沒有發生任何錯誤。

現在,服務器和客戶端都運行在同一臺計算機上(本地主機)。

+1

在服務器端,您是否忘記將包含POI類的JAR文件添加到類路徑中? `NoClassDefFoundError`(幾乎)總是意味着你的類路徑中缺少某些東西。 – Jesper 2011-02-01 16:21:33

回答

2

將POI類添加到您的服務器的類路徑中。僅僅因爲客戶端和服務器在同一臺計算機上運行,​​並不意味着它們共享一個通用的類路徑。