Search This Blog

SBL-JCA-00200: Could not open a session in {0} attempts. {1}


Applies to:

Siebel Tools - Version 8.1 [21039] and later
Information in this document applies to any platform.
Error Message Area:Integration - JCA
Version:Siebel 8.1
Checked for relavance on 03-SEP-2012


Purpose

This document is intended to provide cause and corrective action information about Siebel Error Message
SBL-JCA-00200: Could not open a session in {0} attempts. {1}
sometimes also seen as
Could not open a session in 4 attempts.

Scope

This document is informational and intended for any user.

Details

Explanation

A connection to the Siebel server could not be established.

Corrective Action

  1. Confirm that the Siebel server is running.
  2. Check the connect string to confirm that the gateway, port and object manager component names are correct.
  3. When using load balancing, use the network name or IP address of the virtual host instead of the gateway.
  4. Review error messages that come with this message. These often help narrowing down the cause.
    Examples:
    • 'Unable to connect to host "localhost" at port "49156".'
    • 'Code Page "UTF-8" is not supported. Use "-encoding" option to change the file encoding. (SBL-JCA-328)'
    • 'Invalid connect string "siebel.TCPIP.none.none://myhost.com:2320/siebent/SCCObjMgr/siebsrvr".(SBL-JCA-00206)'
    • 'java.net.UnknownHostException: <hostname>'
  5. Verify whether the Siebel Object Manager is maxed out with open sessions and thus rejects new connections. (Review the OM log file and the server log files for this purpose.)
  6. Verify that the host is reachable by the client machine. (Use e.g. ping or traceroute commands to verify general network connectivity.)
  7. Verify that the client can connect to the ports mentioned in the error message. Verify firewall settings on the server and on the involved network routers.
  8. To work around network latencies or slow server responses, review the siebel.properties file to adjust specific connection parameters, especially:
    • siebel.conmgr.txtimeout
      Indicates the transaction timeout (in seconds). Defaulted to 2700 = 45m.
    • siebel.conmgr.poolsize
      Indicates the connection pool size. Connection pool maintains a set of connections to a specific server process. Defaulted to 2. Max connection pool size is 500.
    • siebel.conmgr.sesstimeout
      Indicates the transaction timeout (in seconds) on the client side. Defaulted to 600 = 10m.
For related information, please see:
  • See Bookshelf 8.1 > Siebel Object Interfaces Reference > Programming > Getting Started with the Siebel Object Interfaces > About Java Data Bean.
  • Bookshelf 8.1 > Siebel Object Interfaces Reference > Programming > Siebel Object Interface Events and Siebel Extension Events > Connect String
  • Use of Native Load Balancing With Java Data Beans Interface and COM Data Control Interface Document 478270.1



Applies to:

Siebel Email Marketing Server - Version 8.0.0.5 [20420] - DO NOT USE and later
Information in this document applies to any platform.

Symptoms

I understand that you have install  CTD build EMS [2013] on your Solaris environment and after that CTD is not been able to start up.

It gives a message that it is not licensed in ctd.log:

2009-09-11 17:01:13,858 [main] ERROR CtdConfig Failed to initialize, bounce type/reason lic
<Exception>
<Major No.>16</Major No.><Minor No.>8716488</Minor No.><Message>Could not open a session in 6 attempts. {1}(SBL-JCA-00200)</Message><DetailedMessage>Unknown<DetailedMessage>
</Exception>
at com.siebel.data.SiebelDataBean.login(SiebelDataBean.java:224)
at com.siebel.integration.adapter.SiebelJDBAdapterBase.login(SiebelJDBAdapterBase.java:203)
at com.siebel.integration.adapter.SiebelJDBAdapterBase.initialize(SiebelJDBAdapterBase.java:165)
at com.siebel.sem.ctd.CtdConfig.initLic(CtdConfig.java:139)
at com.siebel.sem.ctd.CtdConfig.init(CtdConfig.java:112)
at com.siebel.sem.ctd.AppListener.contextInitialized(AppListener.java:73)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:924)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:887)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2009-09-11 17:01:13,936 [main] WARN AppListener
Error Message: Could not open a session in 6 attempts. {1}(SBL-JCA-00200)
Detailed Message: <com.siebel.om.conmgr.ConMgrException>
<Error><ErrorCode>8716488</ErrorCode> <ErrMsg>Could not open a session in 6 attempts. {1}(SBL-JCA-00200)</ErrMsg></Error>
</com.siebel.om.conmgr.ConMgrException>

You have install CTD EMS[2013] on a Windows box for testing purpose and configured the Windows based CTD to connect to the same Siebel Enterprise Server that is been used by Solaris based CTD. The Windows based CTD works fine.




Cause

We could verify the following message in catalina.out log file when the customer was trying to start CTD on Solaris environment:

INFO: The listener "com.siebel.sem.ctd.AppListener" is already configured for this context. The duplicate definition has been ignored.
<com.siebel.common.common.CSSException>
<Error><ErrorCode>8716616</ErrorCode> <ErrMsg>Code Page "ISO8859-15" is not supported.(SBL-JCA-00328)</ErrMsg></Error>
</com.siebel.common.common.CSSException>
at com.siebel.om.sisnapi.EncMapping.getCodePageValue(EncMapping.java:78)

It was notice that the new EMS 2013 installer is not creating the setenv.sh file in Siebel CTD Root Folder/bin.

The original version EMS 2006 creates the file setenv.sh where it set the code page for the Java Virtual Machine. The error for the EMS 2013 that appears on catalina.out is:

8716616 Code Page "ISO8859-15" is not supported.(SBL-JCA-00328)

So Siebel Server is rejecting the connection because of the code page.

In setenv.sh we set the code page:
JAVA_OPTS="${HOTSPOT_SERVER_SWITCH} ${JVM_MEM_SWITCES} -Dfile.encoding=UTF8 -Dlog4j.debug=true"

But if the setenv.sh is missing it will use the Server default code page that in your case seems to be ISO8859-15 and on my Solaris env seems to be utf8.



Solution

Copy the setenv.sh located at Siebel CTD Root Folder\bin from the previous version for the Siebel CTD Root Folder\bin of the new version (EMS 2013).

If you do not have the setenv.sh file from previous version you can create a setenv.sh file in the Siebel CTD Root Folder\bin with the following content:
"
#!/bin/sh

# $Id: //depot/eng/ctd/main/thirdparty/apache/tomcat/bin/setenv.sh#9 $

# enable 64MB heap
JVM_MEM_SWITCES="-Xms64m -Xmx64m"

# enable hotspot server where hotspot exists
OS=`uname`
if [ ${OS} = "AIX" ] ; then
# jvm on AIX does not accept -server switch
HOTSPOT_SERVER_SWITCH=""
else
# Solaris and HP-UX jvms take -server
HOTSPOT_SERVER_SWITCH="-server"
fi

JAVA_OPTS="${HOTSPOT_SERVER_SWITCH} ${JVM_MEM_SWITCES} -Dfile.encoding=UTF8 -Dlog4j.debug=true"
"

And set the file properties to be executable.

Change Request# 12-1V059BJ to address this problem, when a product defect or enhancement request is logged, it is reviewed, prioritized, and considered for incorporation into a future maintenance or major release.





References

BUG:121059 - ADD REFERENCED OBJECT COLUMN TO PROCEDURE OPTION TO INDICATE IT




Applies to:

Siebel Tools, SPE - Version 7.7.2.12[18393] to 8.2.2 SIA[22320] [Release V7 to V8]
Oracle Solaris on SPARC (64-bit)
Product Release: V7 (Professional)
Version: 7.8.2.3 [19221]
Database: Oracle 9.2.0.4
Application Server OS: Sun Solaris 10
Database Server OS: Sun Solaris 10

This document was previously published as Siebel SR 38-3288173921.

"" Checked for Relevance on 08-MAY-2012 ""

Symptoms

Hi,
When we connect to Siebel using Java data bean we get the following error message.

“Could not open a session in 4 attempts. {1} (SBL-JCA-200)”

We got the following information from Java log file
“<Error><ErrorCode>8211</ErrorCode> <ErrMsg>Code Page "UTF-8" is not supported. Use "-encoding" option to change the file encoding. (SBL-JCA-328) </ErrMsg></Error>

Checked in the My Oracle Support to get some information about this. Found one Document   related to this.

The
Bug 10478101  is with “To be Reviewed” status.
Do we have any fix for this issue? We have to go live within a couple of weeks. Your inputs and suggestion greatly appreciated.

Our Siebel environment is running in UTF-8

We are trying to connect from “Tomcat” to “Sun1 Solaris” environment.

This code works as a standalone java program, also from a jsp page deployed in a tomcat server installed in windows and from a jsp page deployed in a SUN One appserver installed in Solaris OS. But does not work from a jsp page deployed in tomcat server in Linux.

I have attached the script and an excel file which gives the details about the environment and connection status.

Cause

Wrong jar files been used.

Solution

For the benefit of other users:-

Issue: Customer received the the following error message when they connect to Siebel using Java data bean :

“Could not open a session in 4 attempts. {1} (SBL-JCA-200)”

and the following information from Java log file
“<Error><ErrorCode>8211</ErrorCode> <ErrMsg>Code Page "UTF-8" is not supported. Use "-encoding" option to change the file encoding. (SBL-JCA-328) </ErrMsg></Error>


Customer's Siebel environment is running in UTF-8


This code works as a standalone java program, also from a jsp page deployed in a tomcat server installed in windows and from a jsp page deployed in a SUN One appserver installed in Solaris OS. But does not work from a jsp page deployed in tomcat server in Linux.

There is an existing Bug 10478101 "Java data bean does not recognize code page UTF-8, only UTF8 or utf8." currently opened for the Java Data Bean to recognize and allow values different character set aliases. It is confirmed that Siebel is not able to recognize the encoding UTF-8 (or utf-8), that is the reason for the error . Unfortunately we do not have any workaround that we can try at this point of time.

Customer had resolved the issue after copying the latest jar files from the Siebel server.

Thank You,
Siebel | Oracle Technical Support

References

SBL-JCA-328
@ BUG:10478101 - [CR#12-MTNVNU][FR#12-MTNVNU+F] JAVA DATA BEAN DOES NOT RECOGNIZE CODE PAGE UTF-8
NOTE:501196.1 - Location of siebel.properties file for setting file.encoding (Java Data Bean connection)
SBL-JCA-200




Applies to:

Siebel Tools - Version: 8.0.0.2 [20412] and later   [Release: V8 and later ]
Information in this document applies to any platform.
Checked for Relevance on October-17-2011

Symptoms

At random occasions, a Java client cannot connect to the Siebel server through Java Data Bean, or loses the connection during an operation, or gets an error when logging off.
The error messages include:
Socket had incorrect word size: 0.(SBL-JCA-00313)
The network connection has failed.(SBL-JCA-00302)
Could not open a session in 4 attempts. {1}(SBL-JCA-00200)
java.net.SocketException?: Socket is closed

Cause

These error messages occur when the object manager is out of resources and cannot fulfil more connection requests.
Other possible causes are instable network connection, or (in load-balanced environments) improper setup of load-balancing for Java Data Bean clients.

Solution


1. Follow the steps of document
How to Configure Siebel Object Manager (SOM) in Siebel 7.x and 8.0 (Note 476830.1)
to achieve a maximum number of possible user sessions on the Siebel server, depending on the available system resources.

2. If required, use the siebel.properties file to adjust specific connection parameters, especially:
* siebel.conmgr.txtimeout
Indicates the transaction timeout (in seconds). Defaulted to 2700 = 45m.
* siebel.conmgr.poolsize
Indicates the connection pool size. Connection pool maintains a set of connections to a specific server process. Defaulted to 2. Max connection pool size is 500.
* siebel.conmgr.sesstimeout
Indicates the transaction timeout (in seconds) on the client side. Defaulted to 600 = 10m.
For related information, please see See Bookshelf 8.0 > Siebel Object Interfaces Reference > Programming > Getting Started with the Siebel Object Interfaces > Java Data Bean.

3. If the server is load balanced, review (or enable) load balancing for Java Data Bean clients. For details, please refer to:
Bookshelf 8.0 > Siebel Object Interfaces Reference > Programming > Siebel Object Interface Events and Siebel Extension Events > Connect String
and
Use of Native Load Balancing With Java Data Beans Interface and COM Data Control Interface (Note 478270.1)

4. About using Detach() and Attac() methods, please refer to
Attach - Detach methods in Siebel version 7.x and 8.x. (Note 476535.1)
  

No comments:

Post a Comment