Under a WebSphere Application Server, using a Gen EJB Java server and Common Action Block (CAB) with CALL EXTERNAL statement to call a non-Gen Java web service results in the following exception for the runtime authentication:
TIRM030E: Application failed - Updates have been backed out
CSU-GENERAL-ERROR: WsErrorParser::parse(): ERROR PCAB_0101_PROPOSAL_DETAIL@0000000001,0040846200,0 322 [ XC/0] security.wssecurity.WSSContextImpl.s02: com.ibm.websphere.security.WSSecurityException: Exception org.apache.axis2.AxisFault: CWWSS6500E: There is no caller identity candidate that can be used to login. ocurred while running action:com.ibm.ws.wssecurity.handler.WSSecurityConsumerHandler$1@4f5068f9 (faultCode: soapenv:Server) (faultcode:soapenv:Server).
Using the same CAB from a Gen GUI C client the CALL EXTERNAL was successful after updating the Windows/C user exit file abrtexit.c file function ABRT_xcall_ws_soapheader_exit (Windows Action Block Runtime User Exits).
However there seems to be no equivalent user exit function in the Java user exit (Java Action Block Runtime User Exit WebServiceMethodCallExit).
Gen 8.6 Java applications.
The runtime authentication feature is only available for the CALL EXTERNAL 'C' runtime i.e. when CALL EXTERNAL is used in Gen 'C' language applications.
The feature is not available when CALL EXTERNAL is used in Gen 'Java' and 'C#' language applications.
See article: How does Gen CALL EXTERNAL support runtime authentication
Existing COBOL servers are being migrated to Java EJBs and the COBOL External Action Blocks (EABs) they call are being migrated to Java web services.
The original plan was to use CALL EXTERNAL from the Gen Java servers to invoke the new web services. To avoid the limitation of the CALL EXTERNAL for Java having no runtime authentication the COBOL EABs will be migrated to Java EABs which will make the required calls to the new Java web services.
See the later CALL REST statement (consumption of RESTful web services) and its authentication features. Also hub article: Gen 8.6 Consuming REST Web Service APIs.
CALL REST is now the focus of future Gen web service consumption functionality.