XSSFSheet.getHyperlinkList and XSSFSheet.getHyperlink are currently only available in the XSSFSheet implementation, and aren't available in HSSFSheets. Currently the only way to get a hyperlink from an HSSFWorkbook is to use HSSFCell.getHyperlink(). To get all hyperlinks in a workbook, this requires iterating over all cells, which is unnecessarily expensive (and also currently runs in quadratic time with the number of cells in a sheet).
Created attachment 33246 [details] changes to make hyperlinks accessible via HSSFSheet and SXSSFSheet
Applied in r1711923 to trunk. Site docs updated in r1711924.
*** Bug 58507 has been marked as a duplicate of this bug. ***
After reading about the problems with Java's Cloneable interface[1], I replaced Cloneable interface with copy constructors in r1711951. I wrote code for copying between hyperlink types (HSSFHyperlink/XSSFHyperlink). OOXML code is not available in TestHSSFHyperlink.java (results in compile error). Where should I place the HSSFHyperlink copy constructor unit test [2] in order for it to run as part of the suite? [1] https://stackoverflow.com/questions/2427883/clone-vs-copy-constructor-which-is-recommended-in-java [2] https://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFHyperlink.java?r1=1711952&r2=1711950&pathrev=1711952