My Oracle Support Banner

OEG 11g CRL Static Filter : com.vordel.security.openssl.Certificate cannot be cast to java.util.ArrayList (Doc ID 1384994.1)

Last updated on OCTOBER 07, 2022

Applies to:

Oracle API Gateway - Version 11.1.1.4.0 to 11.1.1.4.0 [Release 11gR1]
Information in this document applies to any platform.

Goal

In OEG 11.1.1.4, perform the “Find Certificate” step, where the certificate is obtained from the “Certificate Store” and put into the “Certificates” attribute.  While using the “CRL (static)” filter to validate “Certificates”, the circuit fails and an error is logged in OracleEnterpriseGateway.trc file as below:

DEBUG <TIMESTAMP> [<THREAD ID>] run circuit "<POLICY>"...
DEBUG <TIMESTAMP> [<THREAD ID>] run filter [Find Certificate] {
DEBUG <TIMESTAMP> [<THREAD ID>] } = 1, in 0 milliseconds
DATA <TIMESTAMP> [<THREAD ID>] LogManager logging {
DATA <TIMESTAMP> [<THREAD ID>] Logging at Success
DATA <TIMESTAMP> [<THREAD ID>] Calling write log on class com.vordel.log.rolloverfile.TextRollOverLogger
DATA <TIMESTAMP> [<THREAD ID>] Wrote log message of size xxx
DATA <TIMESTAMP> [<THREAD ID>] Calling write log on class com.vordel.log.trace.TraceLogger
DATA <TIMESTAMP> [<THREAD ID>] }
DEBUG <TIMESTAMP> [<THREAD ID>] run filter [CRL (static)] {
DEBUG <TIMESTAMP> [<THREAD ID>] } = 2, in 0 milliseconds
ERROR <TIMESTAMP> [<THREAD ID>] java exception running circuit:
java.lang.ClassCastException: com.vordel.security.openssl.Certificate cannot be cast to java.util.ArrayList
at com.vordel.circuit.cert.CertCRLFileProcessor.invoke(CertCRLFileProcessor.java:52)
at com.vordel.circuit.CircuitInvocation.invokeFilter(CircuitInvocation.java:162)
at com.vordel.circuit.CircuitInvocation.runCircuit(CircuitInvocation.java:123)
at com.vordel.circuit.CircuitInvocation.processMessage(CircuitInvocation.java:264)
at com.vordel.circuit.SyntheticCircuitChainProcessor.invoke(SyntheticCircuitChainProcessor.java:27)
at com.vordel.dwe.http.HTTPPlugin.invokeDispose(HTTPPlugin.java:197
at com.vordel.dwe.http.HTTPPlugin.invoke(HTTPPlugin.java:121)

DEBUG <TIMESTAMP> [<THREAD ID>] add header Content-Type:text/plain
DEBUG <TIMESTAMP> [<THREAD ID>] add header Server:
DEBUG <TIMESTAMP> [<THREAD ID>] send prologue: content length -1
DEBUG <TIMESTAMP> [<THREAD ID>] peer can do chunking
DEBUG <TIMESTAMP> [<THREAD ID>] add header Transfer-Encoding:chunked
DEBUG <TIMESTAMP> [<THREAD ID>] reused connection <CONNECTION ID> 1 times
DEBUG <TIMESTAMP> [<THREAD ID>] connection keepalive? 1
DEBUG <TIMESTAMP> [<THREAD ID>] add header Connection:keep-alive
DEBUG <TIMESTAMP> [<THREAD ID>] add header X-CorrelationID: <CORRELATION ID>
DATA <TIMESTAMP> [<THREAD ID>] snd 0242: <HTTP/1.1 500 Server Error
X-CorrelationID: <CORRELATION ID>
Connection: keep-alive
Transfer-Encoding: chunked
Server:
Content-Type: text/plain

0000001a
error processing request

The CRL (static) filter doesn't work as intended.


Solution

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Goal
Solution


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.