Why is Apache POI able to write a hyperlink more than 255 characters but not XLSXWriter?
255 characters in a URL is an Excel 2007+ limitation. Try it in Excel. 
I think the XLS format allowed longer URLs (so perhaps that is the difference). 
Also XlsxWriter doesn't use the HYPERLINK() function internally (although it is available to the user via the standard interface).
I'm trying to embed a bunch of URLs into an Excel file using Python with XLSXWriter's function write_url(), but it gives me the warning of it exceeding the 255 character limit. I think this is happening because it may be using the built-in HYPERLINK Excel function. 
However, I found that Apache POI from Java doesn't seem to have that issue. Is it because they directly write it into the cell itself or is there a different reason? Also, is there a workaround in Python that can solve this issue?