Wednesday, January 27, 2016

Error 503--Service Unavailable when trying to access the EM console

Problem:

If you're running Oracle Fusion Middleware (specifically Oracle SOA Suite 11g), and when navigating to the EM console via this URL:
http://soadev.raastech.com:7001/em
We get this error on the browser:
Error 503--Service Unavailable 
From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1: 
10.5.4 503 Service Unavailable 
The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the delay may be indicated in a Retry-After header. If no Retry-After is given, the client SHOULD handle the response as it would for a 500 response. 
Note: The existence of the 503 status code does not imply that a server must use it when becoming overloaded. Some servers may wish to simply refuse the connection.


Solution:

In this particular case, the file targets.xml was missing.

1. Confirm that targets.xml is missing.
export DOMAIN_HOME=/u01/app/oracle/middleware/user_projects/domains/soa_domain 
ls -l $DOMAIN_HOME/sysman/state/targets.xml

2. If so, recreate the targets.xml file using the following as a template:
<Targets>
 <Target TYPE="oracle_ias_farm" NAME="Farm_soa_domain" DISPLAY_NAME="Farm_soa_domain"> 
  <Property NAME="MachineName" VALUE="soadev.raastech.com"/> 
  <Property NAME="Port" VALUE="7001"/> 
  <Property NAME="isLocal" VALUE="true"/> 
  <Property NAME="Protocol" VALUE="t3"/> 
  <Property NAME="serviceURL" VALUE="service:jmx:t3://soadev.raastech.com:7001/jndi/weblogic.management.mbeanservers.domainruntime"/> 
  <Property NAME="WebLogicHome" VALUE="/u01/app/oracle/middleware/wlserver_10.3"/>
  <Property NAME="DomainHome" VALUE="/u01/app/oracle/middleware/user_projects/domains/soa_domain"/>
 </Target> 
</Targets>

3. Restart the AdminServer


Applicable Versions:
  • Oracle SOA Suite 11g (11.1.1.x)


Friday, January 1, 2016

Oracle SOA Suite development error: 'jca.retry.count' must be a positive number

Problem:

After developing an Oracle SOA Suite 11g composite and attempting to deploy it directly from Oracle JDeveloper 11g, we get the following error in the JDeveloper logs:
[11:24:23 AM] Received HTTP response from the server, response code=500 
[11:24:23 AM] Error deploying archive sca_HealthCheck_rev1.0.jar to partition "default" on server soa_server1 [http://soahost1:8001]  
[11:24:23 AM] HTTP error code returned [500] 
[11:24:23 AM] Error message from server:
There was an error deploying the composite on soa_server1: Update Failed: Error while validating JCA Reference Binding meta data during composite deployment: Exception occured when binding was invoked.
Exception occured during invocation of JCA binding: "Cannot parse JCA binding retry property 'jca.retry.count', value '0' due to: Value of JCA binding retry property 'jca.retry.count' must be a positive number". 
The invoked JCA adapter raised a resource exception.
Please examine the above error message carefully to determine a resolution.
: Exception occured when binding was invoked.
Exception occured during invocation of JCA binding: "Cannot parse JCA binding retry property 'jca.retry.count', value '0' due to: Value of JCA binding retry property 'jca.retry.count' must be a positive number". 
The invoked JCA adapter raised a resource exception.
Please examine the above error message carefully to determine a resolution.
. 
[11:24:23 AM] Check server log for more details. 
[11:24:23 AM] Error deploying archive sca_HealthCheck_rev1.0.jar to partition "default" on server soa_server1 [http://soahost1:8001]  
[11:24:23 AM] ####  Deployment incomplete.  #### 
[11:24:23 AM] Error deploying archive file:/C:/Oracle/mywork/HealthCheck/deploy/sca_HealthCheck_rev1.0.jar 
 (oracle.tip.tools.ide.fabric.deploy.common.SOARemoteDeployer)


Solution:

This error was because value of Attempts in the database adapter configuration wizard was set to zero. This must be a positive (non-zero) number. This value maps directly to jca.retry.count.

1. Set the Attempts or jca.retry.count value in the DbAdapter to a value greater than 0.



Applicable Versions:
  • Oracle SOA Suite 11g (11.1.1.x)