Bug 63289

Summary: org.apache.poi.hpsf.Util poi-4.0.1
Product: POI Reporter: Sushmita Nag <snag>
Component: HPSFAssignee: POI Developers List <dev>
Status: RESOLVED WONTFIX    
Severity: normal    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: All   

Description Sushmita Nag 2019-03-27 09:59:05 UTC
Is org.apache.poi.hpsf.Util class been deprecated in poi-4.0.1 ?

I could not find the relevant information in deprecated class listed. hence raising this query. We were using toString(Throwable t) of Util class of org.apache.poi.hpsf package.

However after upgrading poi to 4.0.1 I am not finding the class.

Could you please let us know ?

Regards,
Sushmita
Comment 1 Dominik Stadler 2019-03-31 19:59:44 UTC
This was actually changed back in May 2017 via r1795123:

#52117 - Invalid "last printed" summary field value - added helper method to identify undefined dates HPSF: fixed uid listing in Section.toString() HPSF: moved timestamp based "utility" methods to Filetime class HPSF: preserve original datastream for unchanged property sets  


The toString() seems to have been removed, it's probably best if you simply copy this method to your code-base as there is no Apache POI specific code contained in that method anyway.

public static String toString(final Throwable t)
    {
        final StringWriter sw = new StringWriter();
        final PrintWriter pw = new PrintWriter(sw);
        t.printStackTrace(pw);
        pw.close();
        try
        {
            sw.close();
            return sw.toString();
        }
        catch (IOException e)
        {
            final StringBuffer b = new StringBuffer(t.getMessage());
            b.append("\n");
            b.append("Could not create a stacktrace. Reason: ");
            b.append(e.getMessage());
            return b.toString();
        }
    }