https://issues.apache.org/bugzilla/show_bug.cgi?id=47375
Summary: Hyperlink does not work in POI 3.5 beta 4 and beyond
Product: POI
Version: 3.5-dev
Platform: All
OS/Version: All
Status: NEW
Severity: regression
Priority: P2
Component: HSSF
AssignedTo: [email protected]
ReportedBy: [email protected]
Created an attachment (id=23817)
--> (https://issues.apache.org/bugzilla/attachment.cgi?id=23817)
The xls file created by test code
The hyperlink created by POI for inter-sheet and file does not work. The same
code work fine for XSSF. Below is the test code.
public class HyperLinkTest extends TestCase {
public void testClone() throws FileNotFoundException, IOException {
HSSFWorkbook wb = new HSSFWorkbook(); // or new HSSFWorkbook();
CreationHelper createHelper = wb.getCreationHelper();
// cell style for hyperlinks
// by default hypelrinks are blue and underlined
CellStyle hlink_style = wb.createCellStyle();
Font hlink_font = wb.createFont();
hlink_font.setUnderline(Font.U_SINGLE);
hlink_font.setColor(IndexedColors.BLUE.getIndex());
hlink_style.setFont(hlink_font);
Cell cell;
Sheet sheet = wb.createSheet("Hyperlinks");
// URL
cell = sheet.createRow(0).createCell((short) 0);
cell.setCellValue("URL Link");
Hyperlink link = createHelper.createHyperlink(Hyperlink.LINK_URL);
link.setAddress("http://poi.apache.org/");
cell.setHyperlink(link);
cell.setCellStyle(hlink_style);
// link to a file in the current directory
cell = sheet.createRow(1).createCell((short) 0);
cell.setCellValue("File Link");
link = createHelper.createHyperlink(Hyperlink.LINK_FILE);
link.setAddress("link1.xls");
cell.setHyperlink(link);
cell.setCellStyle(hlink_style);
// e-mail link
cell = sheet.createRow(2).createCell((short) 0);
cell.setCellValue("Email Link");
link = createHelper.createHyperlink(Hyperlink.LINK_EMAIL);
// note, if subject contains white spaces, make sure they are
// url-encoded
link.setAddress("mailto:[email protected]?subject=hyperlinks");
cell.setHyperlink(link);
cell.setCellStyle(hlink_style);
// link to a place in this workbook
// create a target sheet and cell
Sheet sheet2 = wb.createSheet("Target Sheet");
sheet2.createRow(0).createCell((short) 0).setCellValue("Target Cell");
cell = sheet.createRow(3).createCell((short) 0);
cell.setCellValue("Worksheet Link");
Hyperlink link2 =
createHelper.createHyperlink(Hyperlink.LINK_DOCUMENT);
link2.setAddress("'Target Sheet'!A1");
cell.setHyperlink(link2);
cell.setCellStyle(hlink_style);
FileOutputStream out = new FileOutputStream("hyperinks.xls");
wb.write(out);
out.close();
}
}
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]