Tuesday, 19 December 2017

SOA Admin - SOA Errors or Exceptions

Infrastructure error—StackOverflowError
StackOverflowError is usually an indication of an infrastructure error, as the error does not appear tied to any specific composite. Based on the logger oracle.soa.bpel.engine.dispatch, it is thrown by the BPEL dispatch engine:
javax.ejb.EJBException: EJB Exception: java.lang.StackOverflowError

Composite instance error—SOAPFaultException
There may be a large number of instances in the infrastructure that receive processing faults from external systems they are interacting with. Here, the Mediator Service Engine (as shown by the oracle.soa.mediator.serviceEngine logger) appears to have thrown a SOAPFaultException, which in itself is not very useful. However, the details of the error are quite clear. This is a business exception thrown by some external service or resource. Though there is no information here to tie it back to a specific composite or instance, the same error, in more detail, can be found in the soa_server1.log file, which will provide you with that information. Rest assured, this exception will also appear in the composite instance fault on the console:
Infrastructure error—DeploymentException
Some infrastructure exceptions are related to the backend components not being available or configured properly. Some of them may be categorized by a warning and not an error, but this is still a problem. Note the following error that appears to be related to a WebLogic JMS Server. In this case, the JMS Server named CustomJMSServer is referencing a persistent file store CustomFileStore that does not exist:

Composite instance error— FabricInvocationException
FabricInvocationException is the most generic error reported by the Oracle SOA Suite 11g SOA Infrastructure. This could be caused by invalid SOAP requests, WS-Addressing issues, or even due to non-accessible endpoints. The following FabricInvocationException error provides a little information about its probable cause. Furthermore the Unable to access the following endpoint(s) explanation is also inadequate and in most cases could be misleading, as it may be related to any number of exceptions.

Infrastructure error—Unable to allocate additional threads
This Unable to allocate additional threads error appears to be quite serious, but it really is not. This is clearly an infrastructure related issue though:

Infrastructure or composite instance error— MDSException
The following exception is due to the fact that at runtime an XSD that was being referred from the MDS was not available:
java.io.IOException: oracle.mds.exception.MDSException: MDS-00054: The file to be loaded oramds:/apps/Fault/Common/XSD/SalesOrderHeader.xsd does not exist.

Infrastructure error—BeanInstantiationException
By now you must know that the engine that is responsible to execute composite instances in your infrastructure is soa-infra, which in itself is a J2EE application. The soa-infra application, in some cases, may fail to load in all the managed servers across a cluster and is partially available due to the following exception:
Instantiation of bean failed; nested exception is org. springframework.beans.BeanInstantiationException: Could not instantiate bean class [oracle.integration.platform.blocks.cluster. CoherenceClusterInterfaceImpl]: Constructor threw exception; nested exception is com.tangosol.net.RequestTimeoutException: Timeout during service start: ServiceInfo(Id=0, Name=Cluster, Type=Cluster

Infrastructure error—Unable to extend LOB segment
Not all errors are directly due to issues within your SOA infrastructure. All running and completed instances in Oracle SOA Suite 11g are saved in a backend datastore. Lack of free space in the database may prevent the composite instances from completing their processing. For instance, you are most likely to see the following exception if your database runs out of disk space:

Internal Exception: java.sql.BatchUpdateException: ORA-01691: unable to extend lob segment DEV_SOAINFRA.SYS_LOB$$ by 128 in tablespace DEV_ SOAINFRA