To customize the display and, potentially, the behavior of the task output data field, you need to perform the following steps:
Create the JSP file that will display the output data field and place it in the /web/WEB-INF/handlers/output/ directory.
Edit the /web/WEB-INF/includes/output-handler.jsp file. You need to update the if-else statement to make sure the newly created JSP file is included if the current task (represented by the oha_task variable) has the desired type (the oha_task.getTaskDefId() method).
In the actual JSP file that renders the task output data field, the following context is available through request attributes. Following are the attribute names, their types, and their meaning:
com.sun.glassfishesb.wlm.console.localealso defined as LOCALE_ATTRIBUTE in Constants.java
A java.util.Locale class representing the current locale of the user's browser.
com.sun.glassfishesb.wlm.console.task-id also defined as TASK_ID_ATTRIBUTE in Constants.java
A java.lang.Long representing the numerical ID of the current task.
com.sun.glassfishesb.wlm.console.user-id also defined as USER_ID_ATTRIBUTE in Constants.java
A java.lang.String representing the username of the current user.
com.sun.glassfishesb.wlm.console.task also defined as TASK_ATTRIBUTE in Constants.java
A TaskType class (automatically generated from the WLM SE's WSDL file) representing the current task.
com.sun.glassfishesb.wlm.console.task-input-data also defined as TASK_INPUT_DATA_ATTRIBUTE in Constants.java
An org.w3c.dom.Element and the XML representation of the task's input data.
com.sun.glassfishesb.wlm.console.task-output-data also defined as TASK_OUTPUT_DATA_ATTRIBUTE in Constants.java
An org.w3c.dom.Element and the XML representation of the task's input data.
com.sun.glassfishesb.wlm.console.task-output-handler-mode also defined as TASK_OUTPUT_HANDLER_MODE_ATTRIBUTE in Constants.java
A java.lang.String that can take two values: "output-mode" or "parse-mode". It defines the mode of operation for the task output data handler.
com.sun.glassfishesb.wlm.console.task-output-data-read-only also defined as TASK_OUTPUT_DATA_READ_ONLY_ATTRIBUTE in Constants.java
A java.lang.Boolean indicating whether the handler should render the output data as read-only or read-write.
com.sun.glassfishesb.wlm.console.task-output-data-exception also defined as TASK_OUTPUT_DATA_EXCEPTION_ATTRIBUTE in Constants.java.
A java.lang.Throwable representing the exception that occurred while trying to parse or set the updated task output data. It should be null if no exceptions occurred.
The task output data handler is much more complex than the one for the input data. First it should be able to operate in two modes, and instructions on which mode to use are passed in with the corresponding request attribute. It should either render the output data in HTML, or parse the updated output data. There is no standard way to do this, as the customized handler prepares the input form itself and is the only entity that knows what the request parameter names are and how to use them. Second it should be able to store it into the request attribute. In the latter case the output data handler is expected to prepare the org.w3c.dom.Element object and place it in the com.sun.glassfishesb.wlm.console.task-output-data request attribute.
When in rendering mode, the output handler should watch out for two flags:
Whether the output data is currently read-only (in this case it should not render any input fields and so on)
Whether an exception occurred while parsing or trying to set the updated output data submitted by the user. If an exception occurred the output handler should not use the output data supplied through the request attribute, but use the one submitted by the user so the user can correct the mistakes made while filling out the output data form.
In rendering mode, the handler JSP file is expected to output the HTML code suitable for display in the web browser. You can also consult these files to get a better understanding of the logic that needs to be defined:
/web/WEB-INF/handlers/output/default.jsp
/web/WEB-INF/handlers/output/purchase-order-sample.jsp