Difference between revisions of "Java Debugging Tips"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 15: Line 15:
::: <tt>Functions.throwException("message text");</tt>
::: <tt>Functions.throwException("message text");</tt>


''Learn more:''  
:''Learn more:''  
:* See the [[Class Template]] for code that uses many of those techniques.
::* See the [[Class Template]] for code that uses many of those techniques.


===Invoking Methods===
===Invoking Methods===

Revision as of 00:40, 10 September 2013

Debug Messages

To debug a Java class:

  • Add messages to the debug log using
Logger.info("message text", "message type");
(Use the message type for searching, when needed.)
  • Open the debug log in a separate page:
  • Go to GearIcon.png > Developer Resources > Debug Log
  • After running the code, refresh the page by clicking Debug Log in the sidebar.
  • Display a note at the top of the user's page:
Functions.showMessage("message text");
  • Abort processing and display and error message:
Functions.throwException("message text");
Learn more:

Invoking Methods

The Unit Test Framework is great for automated testing of Java methods, but note that database changes don't persist. That's a highly desirable feature in a test harness, but it means you can't run a test and then look for changes interactively, in the GUI.

To view changes interactively, the code can be launched by Rule. For example, use an [{Event Rule]] that runs when a record is added. (As a precaution, you can set up a condition so that the rule is triggered only when some flag is set.)