POI は、保護された xls ファイル ( org.apache.poi.hssf.record.cryptを使用) と保護された xlsx ファイル ( org.apache.poi.poifs.cryptを使用)の両方を開くことができる必要があります。これらを試しましたか?
HSSF (xls ファイル用) を使用している場合は、ファイルを開く前にパスワードを設定する必要があります。これを行うには、次の呼び出しを行います。
org.apache.poi.hssf.record.crypto.Biff8EncryptionKey.setCurrentUserPassword(password);
その後、HSSF はファイルを開くことができるはずです。
XSSF の場合、次のようなものが必要です。
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("protect.xlsx"));
EncryptionInfo info = new EncryptionInfo(fs);
Decryptor d = Decryptor.getInstance(info);
d.verifyPassword(Decryptor.DEFAULT_PASSWORD);
XSSFWorkbook wb = new XSSFWorkbook(d.getDataStream(fs));
詳細については、POI 暗号化のドキュメント ページを参照してください。