Missing component library error in affwebserv.log and FWSTrace.log not printing lines from Web Agent Option Pack (WAOP)
search cancel

Missing component library error in affwebserv.log and FWSTrace.log not printing lines from Web Agent Option Pack (WAOP)

book

Article ID: 218543

calendar_today

Updated On:

Products

CA Single Sign On Agents (SiteMinder) CA Single Sign On Federation (SiteMinder) CA Single Sign On Secure Proxy Server (SiteMinder) SITEMINDER

Issue/Introduction

When running a Web Agent Option Pack (WAOP), this one produces no line in the FWSTrace.log and shows only the header in the file:

FWSTrace.log :

[Date][Time][Pid][Tid][TransactionID][SrcFile][Function][Message]
[====][====][===][===][=============][=======][========][=======]

The affwebserv.log shows the error "missing component library" on each line:

affwebserv.log

[31389/4233066240][Fri May 28 2021 09:34:40][AuthnRequest.java][INFO][sm-log-00001] missing component library (AuthnRequest)
[31389/4232013568][Fri May 28 2021 09:39:25][AssertionConsumer.java][INFO][sm-log-00001] missing component library (AssertionConsumer)
[31389/4232013568][Fri May 28 2021 09:39:25][AssertionConsumer.java][INFO][sm-log-00001] missing component library (AssertionConsumer)

Cause

The "missing component library" error is due to the fact that the Web Agent Option Pack doesn't get access to the FedClient_en.properties file it needs.

This file is in the "resource/" folder of the Web Agent Option Pack installation.

The tricky thing is that Web Agent Option Pack and Web Agent are installed in different folders in this custom installation.

The Out of the Box installation, they would be installed in the same as per what documentation states (1)(2).

Note that this issue might also be caused by:

  • Tomcat and Web Agent Option Pack use both different JVM versions;
  • Web Agent and Web Agent Option Pack aren't the same exact version.

Resolution

Manually setting the different environment variables for the Web Agent Option Pack to solve the issue:

# export JAVA_HOME=/{home_java}
# export CATALINA_HOME=/{home_tomcat}
# export CATALINA_BASE=/{home_tomcat_applications}
# export CAPKIHOME=/{home_web_agent_option_pack}/CAPKI
# export NETE_WA_ROOT=/{home_web_agent_option_pack}
# export NETE_WA_CLASSPATH=/{home_web_agent}/java/smconapi.jar
# export NETE_WA_PATH=/{home_web_agent_option_pack}/bin:/{home_web_agent_option_pack}/bin/thirdparty:/{home_java}/jre/bin
# export NETE_WA_OPACK=INSTALLED
# export LD_LIBRARY_PATH=/{home_web_agent_option_pack}/bin:/{home_web_agent_option_pack}/bin/thirdparty
# export PATH=/{home_web_agent_option_pack}/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin
# cd /{home_tomcat}/bin
# ./startup.sh

 Note:

 As a security application, it's recommended to:

  • Run the Web Agent Option Pack on an isolated Tomcat instance;
  • Compile the Web Agent Option Pack with the same JDK installation that the Tomcat Server uses;
  • Set the Web Agent Option Pack Environment Variables with the same JDK installation that the Tomcat Server uses;
  • Ensure Web Agent and Web Agent Option Pack are running the exact same version;
  • Ensure Web Agent and Web Agent Option Pack are installed in the same folder (in the environment web agent option pack should be installed in webagent/ folder) to avoid unexpected behavior.

Additional Information