Configurations for HOLD Graphics

In this section:

When using PCHOLD, a procedure is invoked on the WebFOCUS Reporting Server and the server accesses data sources to determine values. These values are usually passed back to the WebFOCUS Client on the web or application server and the client uses the graph engine to create graphics.

When using HOLD, after a procedure is invoked and the values determined, the WebFOCUS Reporting Server uses the graph engine to create the graphics itself or makes an HTTP call to the web server.

Using a HOLD can be specified in a procedure like the sample below.


Top of page

Example: Creating a Sample Procedure for HOLD

To test whether HOLD works in your environment, create a procedure like the following:

APP HOLD BASEAPP
GRAPH FILE CAR
SUM SALES
BY COUNTRY
ON GRAPH HOLD AS HOLDTEST FORMAT PNG
END

Save this procedure in the ibisamp directory on the WebFOCUS Reporting Server machine. For example:

/install_directory/ibi/apps/ibisamp/cargrsrv.fex

This procedure creates a file called holdtest.png in baseapp. You can use the procedure to test the HOLD configurations that follow. If GRAPHSERVURL is set in cgivars.wfs, you can override it and use JSCOM3 or IBIJAVAPATH, by adding the following as the second line of the sample procedure.

SET GRAPHSERVURL=""

Top of page

x
Configuring GRAPHSERVURL

No special configuration is needed to use GRAPHSERVURL provided you have deployed the WebFOCUS web application to your application server. GRAPHSERVURL is set as the IBIF_graphservurl value in cgivars.wfs. The value in cgivars.wfs is passed to the WebFOCUS Reporting Server when you launch a procedure through a servlet call. The value can also be set or overridden in a procedure using:

SET GRAPHSERVURL=http://hostname:port/ibi_apps/IBIGraphServlet

where:

hostname:port

Are the host name and port of the web server or application server.

GRAPHSERVURL is not supported when used against a secured web server (SSL, Basic Authentication, or other third-party security), because there is no mechanism for supplying credentials.

If you are using a secured web server in front of your application server, you can reset this value to directly call the application server host and port instead of the web server. You can do this in cgivars.wfs through the WebFOCUS Administration Console.

For ReportCaster, this must be set in a procedure, since it is not inherited from cgivars.wfs. Otherwise, a procedure launched by ReportCaster makes use of JSCOM3 or IBIJAVAPATH.

You can disable GRAPHSERVURL and use JSCOM3 or IBIJAVAPATH for a specific procedure by setting GRAPHSERVURL to nothing:

SET GRAPHSERVURL=""

Top of page

x
Configuring for JSCOM3 HOLD

JSCOM3 is a listener installed with the WebFOCUS Reporting Server. It normally uses the fourth port used by the server. By default, this is port 8123. It is only used for HOLD graphics if GRAPHSERVURL and IBIJAVAPATH is not set.

To use JSCOM3, you must set the $JDK_HOME variable to your Java JDK installation directory. JSCOM3 is configured to automatically use headless. If you wish to use DISPLAY, you need to disable headless for JSCOM3 and set the DISPLAY variable.

Be aware that if you create graphs that use templates, JSCOM3 uses a different copy of the templates than the WebFOCUS Client. If you modify templates, be sure to modify both. One is installed with the server for JSCOM3 and one is installed with the WebFOCUS Client:

/install_directory/ibi/srv80/home/graph
/install_directory/ibi/WebFOCUS80/ibi_html/javaassist/images/tdg/template

Top of page

x
Configuring for IBIJAVAPATH

How to:

If you do not wish to use JSCOM3 or GRAPHSERVURL, you can use the older process-based IBIJAVAPATH method. With IBIJAVAPATH, each graph request is launched as a separate Java process using the IBIJAVAPATH environment variable. This variable must be declared before the server is started. You can add it to the user .profile or to the edastart script.

IBIJAVAPATH is used if GRAPHSERVURL is not set and if the IBIJAVAPATH environment variable is set. You do not need to disable JSCOM3 in order to use IBIJAVAPATH.



x
Procedure: How to Set IBIJAVAPATH
  1. Set the IBIJAVAPATH environment variable in your .profile or the edastart script.

    The IBIJAVAPATH variable is what the server uses to create graphs. It should contain all of the following in quotation marks:

    • The java command.
    • The -classpath option.
    • The full path to the following file:
      /install_directory/ibi/srv80/home/etc/IBIGifGraphChart.jar

    For example:

    export IBIJAVAPATH="java 
    -classpath /home/iadmin/ibi/srv80/home/etc/IBIGifGraphChart.jar"
  2. Choose whether to use DISPLAY or headless.
    • If you have an X Server, you can set the $DISPLAY variable to the X Server host name. Ensure that the X Server accepts the connection. You can set this either in the user profile or in edastart. For example:
      export DISPLAY=xserver_host:0.0
    • If you do not have an X Server, you can use the headless Java option as part of the IBIJAVAPATH variable. For example:
      export IBIJAVAPATH="java -Djava.awt.headless=true 
      -classpath /home/iadmin/ibi/srv80/home/etc/IBIGifGraphChart.jar"

      The headless option does not support GIF files or the GRAPH32 engine.


WebFOCUS