Utilize Authentication Manager SDK 8.0 in non-weblogic environment
2 years ago
Originally Published: 2013-07-12
Article Number
000067007
Applies To
Authentication Manager 8.0 SDK

Java
Issue
Utilize Authentication Manager SDK 8.0 in non-Weblogic environment

Using default Weblogic EJB connection in non-Weblogic environment (Tomcat for example) does not deploy successfully

com.sun.xml.ws.api.wsdl.writer.WSDLGeneratorExtension: Provider
weblogic.wsee.jaxws.framework.policy.WSDLGeneratorExtension is
specified in jar:file:<appserver path>/lib/wlfullclient.jar!/META-INF/services/com.sun.xml .ws.api.wsdl.writer.WSDLGeneratorExtension
but not found
Cause
The 8.0 SDK documentation does not adequately explain how to use the Spring HttpInvoker connection type recommended for non-Weblogic environments. 

Resolution
The HttpInvoker connection type avoids any Weblogic dependencies and can be used by performing the following configuration steps:

1)  Define application classpath to include the SDK jar files described by parameter classpath.run.httpinvoker in SDK_HOME/samples/common-build.xml
2)  Define javax.net.ssl.trustStore to point to keystore that the Authentication Manager's root certificate was imported into.
3)  Ensure that config.properties parameter ims.httpinvoker.client.provider.url is created and set equal to  https://<AM FQDN>:7002/ims-ws/httpinvoker/CommandServer
4) Modify the following line of connection code to specify the HttpInvoker:

          //Connection conn = ConnectionFactory.getConnection();
         Connection conn = ConnectionFactory.getConnection("HttpInvokerCommandTargetBasicAuth");

OR

Rather than modify the connection code instead define the parameter:  ims.client.primary.command.target = HttpInvokerCommandTargetBasicAuth
 
Notes
This solution also applies to environments not using Weblogic 10.