Ignore:
Timestamp:
2016-07-22T15:16:54+12:00 (8 years ago)
Author:
ak19
Message:

Useful debug statement when we get an InvocationTargetException (Reflection related issue). The method may be called and may encounter an exception there, yet we still see the InvocationTargetException.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/src/java/org/greenstone/gsdl3/service/ServiceRack.java

    r30475 r30616  
    3636import org.w3c.dom.Node;
    3737import org.w3c.dom.NodeList;
     38
     39import java.io.StringWriter;
     40import java.io.PrintWriter;
    3841
    3942/**
     
    294297                        {
    295298                            logger.error("Trying to call a processService type method (process" + to + ") on a subclass(" + this.getClass().getName() + "), but an exception happened:" + e.toString(), e);
    296 
    297                             error_string.append("Trying to call a processService type method (process" + to + ") on a subclass(" + this.getClass().getName() + "), but an exception happened:" + e.toString());
     299                            // for debugging, it's useful to see what's really causing this supposed "invocationTargetException"
     300                            // When the error message is displayed in the "Net" tab in the browser's web inspector, scroll down to "Caused by"
     301                            StringWriter errors = new StringWriter();
     302                            e.printStackTrace(new PrintWriter(errors));
     303                            String errStr = errors.toString();
     304                            errStr += XMLConverter.getString(request);
     305
     306
     307                            error_string.append("Trying to call a processService type method (process" + to + ") on a subclass(" + this.getClass().getName() + "), but an exception happened:" + e.toString() + "\n" + errStr );
    298308                        }
    299309                    }
Note: See TracChangeset for help on using the changeset viewer.