I've installed Worklight 5.0.6.1 and when invoking Java code from my adapter I don't see the log output in the workspace\WorklightServetrHome\project\logs
log files.
I'm using System.out.println(). Any advice why this worked successfully in previous releases of Worklight, and is not working in v5.0.6.1? What the property settings to allow System output from Java code in Worklight that need to be set?
FYI: Thinking it might be a bad install I re-installed a second time, and with the same result. The code prior to, and after the System.out.println() calls is executing correctly so I'm sure the statement is being executed.
See if the following IBM Worklight Information Center articles help you out:
- Logging and monitoring mechanisms
- Enabling trace for adapters in an Eclipse-hosted server
Methods WL.Logger.debug, error, and log (logging methods for server-side code)
In JavaScript you can use WL.Logger
- In Java you can use
logger.info
or logger.warning
by importing java.util.logging.Logger
logger.info
or logger.warning
will be printed to the Eclipse Worklight console.
System.Out.println()
is dependent on the application server you are using and is not in the control of Worklight.
This can be seen in action in the Using Java in Adapters training module from the IBM Worklight Getting Started page.
Logger l = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);
l.warning("Server Java: getAirportData");
worked fine in the Eclipse WL console.
However:
l.info("Server Java: getAirportData");
did not work. Probably due to WL logging settings.
In Mac, when I had my sample app running, I went to the "Servers" tab, expanded the Worklight Development Server. Then I right-clicked on "Server Configuration" and selected "Open". That opens your server.xml file.
There is a line like this - logging consoleLogLevel=..
You can set that consoleLogLevel to INFO or DEBUG or whatever you like to see what happens in your adapter.