JCA 1.0 ConnectionManager

Hi Binod,
I have bounced into a problem regarding jca.
1. I have a implementation of ConnectionRequestInfo that has the properties "type" and "method" (with getters and setters). I have implemented equals and hashCode methods so i can differ to ConnectionRequestInfo from eachother.
2. First i call ConnectionManager.allocateConnection(ManagedConnectionFactory mcf, ConnectionRequestInfo info) from ConnectionFactory(cf) with a info object that has type='manager' method='foo'... It returns a Connection(c1) that has a new ManagedConnection(mc1) associated with it.
3. Directly after, i again use (cf) to get another connection(c2) from ConnectionManager. This time i use a new ConnectionRequestInfo with type='handler' method='bar'.
My question is... how can i get a new ManagedConnection associate with (c2)? When i try this the application server does not call mcf.createManagedConnection (as it did in the first case) and it does not call mcf.matchManagedConnections, it calls mc1.getConnection().. I thought that the application server would try to do matching becuase the ConnectionRequestInfo objects are diffrent and then return a new ManageConnection ??
(I use my own CCI)
regards,
Kristoffer

Hi Kristoffer,
Which appserver are you using? Sun's?
If your ConnectionRequestInfo equals and hashcode are proper, then, appserver should do a createManagedConnection. Appserver might not do a createManagedConnection, if it already have a ManagedConnection in the pool having same connectionRequestInfo.
If appserver doesnt do the above, it seems like a bug to me.
thanks,
Binod.

Similar Messages

  • JCA adapter outbound connection properties values are not populating ..

    Hi ,
    I am struggling to find a solution for this problem.
    My managed connection factory impl has all the properties as per the java bean spec. I have also implemented hashcode and equals but i still don't see the custom outbound custom properties information populated into my ManagedConnectionFactoryImpl properties. I checked property names in both weblogic-ra.xml and ra.xml. The names are consistent.
    As per this discussion (BINDING.JCA-12510 JCA Resource Adapter location error in SOA 11g Suite i saved the properties using Keyboard entered. I restarted my server and also i can see the saved values
    I also verified the Plan.xml that gets created when the values are updated. Please find the provided the code snippets. Any help appreciated.
    Please let me know if i need to post this in a different forum. We use weblogic 10.3.5 application server. Let me know for any more details.
    Thanks,
    Sri
    For more information:
    Following is the managed connection factory Impl
    package com.cgi.cml.common.sample.connector.ra.outbound;
    import java.beans.PropertyChangeListener;
    import java.beans.PropertyChangeSupport;
    import java.io.PrintWriter;
    import java.io.Serializable;
    import java.util.Iterator;
    import java.util.Set;
    import javax.resource.ResourceException;
    import javax.resource.spi.ConnectionManager;
    import javax.resource.spi.ConnectionRequestInfo;
    import javax.resource.spi.ManagedConnection;
    import javax.resource.spi.ManagedConnectionFactory;
    import javax.security.auth.Subject;
    public class SampleManagedConnectionFactoryImpl
         implements ManagedConnectionFactory, Serializable {
    private transient PropertyChangeSupport changes =new PropertyChangeSupport(this);
         private String databaseFileName = "";
    private String database = "";
    private String user = "";
    private String password = "";
    private String dtdPath = "";
    private String protocol = "";
    private String serverAddress = "";
    private Boolean debugMode = false;
         private PrintWriter writer;
         * Constructor for SampleManagedConnectionFactoryImpl
         public SampleManagedConnectionFactoryImpl() {
         * @see ManagedConnectionFactory#createConnectionFactory(ConnectionManager)
         @Override
         public Object createConnectionFactory(ConnectionManager cm)
              throws ResourceException {
              return new MomapiConnectionFactoryImpl(this, cm);
         * @see ManagedConnectionFactory#createConnectionFactory()
         @Override
         public Object createConnectionFactory() throws ResourceException {
              return new MomapiConnectionFactoryImpl(this, null);
         * @see ManagedConnectionFactory#createManagedConnection(Subject, ConnectionRequestInfo)
         @Override
         public ManagedConnection createManagedConnection(
              Subject subject,
              ConnectionRequestInfo cxRequestInfo)
              throws ResourceException {
              System.out.println("createdManaged Connection called");
              return new SampleManagedConnectionImpl(subject,cxRequestInfo);
         * @see ManagedConnectionFactory#matchManagedConnections(Set, Subject, ConnectionRequestInfo)
         @Override
         public ManagedConnection matchManagedConnections(
              Set connectionSet,
              Subject subject,
              ConnectionRequestInfo cxRequestInfo)
              throws ResourceException {
              System.out.println("match managed Connections called---->"+getDatabaseFileName());
              ManagedConnection match = null;
              Iterator iterator = connectionSet.iterator();
              if (iterator.hasNext()) {
                   match = (ManagedConnection) iterator.next();
              return match;
         * @see ManagedConnectionFactory#setLogWriter(PrintWriter)
         @Override
         public void setLogWriter(PrintWriter writer) throws ResourceException {
              this.writer = writer;
         * @see ManagedConnectionFactory#getLogWriter()
         @Override
         public PrintWriter getLogWriter() throws ResourceException {
              return writer;
    * Checks whether this instance is equal to another.
    * @param obj other object
    * @return true if the two instances are equal, false otherwise
         @Override
    public boolean equals(Object obj)
              System.out.println("equals method called");          
    boolean equal = false;
    if (obj != null)
    if (obj instanceof MomapiManagedConnectionFactoryImpl)
         SampleManagedConnectionFactoryImpl other = (SampleManagedConnectionFactoryImpl) obj;
    equal = (this.databaseFileName).equals(other.databaseFileName) &&
    (this.database).equals(other.database) &&
    (this.user).equals(other.user) &&
    (this.password).equals(other.password) &&
    (this.dtdPath).equals(other.dtdPath) &&
    (this.protocol).equals(other.protocol) &&
              (this.serverAddress).equals(other.serverAddress) &&
              (this.debugMode==other.debugMode);
              System.out.println("equals method returning -->"+ equal);
    return equal;
    * Returns the hashCode of the ConnectionRequestInfoImpl.
    * @return the hash code of this instance
    public int hashCode()
    //The rule here is that if two objects have the same Id
    //i.e. they are equal and the .equals method returns true
    // then the .hashCode method must return the same
    // hash code for those two objects      
    int hashcode = new String("").hashCode();
    if (databaseFileName != null)
    hashcode += databaseFileName.hashCode();
    if (database != null)
    hashcode += database.hashCode();
    if (user != null)
    hashcode += user.hashCode();
    if (password != null)
    hashcode += password.hashCode();
    if (dtdPath != null)
    hashcode += dtdPath.hashCode();
    if (protocol != null)
    hashcode += protocol.hashCode();
    if (serverAddress != null)
    hashcode += serverAddress.hashCode();
              System.out.println("hascode method called and the value is -->"+hashcode);
    return hashcode;
    * Associate PropertyChangeListener with the ManagedConnectionFactory,
    * in order to notify about properties changes.
    * @param lis the PropertyChangeListener to be associated with the
    * ManagedConnectionFactory
    public void addPropertyChangeListener(PropertyChangeListener lis)
         System.out.println("addPropertyChangeListener called");
    changes.addPropertyChangeListener(lis);
    * Delete association of PropertyChangeListener with the
    * ManagedConnectionFactory.
    * @param lis the PropertyChangeListener to be removed
    public void removePropertyChangeListener(PropertyChangeListener lis)
         System.out.println("removePropertyChangeListener called");      
    changes.removePropertyChangeListener(lis);
    public String getDatabaseFileName() {
              return databaseFileName;
         public void setDatabaseFileName(String databaseFileName) {
              this.databaseFileName = databaseFileName;
         public String getDatabase() {
              return database;
         public void setDatabase(String database) {
              System.out.println("hellloooooooooooo---->"+database);
              this.database = database;
         public String getUser() {
              return user;
         public void setUser(String user) {
              this.user = user;
         public String getPassword() {
              return password;
         public void setPassword(String password) {
              this.password = password;
         public String getDtdPath() {
              return dtdPath;
         public void setDtdPath(String dtdPath) {
              this.dtdPath = dtdPath;
         public String getProtocol() {
              return protocol;
         public void setProtocol(String protocol) {
              this.protocol = protocol;
         public String getServerAddress() {
              return serverAddress;
         public void setServerAddress(String serverAddress) {
              this.serverAddress = serverAddress;
         public Boolean isDebugMode() {
              return debugMode;
         public void setDebugMode(Boolean debugMode) {
              this.debugMode = debugMode;
         public PrintWriter getWriter() {
              return writer;
         public void setWriter(PrintWriter writer) {
              this.writer = writer;
    weblogic-ra.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <weblogic-connector xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
         xmlns:javaee="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-connector/1.0/weblogic-connector.xsd"
         xmlns="http://xmlns.oracle.com/weblogic/weblogic-connector">
         <jndi-name>jca/sampleRA</jndi-name>
         <enable-access-outside-app>true</enable-access-outside-app>
         <outbound-resource-adapter>
              <connection-definition-group>
                   <connection-factory-interface>javax.resource.cci.ConnectionFactory</connection-factory-interface>
                   <connection-instance>
                        <jndi-name>jca/sampleCon</jndi-name>
    <connection-properties>
    <properties>
    <property>
    <name>databaseFileName</name>
    </property>
    <property>
    <name>database</name>
    </property>
    <property>
    <name>user</name>
    </property>
    <property>
    <name>password</name>
    </property>
    <property>
    <name>dtdPath</name>
    </property>
    <property>
    <name>protocol</name>
    </property>
    <property>
    <name>serverAddress</name>
    </property>
    <property>
    <name>debugMode</name>
    </property>
    </properties>
    </connection-properties>                
                   </connection-instance>
              </connection-definition-group>
         </outbound-resource-adapter>
    </weblogic-connector>
    ra.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <connector xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java/sun.com/xml/ns/j2ee/connector_1_5.xsd" version="1.5">
    <display-name>MomapiConnector</display-name>
    <vendor-name>CGI</vendor-name>
    <eis-type>SAMPLE</eis-type>
    <resourceadapter-version>1.0</resourceadapter-version>
    <license>
    <license-required>false</license-required>
    </license>
    <resourceadapter>
    <resourceadapter-class>com.cgi.cml.common.sample.connector.ra.SampleResourceAdapterImpl</resourceadapter-class>
    <outbound-resourceadapter>
    <connection-definition>
    <managedconnectionfactory-class>com.cgi.cml.common.sample.connector.ra.outbound.SampleManagedConnectionFactoryImpl</managedconnectionfactory-class>
              <config-property>
         <config-property-name>databaseFileName</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         </config-property>
    <config-property>
         <config-property-name>database</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         </config-property>
              <config-property>
         <config-property-name>user</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         </config-property>
              <config-property>
         <config-property-name>password</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         </config-property>
              <config-property>
         <config-property-name>dtdPath</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         </config-property>
              <config-property>
         <config-property-name>protocol</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         </config-property>
              <config-property>
         <config-property-name>serverAddress</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         </config-property>
              <config-property>
         <config-property-name>debugMode</config-property-name>
         <config-property-type>java.lang.Boolean</config-property-type>
         </config-property>
              <connectionfactory-interface>javax.resource.cci.ConnectionFactory</connectionfactory-interface>
    <connectionfactory-impl-class>com.cgi.cml.common.my.connector.ra.outbound.SampleConnectionFactoryImpl</connectionfactory-impl-class>
    <connection-interface>javax.resource.cci.Connection</connection-interface>
    <connection-impl-class>com.cgi.cml.common.sample.connector.ra.outbound.SampleConnectionImpl</connection-impl-class>
    </connection-definition>
    <transaction-support>NoTransaction</transaction-support>
         <reauthentication-support>false</reauthentication-support>
    </outbound-resourceadapter>
    </resourceadapter>
    </connector>
    Edited by: 931395 on May 2, 2012 7:43 AM
    Edited by: 931395 on May 2, 2012 8:15 AM

    Arun,
    I tried, no luck and it is giving me the following error. Once the Plan.xml is created I am usinng "update" button on the console to redeploy the application using Plan.xml. When I take this route it gives me 2 options (1. update this application in place with new deployment plan 2. redploy this application using the following deployment files).
    When I use the second option eventhough there is a change in the Plan.xml nothing happens. If I use the first option then I am getting the following exception. If I put the module-override for application then only the ear is getting deployed.
    Thanks,
    Sridhar
    [BaseFlow] : No UpdateListener found or none of the found UpdateListeners accepts URI
    <May 9, 2012 9:37:47 AM EDT> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1336570667598' for task '10'. Error is: 'weblogic.management.DeploymentException:
    The application SampleApp cannot have the resource META-INF/weblogic-ra.xml updated dynamically. Either:
    1.) The resource does not exist.
    or
    2) The resource cannot be changed dynamically.
    Please ensure the resource uri is correct, and redeploy the entire application for this change to take effect.'
    weblogic.management.DeploymentException:
    The application SampleApp cannot have the resource META-INF/weblogic-ra.xml updated dynamically. Either:
    1.) The resource does not exist.
    or
    2) The resource cannot be changed dynamically.
    Please ensure the resource uri is correct, and redeploy the entire application for this change to take effect.
         at weblogic.application.internal.flow.DeploymentCallbackFlow.addPendingUpdates(DeploymentCallbackFlow.java:375)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.makePendingUpdates(DeploymentCallbackFlow.java:394)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepareUpdate(DeploymentCallbackFlow.java:407)
         at weblogic.application.internal.BaseDeployment$PrepareUpdateStateChange.next(BaseDeployment.java:685)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
         Truncated. see log file for complete stacktrace
    >
    <May 9, 2012 9:37:47 AM EDT> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating update task for application 'SampleApp'.>
    <May 9, 2012 9:37:47 AM EDT> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
    weblogic.management.DeploymentException:
    The application SampleApp cannot have the resource META-INF/weblogic-ra.xml updated dynamically. Either:
    1.) The resource does not exist.
    or
    2) The resource cannot be changed dynamically.
    Please ensure the resource uri is correct, and redeploy the entire application for this change to take effect.
         at weblogic.application.internal.flow.DeploymentCallbackFlow.addPendingUpdates(DeploymentCallbackFlow.java:375)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.makePendingUpdates(DeploymentCallbackFlow.java:394)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepareUpdate(DeploymentCallbackFlow.java:407)
         at weblogic.application.internal.BaseDeployment$PrepareUpdateStateChange.next(BaseDeployment.java:685)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
         Truncated. see log file for complete stacktrace
    >
    <May 9, 2012 9:37:47 AM EDT> <Error> <Console> <BEA-240003> <Console encountered the following error weblogic.management.DeploymentException:
    The application SampleApp cannot have the resource META-INF/weblogic-ra.xml updated dynamically. Either:
    1.) The resource does not exist.
    or
    2) The resource cannot be changed dynamically.
    Please ensure the resource uri is correct, and redeploy the entire application for this change to take effect.
         at weblogic.application.internal.flow.DeploymentCallbackFlow.addPendingUpdates(DeploymentCallbackFlow.java:375)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.makePendingUpdates(DeploymentCallbackFlow.java:394)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepareUpdate(DeploymentCallbackFlow.java:407)
         at weblogic.application.internal.BaseDeployment$PrepareUpdateStateChange.next(BaseDeployment.java:685)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
         at weblogic.application.internal.BaseDeployment.prepareUpdate(BaseDeployment.java:439)
         at weblogic.application.internal.EarDeployment.prepareUpdate(EarDeployment.java:58)
         at weblogic.application.internal.DeploymentStateChecker.prepareUpdate(DeploymentStateChecker.java:220)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepareUpdate(AppContainerInvoker.java:149)
         at weblogic.deploy.internal.targetserver.operations.DynamicUpdateOperation.doPrepare(DynamicUpdateOperation.java:130)
         at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:217)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:747)
         at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1216)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:250)
         at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:159)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:171)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:13)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:46)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    >

  • JCA connection issue

    Hello,
    I wrote the SAP example for JCA connection, the problem is that I have an exception on this point:
    try {
    <b>client = cgService.getConnection(system_alias, prop);</b>
    } catch (Exception e) {
    app.putValue(
    "error",
    <b>"Couldn't establish a connection with a target system " + system_alias + ".");</b>
    return;
    The error from the log file is:
    <i>There was a problem getting the timestamp of the node: events with internal id: 4294967579
    [EXCEPTION]
    #1#com.sap.engine.services.dbpool.exceptions.BaseSQLException: ResourceException in method ConnectionFactoryImpl.getConnection(): com.sap.engine.services.connector.exceptions.BaseResourceException: "ConnectionManager" is closed. Possible reasons: 1) <u>connector "SAPJ2EDB" is stopped or not started, 2) Connector service is stopped or has not been started.</u></i>
    The problem seems to be on the cgService.getConnection, probabily on the Connector Gateway Service. I will appreciate any suggestion about this, could be a server configuration problem?
    Thanks in advance,
    Vipa

    Here attached my code (SAP standard example):
    package jca;
    Portal related API
    import com.sapportals.portal.prt.component.AbstractPortalComponent;
    import com.sapportals.portal.prt.component.IPortalComponentRequest;
    import com.sapportals.portal.prt.component.IPortalComponentResponse;
    import com.sapportals.portal.prt.component.IPortalComponentProfile;
    import com.sapportals.portal.prt.event.IPortalRequestEvent;
    import com.sapportals.portal.prt.resource.IResource;
    import com.sap.security.api.IPrincipal;
    J2SE API
    import java.util.Hashtable;
    import java.util.Enumeration;
    Standard JNDI API
    import javax.naming.Context;
    import javax.naming.NamingException;
    import javax.naming.NamingEnumeration;
    import javax.naming.NameClassPair;
    Portal Generic Layer api
    jar file location:
    <j2ee engine>\cluster\server\services\servlet_jsp\work\
    jspTemp\irj\root\WEB-INF\portal\portalapps\com.sap.portal.
    pcd.glservice\lib\com.sap.portal.pcd.glserviceapi.jar
    import com.sapportals.portal.pcd.gl.IPcdContext;
    import com.sapportals.portal.pcd.gl.IPcdAttributes;
    import com.sapportals.portal.pcd.gl.IPcdAttribute;
    Portal JNDI support
    jar file location:
    <j2ee engine>/cluster/server/services/servlet_jsp/work/
    jspTemp/irj/root/WEB-INF/lib/prtjndisupport.jar
    import com.sapportals.portal.prt.jndisupport.InitialContext;
    System Landscape service API
    jar file location:
    <j2ee engine>/cluster/server/services/servlet_jsp/work/
    jspTemp/irj/root/WEB-INF/portal/portalapps/com.sap.portal.
    ivs.systemlandscapeservice/lib/
    com.sap.portal.ivs.systemlandscapeserviceapi.jar
    import com.sapportals.iviewserver.systemlandscape.service.ISystemLandscapeService;
    import com.sapportals.iviewserver.systemlandscape.service.IDesigntimeSystemLandscapeService;
    import com.sap.portal.pcm.system.ISystems;
    import com.sap.portal.pcm.system.ISystem;
    Connector service API
    jar file location:
    <j2ee engine>/cluster/server/services/servlet_jsp/work/
    jspTemp/irj/root/WEB-INF/portal/portalapps/com.sap.portal.
    ivs.connectorservice/lib/com.sap.portal.ivs.connectorserviceapi.jar
    import com.sapportals.portal.ivs.cg.IConnectorService;
    import com.sapportals.portal.ivs.cg.IConnectorGatewayService;
    import com.sapportals.portal.ivs.cg.ConnectionProperties;
    javax.resource.cci
    jar file location:
    <j2ee engine>/cluster/server/additional-lib/connector.jar
    import javax.resource.cci.MappedRecord;
    import javax.resource.cci.RecordFactory;
    Connector Framework
    jar file location: 
    <j2ee engine>/cluster/server/additional-lib/com/sapportals/
    connectorframework/framework/GenericConnector.jar
    import com.sapportals.connector.ConnectorException;
    // connection
    import com.sapportals.connector.connection.IConnection;
    import com.sapportals.connector.connection.IConnectionFactory;
    // execution.functions
    import com.sapportals.connector.execution.functions.IInteraction;
    import com.sapportals.connector.execution.functions.IInteractionSpec;
    // metadata.functions
    import com.sapportals.connector.metadata.functions.IFunction;
    import com.sapportals.connector.metadata.functions.IFunctionsMetaData;
    // execution.structures
    import com.sapportals.connector.execution.structures.IRecord;
    import com.sapportals.connector.execution.structures.IStructureFactory;
    import com.sapportals.connector.execution.structures.IRecordSet;
    public class SampleComponent extends AbstractPortalComponent {
    Generic Layer service
      IPcdContext pcdContext;
    Data Container
      IPortalComponentProfile app;
    Refresh "systems" variable which contains a list of R3 system object.
    This object is shown in the pulldown list on JSP.
      public void doContent(IPortalComponentRequest request, IPortalComponentResponse response) {
         System.out.println("doContent()");
         app = request.getComponentContext().getProfile();
         try {
           // Get the initial context from JNDI@PRT
           pcdContext = getPcdContext(request);
           // Get a list of R/3 system object aliases
           Hashtable systems = getR3Systems(request);
           System.out.println("systems = " + systems);
           app.putValue("systems", systems);
         } catch (Exception e) {
           System.out.println("Caught an exception: \n" + e);
         IResource jsp = request.getResource(IResource.JSP, "pagelet/index.jsp");
         response.include(request, jsp);
    Trigger a Remote Function Module via CCI...
      public void doJca(IPortalComponentRequest request, IPortalRequestEvent event) {
         System.out.println("doJca()");
         Context ctx = null;
         IConnectionFactory connectionFactory = null;
         IConnection client = null;
              ConnectionProperties prop = null;
         String rfm_name = "BAPI_COMPANYCODE_GETLIST";
         String system_alias = request.getParameter("system");
         if (system_alias == null) {
                   app.putValue(
                        "error",
                        "1.Couldn't establish a connection with a target system " + system_alias + ".");
                   return;   
         System.out.println("system_alias = " + system_alias);
         app.putValue("error", "");
         app.putValue("exportParams", "");
         app.putValue("system_alias", system_alias);
         try {
           // Obtain the initial JNDI context
           //   ctx = new InitialContext();
           // Perform JNDI lookup to obtain connection factory
           //   connectionFactory = (IConnectionFactory) ctx.lookup("EISConnections/SAPFactory");
           //   IConnectionSpec spec = connectionFactory.getConnectionSpec();
           //   ((Map) spec).put("client", "100");
           //      ((Map) spec).put("UserName", "");
           //      ((Map) spec).put("Password", "");
           //      ((Map) spec).put("logonmethod", "UIDPW");
           //      ((Map) spec).put("Language", "EN");
           //      ((Map) spec).put("ashost", "");
           //      ((Map) spec).put("sysnr", "01");
           //      IConnection client = connectionFactory.getConnectionEx(spec);
           IConnectorGatewayService cgService =
              (IConnectorGatewayService) request.getService(IConnectorService.KEY);
           try {
                        prop = new ConnectionProperties(request.getLocale(), request.getUser());
           } catch (Exception e) {
                        app.putValue(
                             "error",
                             "2.Couldn't establish a connection with the user " + request.getUser() + ".");
                        return;     
           try {
                        client = cgService.getConnection(system_alias, prop);
           } catch (Exception e) {
                        app.putValue(
                             "error",
                             "3.Couldn't establish a connection with a target system " + system_alias + ".");
                        return;
    Start Interaction
           IInteraction interaction = client.createInteractionEx();
           System.out.println("Starting Interaction...");
           IInteractionSpec interactionSpec = interaction.getInteractionSpec();
           interactionSpec.setPropertyValue("Name", rfm_name);
    CCI api only has one datatype: Record
           RecordFactory recordFactory = interaction.getRecordFactory();
           MappedRecord importParams = recordFactory.createMappedRecord("CONTAINER_OF_IMPORT_PARAMS");
           IFunctionsMetaData functionsMetaData = client.getFunctionsMetaData();
           IFunction function = functionsMetaData.getFunction(rfm_name);
           if (function == null) {
              app.putValue(
                "error",
                "Couldn't find " + rfm_name + " in a target system " + system_alias + ".");
              return;
    How to invoke Function modules
           System.out.println("Invoking... " + function.getName());
           MappedRecord exportParams = (MappedRecord) interaction.execute(interactionSpec, importParams);
           app.putValue("exportParams", exportParams);
    How to get structure values
           IRecord exportStructure = (IRecord) exportParams.get("RETURN");
           String columnOne = exportStructure.getString("TYPE");
           String columnTwo = exportStructure.getString("CODE");
           String columnThree = exportStructure.getString("MESSAGE");
           System.out.println("  RETURN-TYPE    = " + columnOne);
           System.out.println("  RETURN-CODE    = " + columnTwo);
           System.out.println("  RETURN-MESSAGE =" + columnThree);
    How to get table values
           IRecordSet exportTable = (IRecordSet) exportParams.get("COMPANYCODE_LIST");
           exportTable.beforeFirst(); // Moves the cursor before the first row.
           while (exportTable.next()) {
              String column_1 = exportTable.getString("COMP_CODE");
              String column_2 = exportTable.getString("COMP_NAME");
              System.out.println("  COMPANYCODE_LIST-COMP_CODE = " + column_1);
              System.out.println("  COMPANYCODE_LIST-COMP_NAME = " + column_2);
    Closing the connection
           client.close();
         } catch (ConnectorException e) {
           //app.putValue("error", e);
           System.out.println("Caught an exception: \n" + e);
         } catch (Exception e) {
           System.out.println("Caught an exception: \n" + e);
      private IPcdContext getPcdContext(IPortalComponentRequest request) {
         //    System.out.println("getPcdContext()");
         IPcdContext pcdContext = null;
         try {
           Hashtable env = new Hashtable();
           env.put(
              IPcdContext.INITIAL_CONTEXT_FACTORY,
              "com.sapportals.portal.pcd.gl.PcdInitialContextFactory");
           env.put(IPcdContext.SECURITY_PRINCIPAL, request.getUser());
           pcdContext = (IPcdContext) new InitialContext(env).lookup("");
         } catch (Exception e) {
           System.out.println("Caught an exception: \n" + e);
         return pcdContext;
      private Hashtable getR3Systems(IPortalComponentRequest request) {
         //    System.out.println("getR3Systems()");
         Hashtable systems = new Hashtable();
         try {
           // get a list of R/3 system aliases
           ISystemLandscapeService landscapeService =
              (ISystemLandscapeService) request.getService(ISystemLandscapeService.KEY);
           IDesigntimeSystemLandscapeService landscape =
              landscapeService.getIDesigntimeSystemLandscapeService();
           NamingEnumeration enum = landscape.getAliasesNames(request.getUser());
           while (enum.hasMore()) {
              NameClassPair ncp = (NameClassPair) enum.next();
              String path = landscape.getAliasTarget(ncp.getName(), request.getUser());
              path = path.substring(4);
              IPcdAttributes attrs = (IPcdAttributes) pcdContext.getAttributes(path);
              if (attrs.get("SystemType") == null) {
                continue;
              String system_type = (String) attrs.get("SystemType").get();
              if (system_type.equals("SAP_R3")) {
                systems.put(ncp.getName(), ncp.getName());
         } catch (Exception e) {
           System.out.println("Caught an exception: \n" + e);
         return systems;

  • Local transaction support when BPEL invokes JCA adapter

    Hi all,
    I've implemented a BPEL process consisting of multiple invoke activities to my (custom) JCA Resource Adapter which connects to an EIS.
    My concern is to support local transactions. Here are some code snippets describing what I've done so far.
    Declare the transaction support at deployment time (ra.xml)
    <transaction-support>LocalTransaction</transaction-support>Implementer class of ManagedConnection interface
    public class MyManagedConnection implements ManagedConnection {
         public XAResource getXAResource() throws ResourceException {
             throw new NotSupportedException("XA Transactions not supported");
         public LocalTransaction getLocalTransaction() throws ResourceException {
             return new MyLocalTransaction(this);
            public void sendTheEvent(int eventType, Object connectionHandle) {
                 ConnectionEvent event = new ConnectionEvent(this, eventType);
                 if (connectionHandle != null) {
                    event.setConnectionHandle(connectionHandle);
                ConnectionEventListener listener = getEventListener();
             switch (eventType) {
              case ConnectionEvent.CONNECTION_CLOSED:
                   listener.connectionClosed(event); break;
              case ConnectionEvent.LOCAL_TRANSACTION_STARTED:
                   listener.localTransactionStarted(event); break;
              case ConnectionEvent.LOCAL_TRANSACTION_COMMITTED:
                   listener.localTransactionCommitted(event); break;
              case ConnectionEvent.LOCAL_TRANSACTION_ROLLEDBACK:
                   listener.localTransactionRolledback(event); break;
              case ConnectionEvent.CONNECTION_ERROR_OCCURRED:
                   listener.connectionErrorOccurred(event); break;
              default: break;
    }Implementer class of LocalTransaction interface
    public class MyLocalTransaction implements javax.resource.spi.LocalTransaction {
         private MyManagedConnection mc = null;
         public MyLocalTransaction(MyManagedConnection mc) {
             this.mc = mc;
         @Overide
         public void begin() throws ResourceException {
             mc.sendTheEvent(ConnectionEvent.LOCAL_TRANSACTION_STARTED, mc);
         @Override
         public void commit() throws ResourceException {
             eis.commit(); //eis specific method
             mc.sendTheEvent(ConnectionEvent.LOCAL_TRANSACTION_COMMITTED, mc);
         @Override
         public void rollback() throws ResourceException {
             eis.rollback(); //eis specific method
             mc.sendTheEvent(ConnectionEvent.LOCAL_TRANSACTION_ROLLEDBACK, mc);
    }Uppon BPEL process completion, MyLocalTransaction.commit() is called. However, localTransactionCommitted(event) fails and I get the following error:
    Error committing transaction:; nested exception is: weblogic.transaction.nonxa.NonXAException: java.lang.IllegalStateException:
    [Connector:199175]This ManagedConnection is managed by container for its transactional behavior and has been enlisted to JTA transaction by container;
    application/adapter must not call the local transaction begin/commit/rollback API. Reject event LOCAL_TRANSACTION_COMMITTED from adapter.Could someone give me some directions to proceed ?
    My current installation consists of:
    1. Oracle SOA Suite / JDeveoper 11g (11.1.1.4.0),
    2. WebLogic Server 10.3.4
    Thank you for your time,
    George

    Hi Vlad, thank you again for your immediate response.
    With regards to your first comment. I already have been using logs, so I confirm that neither javax.resource.spi.LocalTransaction#begin() nor javax.resource.spi.LocalTransaction#commit()
    is called in the 2nd run.
    I think it might be helpful for our discussion if I give you the call trace for a successful (the first one) run.
    After I deploy my custom JCA Resource Adapter, I create a javax.resource.cci.ConnectionFactory through Oracle EM web application and the following methods are called:
    -- MyManagedConnectionFactory()
    (Constructor of the implementer class of the javax.resource.spi.ManagedConnectionFactory interface)
    -- javax.resource.spi.ManagedConnectionFactory#createManagedConnection(javax.security.auth.Subject, javax.resource.spi.ConnectionRequestInfo)
    -- MyManagedConnection()
    (Constructor of the implementer class of the javax.resource.spi.ManagedConnection interface)
    -- javax.resource.spi.ManagedConnection#addConnectionEventListener(javax.resource.spi.ConnectionEventListener)
    -- javax.resource.spi.ManagedConnection#getLocalTransaction()
    -- MySpiLocalTransaction(MyManagedConnection)
    (Constructor of the implementer class of the javax.resource.spi.LocalTransaction interface)
    -- javax.resource.spi.ManagedConnectionFactory#createConnectionFactory(javax.resource.spi.ConnectionManager)
    -- MyConnectionFactory(javax.resource.spi.ManagedConnectionFactory, javax.resource.spi.ConnectionManager)
    (Constructor of the implementer class of the javax.resource.cci.ConnectionFactory interface)BPEL process consists of multiple invoke activities to my (custom) JCA Resource Adapter which connects to an EIS. Client tester invokes BPEL process, and execution starts.
    Here is the method call trace for the last invoke (after which, commit is executed). The logs for all the rest invocations are identical:
    -- javax.resource.cci.ConnectionFactory#getConnection()
    -- javax.resource.spi.ManagedConnection#getConnection(javax.security.auth.Subject, javax.resource.spi.ConnectionRequestInfo)
    -- MyConnection(MyManagedConnection)
    (Constructor of the implementer class of the javax.resource.cci.Connection interface)
    -- javax.resource.cci.Connection#close()
    (I don't understand why close() is called here, any idea ?)
    -- javax.resource.cci.ConnectionFactory#getConnection()
    -- javax.resource.spi.ManagedConnection#getConnection(javax.security.auth.Subject, javax.resource.spi.ConnectionRequestInfo)
    -- MyConnection(MyManagedConnection)
    (Constructor of the implementer class of the javax.resource.cci.Connection interface)
    -- javax.resource.cci.Connection#createInteraction()
    -- MyInteraction(javax.resource.cci.Connection)
    (Constructor of the implementer class of the javax.resource.cci.Interaction interface)
    -- javax.resource.cci.Interaction#execute(javax.resource.cci.InteractionSpec, javax.resource.cci.Record, javax.resource.cci.Record)
    -- javax.resource.spi.LocalTransaction#commit()I would expect that after the last commit() - meaning that BPEL process is done, and its state is "Completed" - Weblogic server would call the following:
    javax.resource.cci.Connection#close()However it doesn't. Do I miss something ?

  • Creating an application server stub until the JCA is fully implemented

    Greetings,
              We have pretty much decided that the Java Connector Architecture is the
              way to go, when it comes down to integrating with EIS systems.
              However, the problem still remains that the JCA spec is not fully
              supported in the current beta release of the Connector implementation
              within WLS 6.0. In particular,
              I see that only non-transaction Resource Adapters can be deployed in
              this release (local transaction and XA transaction ones will have to
              wait until the full release in the summer).
              However, what our group wants to do is write XA-compliant Resource
              Adapters, even ahead of the actual support for them in the product. The
              issue for us is how to structyure our implementation so that we end up
              with a minimal re-write when the full implementation of the spec
              arrives.
              It seems to me that if I wanted to have support for XA-compliant
              Resource Adapters NOW, I would have to actually write some of the code,
              that would otherwise be part of the application server/container,
              myself. In particular, it is the code that "enlists" the XAResource
              object, which is associated with the ManagedConnection that an
              application bean asks for, with the Transaction Manager that is later
              going to coordinate things in the global XA transaction.
              Let me describe how I see things:
              when the application component calls into the Resource Adapter for a
              connection handle, the ConnectionFactory class according to the spec)
              delegates the call to the application server ConnectionManager (that it
              has been initialised with, typically at creation time), which in turn
              calls the createManagedConnection method of the ManagedConnectionFactory
              class inside the Resource Adapter.
              Now, I want to emulate the application server so that the
              ConnectionManager class is in fact implemented in my Resource Adapter.
              That I guess will not be a problem. However, the next thing IS (in the
              current BETA release): the application server code would normally
              retrieve the XAResource instance that is "hanging" off the
              ManagedConnection that has just been created and would "enlist" this
              with the Transaction Manager. Thereafter, everything would follow the
              normal XA transaction route, as the Transaction Manager would start
              calling back into the XAResource, notifying it on the status of the
              global XA transaction (start, end, prepare, commit, abort).
              Looking at the JTA specification, an in particular at what the
              application server code has to do, I see the following set of
              interactions:
              TransactionalResource res = ResourceFactory.getTransactionalResource();
              XAResource xaRes = res.getXAResource();
              (TransactionManager.getTransaction()).enlistResource(xaRes);
              <<<<<<<<<------------ how do/can I, in
              application code, within the Resource Adapter in fact, get hold of the
              TransactionManager instance? This is trivial when it is implemented
              within the app server code, but could I also do this?
              This will obviously be an interim solution for us: we will implement a
              very small part of the appliction server logic (you could call it a
              stub) around the registration of the XA resource with the global
              transaction manager. The aim is really to write something that will
              appear to our application beans as well as to the rest of the Resource
              Adapter as something that is behaving in the same way as the application
              server would (in the full implementation of the JCA spec), and would
              also ensure that neither our application component code nor our Adapter
              code would not have to be dramatically changed when that app server
              piece of the JCA-specified system contract implementation is in place.
              I realise that the APIs to the Transaction Manager implementation within
              WLS are "private" and that people may not want us to be using them. But
              it is the only way that I see for us to create something (Resource
              Adapters) which are a)XA compliant and b) will only have to change
              minimally, if at all, when the actual implementation is in place.
              I would appreciate any thoughts from BEA folks out there. Also, if you
              see another way of solving my problem (support global XA transaction
              within my Resource Adapters, AND minimal re-write) that I may be
              missing, I would appreciate your feeback around that.
              Many thanks in advance
              Kostas
              Kostas Karagianidis
              Technical Consultant
              PricewaterhouseCoopers
              Delta 602, Delta Business Park
              Swindon SN5 7XJ, Wiltshire
              United Kingdom
              Tel: +44 1793 536291
              Fax: +44 1793 529641
              Mobile: +44 7768 083452
              e-mail: [email protected]
              The information transmitted is intended only for the person or
              entity to which it is addressed and may contain confidential and/or
              privileged material. Any review, retransmission, dissemination or other
              use of, or taking of any action in reliance upon, this information by
              persons or entities other than the intended recipient is prohibited.
              If you received this in error, please contact the sender and delete the
              material from any computer.
              

    Did you sign your jar file for JWS? I don't think the security manager will allow a filebrowser if the jar is not signed.
    Edited by: Plee on Dec 29, 2008 6:54 AM

  • Problem while creating JCA connection to MDM server

    Hi All,
    I have restarted my mdm connector(com.sap.mdm.tech.connector) along with the applications related to Enrichment Controller. All applications restarted successfully. After that I tried accessing the URL
    http://MDMSERVER:50000/MDM_EnrichmentController/WorkflowPolling?process=Monitor
    but I am getting following exception in this page
    Polling Repository
        name=Vijaybabu_Repo_on_MDMSERVER, status=No repository connection, error description=com.sap.mdm.net.ConnectionException: Problem while creating JCA connection to MDM server MDMSERVER
            Enrichment Request Threads
    Could somebody help me pointing if something I have missed..
    Thanks and Regards,
    Manoj

    hi Swarna,
    I have verified the repository and found 0 fatal errors, 0 non-fatal erros and 0 warnings. I also checked the MDM Factory and Connector service is running fine.
    The detailed exception is
    Sep 2, 2008 12:49:40 PM com.sap.mdm.logging.MdmLogger error
    SEVERE: Problem while creating JCA connection to MDM server 'KOLAPON'
    com.sap.mdm.net.ConnectionException: Can not resolve JCA connection
         at com.sap.mdm.internal.session.JcaConnectionUtil.getJcaConnection(JcaConnectionUtil.java:119)
         at com.sap.mdm.internal.session.JcaConnectionUtil.getJcaConnectionAccessor(JcaConnectionUtil.java:62)
         at com.sap.mdm.internal.session.JcaConnectionAccessor.reserveConnection(JcaConnectionAccessor.java:70)
         at com.sap.mdm.internal.session.JcaConnectionAccessor.reserveConnection(JcaConnectionAccessor.java:59)
         at com.sap.mdm.repository.commands.GetRepositoryStatusCommand.execute(GetRepositoryStatusCommand.java:67)
         at com.sap.mdm.enrichment.common.ECAdminUtils.getRepositoryStatus(ECAdminUtils.java:125)
         at com.sap.mdm.enrichment.common.EnrichmentUtils.validateRepostiryConfiguration(EnrichmentUtils.java:889)
         at com.sap.mdm.enrichment.common.EnrichmentUtils.getCatalogManager(EnrichmentUtils.java:144)
         at com.sap.mdm.enrichment.workflowpolling.PollingThread.getCatalogManager(PollingThread.java:166)
         at com.sap.mdm.enrichment.workflowpolling.PollingThread.run(PollingThread.java:102)
    Caused by: com.sapportals.connector.connection.ConnectionFailedException: Connection Failed: "ConnectionManager" is closed. Possible reasons: 1) connector "MDM Factory" is stopped or not started, 2) Connector service is stopped or has not been started.
         at com.sap.mdm.connector.connection.MdmConnectionFactory.getConnectionEx(MdmConnectionFactory.java:223)
         at com.sap.mdm.internal.session.JcaConnectionUtil.getJcaConnection(JcaConnectionUtil.java:108)
         ... 9 more
    Caused by: com.sap.engine.services.connector.exceptions.BaseResourceException: "ConnectionManager" is closed. Possible reasons: 1) connector "MDM Factory" is stopped or not started, 2) Connector service is stopped or has not been started.
         at com.sap.engine.services.connector.jca.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:122)
         at com.sap.mdm.connector.connection.MdmConnectionFactory.getConnectionEx(MdmConnectionFactory.java:213)
         ... 10 more
    Regards,
    Manoj
    Edited by: Manoj Kumar Nanda on Sep 2, 2008 9:21 AM

  • Problem with Berkeley DB JE using JCA

    Hello, dear developers of JE
    I have implemented Lucene Indexing on Berkeley DB JE. And I'm using the JBoss as application server. Accessing the Breekely DB using JCA.
    The problem arises when i'm calling the Environment.close(). It's displaying following error message.
    12:01:39,712 WARN [JBossManagedConnectionPool] Exception destroying ManagedConnection org.jboss.resource.connectionmanager.TxCo
    javax.resource.ResourceException: com.sleepycat.je.DatabaseException: Attempt to use non-open Environment object().
    at com.sleepycat.je.jca.ra.JEManagedConnection.destroy(JEManagedConnection.java:190)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.doDestroy(InternalManagedConnectionPool.java:550)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:1
    at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.jav
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:410)
    at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:342)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:462)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionM
    at com.sleepycat.je.jca.ra.JEConnectionFactoryImpl.getConnection(JEConnectionFactoryImpl.java:56)
    at com.sleepycat.je.jca.ra.JEConnectionFactoryImpl.getConnection(JEConnectionFactoryImpl.java:43)
    IT WOULD BE HIGHLY APPRECIATED IF EXPLANIN ME THE REASON
    Thanks,
    Katta

    Hi Charles ,
    I have implemented Transaction.setLockTimeout() and increased the lock timeout value to 500000.
    But getting the same exception.
    19:06:05,846 INFO [STDOUT] com.sleepycat.je.DatabaseException: Lock expired. Locker 14_http-0.0.0.0-8080-2_Txn: waited for lock on database=__index__ node=434 type=READ grant=WAIT_NEW timeoutMillis=50 startTime=1156167365784 endTime=1156167365846
    Owners: [<LockInfo locker="13_RMI TCP Connection(2)-192.168.10.60_Txn" type="WRITE"/>].
    Waiters: []
    The lucene index update process may take approximately 40 to 50 minutes.
    Please go through the following code what i written.
    public class BerkelyDBConfig
    private static Logger logger = Logger.getLogger(BerkelyDBConfig.class);
    private static final String JE_ENV_HOME = "D://berkeley//index";
    protected static JEConnection jeConnection = null;
    protected static Environment env = null;
    protected static Transaction txn=null;
    * @param dbEnvHome
    * @return directory [Directory]
    * @throws DatabaseException
    * @throws JEException
    public static Directory getDirectory() throws DatabaseException, JEException
    Directory directory = null;
    Database index, blocks;
    try
    jeConnection = getConnection();
    env = jeConnection.getEnvironment();
    DatabaseConfig dbConfig = new DatabaseConfig();
    dbConfig.setAllowCreate(true);
    dbConfig.setTransactional(true);
    * Use JEConnection.openDatabase() to obtain a cached Database
    * handle. Do not call close() on Database handles obtained
    * using this method.
    index = jeConnection.openDatabase("__index__", dbConfig);
    blocks = jeConnection.openDatabase("__blocks__", dbConfig);
    txn = env.getThreadTransaction();
    txn.setLockTimeout(50000);
    directory = new JEDirectory(txn, index, blocks);
    } catch (NamingException e)
    logger.error("Caught NamingException and message is::"+ e.getMessage());
    throw new DatabaseException(e);
    } catch (ResourceException e)
    logger.error("Caught ResourceException and message is::"+ e.getMessage());
    throw new DatabaseException(e);
    } finally
    env.cleanLog(); // Clean the log before closing
    if (jeConnection != null)
    jeConnection.close();
    return directory;
    * @return dc [JEConnection]
    * @throws NamingException
    * @throws JEException
    public static JEConnection getConnection()
    throws NamingException, JEException
    EnvironmentConfig envConfig = new EnvironmentConfig();
    envConfig.setAllowCreate(true);
    envConfig.setTransactional(true);
    //envConfig.setLockTimeout(50000000);
    envConfig.setConfigParam("je.cleaner.expunge", "true");
    InitialContext iniCtx = new InitialContext();
    Context enc = (Context) iniCtx.lookup("java:comp/env");
    Object ref = enc.lookup("ra/JEConnectionFactory");
    JEConnectionFactory dcf = (JEConnectionFactory) ref;
    JEConnection dc = dcf.getConnection(JE_ENV_HOME, envConfig);
    return dc;
    * @return searcher [Searcher]
    * @throws DatabaseException
    public static IndexSearcher getSearcher() throws DatabaseException
    if (logger.isInfoEnabled())
    logger.info("Entered getSearcher() of BerkelyDBUtil");
    IndexSearcher searcher;
    try
    searcher = new IndexSearcher(getDirectory());
    } catch (JEException e)
    logger
    .error("Caught JEException and message is::"
    + e.getMessage());
    throw new DatabaseException(e.getMessage());
    } catch (IOException e)
    logger
    .error("Caught IOException and message is::"
    + e.getMessage());
    throw new DatabaseException(e.getMessage());
    if (logger.isInfoEnabled())
    logger.info("Leaving getSearcher() of BerkelyDBUtil");
    return searcher;
    Below is the Lucene update indexing program:
    public class UpdateLuceneIndexCommand extends BaseCommand
    * Logger object to log the details
    private static Logger logger = Logger
    .getLogger(UpdateLuceneIndexCommand.class);
    private static Directory indexDir =null;
    * (non-Javadoc)
    * @see com.tka.command.BaseCommand#validateRequest(com.tka.request.Request)
    protected void validateRequest(Request request)
    // TODO Auto-generated method stub
    * (non-Javadoc)
    * @see com.tka.command.BaseCommand#executeRequest(com.tka.request.Request)
    protected Response executeRequest(Request request) throws CommandException
    if (logger.isInfoEnabled())
    logger
    .info("Entered executeRequest() method of updateSearchIndexCommand");
    try
    // Get the index directory obj from BerkelyDBConfig
    indexDir = BerkelyDBConfig.getDirectory();
    System.out.println("INDEXING INFO: Start Indexing updated content.");
    // call the updateLuceneIndex method
    updateLuceneIndex();
    System.out.println("INDEXING INFO: Optimizing Index finished......");
    } catch (Exception e)
    e.printStackTrace();
    logger.error("INDEXING ERROR: Unable to index new content " + e.getMessage());
    throw new CommandException(e.getMessage());
    if (logger.isInfoEnabled())
    logger
    .info("Leaving executeRequest() method of updateSearchIndexCommand");
    return buildIndexResponse;
    * @param indexWriter
    * @throws IOException
    private void updateLuceneIndex() throws IOException
    if (logger.isInfoEnabled())
    logger
    .info("Entered updateLuceneIndex() method of updateSearchIndexCommand");
    IndexWriter indexWriter = new IndexWriter(indexDir,new StandardAnalyzer(), false);
    indexWriter.setUseCompoundFile(false);
    // here is the code to update index
    indexWriter.optimize();
    indexWriter.close();
    if (logger.isInfoEnabled())
    logger
    .info("Leaving updateLuceneIndex() method of updateSearchIndexCommand");
    Thanks,
    Katta.
    Message was edited by:
    user524075

  • Error Siebel provisioning (SBL-JCA-00328) on Solaris

    Dear all,
    I'm using default connector to provisioning user.
    I'm using Jboss as application server.
    When i tried in Windows, it worked.
    But when i try in Solaris 10, i found this error below on log :
    +2010-02-23 17:42:57,265 INFO [XL_INTG.SIEBEL] UserType***************Employee+
    +2010-02-23 17:42:57,265 INFO [XL_INTG.SIEBEL] SIEBEL Create Connection Request::::::::::::::+
    +2010-02-23 17:42:57,265 INFO [XL_INTG.SIEBEL] createSiebelConnection(): START Siebel Connection creation.+
    +2010-02-23 17:42:57,267 INFO [STDOUT] *<com.siebel.common.common.CSSException>*+
    +*<Error><ErrorCode>8716616</ErrorCode> <ErrMsg>Code Page "ISO646-US" is not supported.(SBL-JCA-00328)</ErrMsg></Error>*+
    +*</com.siebel.common.common.CSSException>*+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.om.sisnapi.EncMapping.getCodePageValue(EncMapping.java:78)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.om.sisnapi.HelloRequest.startRequest(HelloRequest.java:59)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.om.conmgr.Connection.send(Connection.java:820)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.om.conmgr.Connection.init(Connection.java:254)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.om.conmgr.Connection.<init>(Connection.java:117)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.om.conmgr.ConnectionManager.open(ConnectionManager.java:128)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.om.om.CSSModel.login(CSSModel.java:1673)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.siebel.data.SiebelDataBean.login(SiebelDataBean.java:217)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.thortech.xl.integration.siebel.utils.SiebelConnection.createSiebelConnection(Unknown Source)+
    +2010-02-23 17:42:57,268 INFO [STDOUT]      at com.thortech.xl.integration.siebel.utils.XLSiebelUtilities.createSiebelConnection(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.integration.siebel.proxy.SiebelProxyEmployeeProvisionManager.createSiebelConnection(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.integration.siebel.provision.SiebelUtilEmployeeProvisionManager.createEmployee(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at java.lang.reflect.Method.invoke(Method.java:324)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.adapterGlue.ScheduleItemEvents.adpSIEBELCREATEUSER.SIEBELCREATEUSER(adpSIEBELCREATEUSER.java:149)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.adapterGlue.ScheduleItemEvents.adpSIEBELCREATEUSER.implementation(adpSIEBELCREATEUSER.java:108)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.client.events.tcBaseEvent.run(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.runEvent(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.runMilestoneEvent(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.eventPostInsert(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.insert(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcORC.insertNonConditionalMilestones(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcORC.completeSystemValidationMilestone(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcOrderItemInfo.completeCarrierBaseMilestone(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcOrderItemInfo.eventPostInsert(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcUDProcess.eventPostInsert(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.insert(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,269 INFO [STDOUT]      at com.thortech.xl.dataobj.tcTableDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcORC.autoDOBSave(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.util.tcOrderPackages.createOrder(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.util.tcOrderPackages.orderPackageForUser(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcOIU.provision(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcOIU.eventPostInsert(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.insert(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcTableDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcOBI.checkApproved(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcOBI.eventPostUpdate(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.update(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcTableDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcOBI.approve(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcORC.checkOrcTarget(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcORC.eventPostUpdate(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.update(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcTableDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcORC.setOrderContentItemStatus(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcORC.setOrderContentItemStatus(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.checkOrderContentItem(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.eventPostUpdate(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.update(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,270 INFO [STDOUT]      at com.thortech.xl.adapterfactory.events.tcAdpEvent.updateSchItem(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.adapterfactory.events.tcAdpEvent.finalizeProcessAdapter(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.adapterfactory.events.tcAdpEvent.finalizeAdapter(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.adapterGlue.ScheduleItemEvents.adpCOMPLETETASK.implementation(adpCOMPLETETASK.java:48)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.client.events.tcBaseEvent.run(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.runEvent(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.runMilestoneEvent(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.eventPostInsert(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.insert(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.insertResponseMilestones(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcScheduleItem.eventPostUpdate(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.update(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.ejb.beansimpl.tcProvisioningOperationsBean.updateTask(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.ejb.beansimpl.tcProvisioningOperationsBean.updateTask(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at com.thortech.xl.ejb.beans.tcProvisioningOperationsSession.updateTask(Unknown Source)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at java.lang.reflect.Method.invoke(Method.java:324)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at org.jboss.invocation.Invocation.performCall(Invocation.java:345)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:214)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:149)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:154)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor.java:54)+
    +2010-02-23 17:42:57,271 INFO [STDOUT]      at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:335)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:153)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.ejb.Container.invoke(Container.java:873)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at sun.reflect.GeneratedMethodAccessor116.invoke(Unknown Source)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at java.lang.reflect.Method.invoke(Method.java:324)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:155)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:179)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:165)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:97)+
    +2010-02-23 17:42:57,272 INFO [STDOUT]      at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at $Proxy329.updateTask(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at Thor.API.Operations.tcProvisioningOperationsClient.updateTask(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at java.lang.reflect.Method.invoke(Method.java:324)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at Thor.API.Base.SecurityInvocationHandler$1.run(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at Thor.API.Security.LoginHandler.jbossLoginSession.runAs(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at Thor.API.Base.SecurityInvocationHandler.invoke(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at $Proxy784.updateTask(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at com.thortech.xl.webclient.actions.RequestApprovalDetailAction.setApproveDeny(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at com.thortech.xl.webclient.actions.RequestApprovalDetailAction.requestAssignDetail(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at java.lang.reflect.Method.invoke(Method.java:324)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at com.thortech.xl.webclient.actions.tcLookupDispatchAction.execute(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at com.thortech.xl.webclient.actions.tcActionBase.execute(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at com.thortech.xl.webclient.actions.tcAction.execute(Unknown Source)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)+
    +2010-02-23 17:42:57,273 INFO [STDOUT]      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at com.thortech.xl.webclient.security.SecurityFilter.doFilter(Unknown Source)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)+
    +2010-02-23 17:42:57,274 INFO [STDOUT]      at java.lang.Thread.run(Thread.java:534)+
    +2010-02-23 17:42:57,275 INFO [STDOUT] <com.siebel.common.common.CSSException>+
    +<Error><ErrorCode>8716616</ErrorCode> <ErrMsg>Code Page "ISO646-US" is not supported.(SBL-JCA-00328)</ErrMsg></Error>+
    +</com.siebel.common.common.CSSException>+
    Is there anyone know how to make it works in Solaris?
    Thank you.
    Ivan

    Hmm... the link you gave me using Websphere.
    Do you where can i set
    -Dclient.encoding.override=ISO8859-1 -Dfile.encoding=ISO8859-1 in Jboss?
    Thanks

  • JCA Binding Component connection issue - Help plz

    All,
    soa - 11.1.1.3
    I configured a async BPEL which reads data from DB (using DBAdapter) and write to a file. I'm getting the following error frequently. But same BPEL if I test it after few minutes it works, its very intermittent. Any clue?
    I checked the DB which is installed locally, its up and running. No issue i seen in the DB.
    Caused by: BINDING.JCA-12511
    JCA Binding Component connection issue.
    JCA Binding Component is unable to create an outbound JCA (CCI) connection.
    *OutOrderRequestMap:TerritoryPull [ TerritoryPull_ptt::TerritoryPull(TerritoryPullInput_msg,TerritoryPullOutputCollection) ] : The JCA Binding Component was unable to establish an outbound JCA CCI connection due to the following issue: javax.resource.spi.IllegalStateException: [Connector:199176]Unable to execute allocateConnection(...) on ConnectionManager. A stale Connection Factory or Connection Handle may be used. The connection pool associated with it has already been destroyed. Try to re-lookup Connection Factory eis/DB/orafin11i from JNDI and get a new Connection Handle.*
    Thanks,
    sen

    Are you using JDBC Xa datasource ? Try following the steps defined in this forum link @ Re: Error at the time of Invocation of DB Adapter

  • [JCA implementation]

    Hello
    I'm back with my "proprietary messaging system implementation".
    I'm working on a JCA connector.
    But I have a silly question :-) .
    I don't want to use CCI but my own "client API".
    So I should not implement "Connection, ConnectionFactory, RecordFactory...", in short I should not
    implement any of the Interfaces of javax.resource.cci.
    Am I right?
    And if I'm right, how can I do with the ra.xml that needs to know what are my
    interfaces and implementing classes for "connection" and "connectionfactory" ?
    I mean, what should I put in here?
    I'm a little confused...
    Thanks for your help.
    Mansuy DEJEAN
    PROSODIE
    http://www.prosodie.com

    OK, so you would specify different interfaces and
    classes in the ra.xml file, for connection factory and
    connection interfaces and implementations?Yes.
    It makes
    sense if, in your case, you're using JMS, and I guess
    JDBC as well, as there are connection factory and
    connection interfaces in those APIs. Would it make
    sense to make up your own connection factory instead
    of implementing the cci one otherwise?One must create a connection factory but the type doesn't matter because javax.resource.spi.ManagedConnectionFactory's createConnectionMethod returns an Object:
      Object createConnectionFactory(ConnectionManager connectionManager) throws ResourceException;
      Object createConnectionFactory() throws ResourceException;The connection factories are specified in ra.xml (excerpt of outbound stuff):
        <outbound-resourceadapter>
          <connection-definition>
            <managedconnectionfactory-class>
              com.swiftmq.connector.v15.outbound.ManagedConnectionFactoryImpl
            </managedconnectionfactory-class>
            <config-property>
              <config-property-name>ConnectionFactoryName</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
              <config-property-value>QueueConnectionFactory</config-property-value>
            </config-property>
            <config-property>
              <config-property-name>UserName</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
            </config-property>
            <config-property>
              <config-property-name>Password</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
            </config-property>
            <connectionfactory-interface>
              javax.jms.QueueConnectionFactory
            </connectionfactory-interface>
            <connectionfactory-impl-class>
              com.swiftmq.connector.v15.outbound.ConnectionFactoryImpl
            </connectionfactory-impl-class>
            <connection-interface>
              javax.jms.QueueConnection
            </connection-interface>
            <connection-impl-class>
              com.swiftmq.connector.v15.outbound.QueueConnectionImpl
            </connection-impl-class>
          </connection-definition>
          <connection-definition>
            <managedconnectionfactory-class>
              com.swiftmq.connector.v15.outbound.ManagedConnectionFactoryImpl
            </managedconnectionfactory-class>
            <config-property>
              <config-property-name>ConnectionFactoryName</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
              <config-property-value>TopicConnectionFactory</config-property-value>
            </config-property>
            <config-property>
              <config-property-name>UserName</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
            </config-property>
            <config-property>
              <config-property-name>Password</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
            </config-property>
            <connectionfactory-interface>
              javax.jms.TopicConnectionFactory
            </connectionfactory-interface>
            <connectionfactory-impl-class>
              com.swiftmq.connector.v15.outbound.ConnectionFactoryImpl
            </connectionfactory-impl-class>
            <connection-interface>
              javax.jms.TopicConnection
            </connection-interface>
            <connection-impl-class>
              com.swiftmq.connector.v15.outbound.TopicConnectionImpl
            </connection-impl-class>
          </connection-definition>
          <connection-definition>
            <managedconnectionfactory-class>
              com.swiftmq.connector.v15.outbound.ManagedConnectionFactoryImpl
            </managedconnectionfactory-class>
            <config-property>
              <config-property-name>ConnectionFactoryName</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
              <config-property-value>ConnectionFactory</config-property-value>
            </config-property>
            <config-property>
              <config-property-name>UserName</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
            </config-property>
            <config-property>
              <config-property-name>Password</config-property-name>
              <config-property-type>java.lang.String</config-property-type>
            </config-property>
            <connectionfactory-interface>
              javax.jms.ConnectionFactory
            </connectionfactory-interface>
            <connectionfactory-impl-class>
              com.swiftmq.connector.v15.outbound.ConnectionFactoryImpl
            </connectionfactory-impl-class>
            <connection-interface>
              javax.jms.Connection
            </connection-interface>
            <connection-impl-class>
              com.swiftmq.connector.v15.outbound.ConnectionImpl
            </connection-impl-class>
          </connection-definition>
          <transaction-support>XATransaction</transaction-support>
          <authentication-mechanism>
            <authentication-mechanism-type>BasicPassword</authentication-mechanism-type>
            <credential-interface>javax.resource.spi.security.PasswordCredential</credential-interface>
          </authentication-mechanism>
          <reauthentication-support>false</reauthentication-support>
        </outbound-resourceadapter>

  • Error while converting class file to exp and jca file

    error while converting *.class file to *.exp and *.jca file
    =====================================================================================================================
    linux-y60u:/home/admin/java_card_kit-2_2_1/samples/src # converter -exportpath "/home/admin/java_card_kit-2_2_1/lib/" com/sun/javacard/samples/HelloWorld 0x00:0x01:0x02:0x03:0x04:0x05:0x06:0x07:0x0b 1.0 -v -applet 0x00:0x01:0x02:0x03:0x04:0x05:0x06:0x07:0x0b:0x01 Identity
    Java Card 2.2.1 Class File Converter, Version 1.3
    Copyright 2003 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
    parsing /home/admin/java_card_kit-2_2_1/samples/src/com/sun/javacard/samples/HelloWorld/HelloWorld.class
    parsing /home/admin/java_card_kit-2_2_1/samples/src/com/sun/javacard/samples/HelloWorld/Identity.class
    error: com.sun.javacard.samples.HelloWorld.HelloWorld: unsupported class file format of version 50.0.
    error: com.sun.javacard.samples.HelloWorld.Identity: unsupported class file format of version 50.0.
    conversion completed with 2 errors and 0 warnings.
    =====================================================================================================================

    i compile a file javacard use this command:
    ===
    javac -source 1.3 -target 1.1 -g -classpath ./classes:../lib/api.jar:../lib/installer.jar src/com/sun/javacard/samples/Identity/Identity.java
    ===
    and try to convert this class use this command
    ===
    /home/xnuxerx/admin/java_card_kit-2_2_1/bin/converter -exportpath "/home/xnuxerx/admin/java_card_kit-2_2_1/lib/" com/sun/javacard/samples/Identity 0x00:0x01:0x02:0x03:0x04:0x05:0x06:0x07:0x0b 1.0 -v -applet 0x00:0x01:0x02:0x03:0x04:0x05:0x06:0x07:0x0b:0x01 Identity
    ===
    result convert:
    ===
    Java Card 2.2.1 Class File Converter, Version 1.3
    Copyright 2003 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
    parsing /home/xnuxerx/admin/java_card_kit-2_2_1/samples/classes/com/sun/javacard/samples/Identity/Identity.class
    converting com.sun.javacard.samples.Identity.Identity
    error: export file framework.exp of package javacard.framework not found.
    conversion completed with 1 errors and 0 warnings.
    ===
    why ??
    please your comment for this problem.
    thank 4 all.

  • OSB: Cannot acquire data source error while using JCA DBAdapter in OSB

    Hi All,
    I've entered 'Cannot acquire data source' error while using JCA DBAdapter in OSB.
    Error infor are as follows:
    The invocation resulted in an error: Invoke JCA outbound service failed with application error, exception: com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/DBAdapter1/RetrievePersonService [ RetrievePersonService_ptt::RetrievePersonServiceSelect(RetrievePersonServiceSelect_inputParameters,PersonTCollection) ] - WSIF JCA Execute of operation 'RetrievePersonServiceSelect' failed due to: Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [EclipseLink-7060] (Eclipse Persistence Services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException
    Exception Description: Cannot acquire data source [jdbc/soademoDatabase].
    Internal Exception: javax.naming.NameNotFoundException: Unable to resolve 'jdbc.soademoDatabase'. Resolved 'jdbc'; remaining name 'soademoDatabase'.
    ; nested exception is:
    BINDING.JCA-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    JNDI Name for the Database pool: eis/DB/soademoDatabase
    JNDI Name for the Data source: jdbc/soademoDatabase
    I created a basic DBAdapter in JDeveloper, got the xsd file, wsdl file, .jca file and the topLink mapping file imported them into OSB project.
    Then I used the .jca file to generate a business service, and tested, then the error occurs as described above.
    Login info in RetrievePersonService-or-mappings.xml
    <login xsi:type="database-login">
    <platform-class>org.eclipse.persistence.platform.database.oracle.Oracle9Platform</platform-class>
    <user-name></user-name>
    <connection-url></connection-url>
    </login>
    jca file content are as follows:
    <adapter-config name="RetrievePersonService" adapter="Database Adapter" wsdlLocation="RetrievePersonService.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/DB/soademoDatabase" UIConnectionName="Connection1" adapterRef=""/>
    <endpoint-interaction portType="RetrievePersonService_ptt" operation="RetrievePersonServiceSelect">
    <interaction-spec className="oracle.tip.adapter.db.DBReadInteractionSpec">
    <property name="DescriptorName" value="RetrievePersonService.PersonT"/>
    <property name="QueryName" value="RetrievePersonServiceSelect"/>
    <property name="MappingsMetaDataURL" value="RetrievePersonService-or-mappings.xml"/>
    <property name="ReturnSingleResultSet" value="false"/>
    <property name="GetActiveUnitOfWork" value="false"/>
    </interaction-spec>
    </endpoint-interaction>
    </adapter-config>
    RetrievePersonService_db.wsdl are as follows:
    <?xml version="1.0" encoding="UTF-8"?>
    <WL5G3N0:definitions name="RetrievePersonService-concrete" targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/db/KnowledeMgmtSOAApplication/AdapterJDevProject/RetrievePersonService" xmlns:WL5G3N0="http://schemas.xmlsoap.org/wsdl/" xmlns:WL5G3N1="http://xmlns.oracle.com/pcbpel/adapter/db/KnowledeMgmtSOAApplication/AdapterJDevProject/RetrievePersonService" xmlns:WL5G3N2="http://schemas.xmlsoap.org/wsdl/soap/">
    <WL5G3N0:import location="RetrievePersonService.wsdl" namespace="http://xmlns.oracle.com/pcbpel/adapter/db/KnowledeMgmtSOAApplication/AdapterJDevProject/RetrievePersonService"/>
    <WL5G3N0:binding name="RetrievePersonService_ptt-binding" type="WL5G3N1:RetrievePersonService_ptt">
    <WL5G3N2:binding style="document" transport="http://www.bea.com/transport/2007/05/jca"/>
    <WL5G3N0:operation name="RetrievePersonServiceSelect">
    <WL5G3N2:operation soapAction="RetrievePersonServiceSelect"/>
    <WL5G3N0:input>
    <WL5G3N2:body use="literal"/>
    </WL5G3N0:input>
    <WL5G3N0:output>
    <WL5G3N2:body use="literal"/>
    </WL5G3N0:output>
    </WL5G3N0:operation>
    </WL5G3N0:binding>
    <WL5G3N0:service name="RetrievePersonService_ptt-bindingQSService">
    <WL5G3N0:port binding="WL5G3N1:RetrievePersonService_ptt-binding" name="RetrievePersonService_ptt-bindingQSPort">
    <WL5G3N2:address location="jca://eis/DB/soademoDatabase"/>
    </WL5G3N0:port>
    </WL5G3N0:service>
    </WL5G3N0:definitions>
    Any suggestion is appricated .
    Thanks in advance!
    Edited by: user11262117 on Jan 26, 2011 5:28 PM

    Hi Anuj,
    Thanks for your reply!
    I found that the data source is registered on server soa_server1 as follows:
    Binding Name: jdbc.soademoDatabase
    Class: weblogic.jdbc.common.internal.RmiDataSource_1033_WLStub
    Hash Code: 80328036
    toString Results: ClusterableRemoteRef(8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1 [8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1/291])/291
    Binding Name: jdbc.SOADataSource
    Class: weblogic.jdbc.common.internal.RmiDataSource_1033_WLStub
    Hash Code: 92966755
    toString Results: ClusterableRemoteRef(8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1 [8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1/285])/285
    I don't know how to determine which server the DBAdapter is targetted to.
    But I found the following information:
    Under Deoloyment->DBAdapter->Monitoring->Outbound Connection Pools
    Outbound Connection Pool Server State Current Connections Created Connections
    eis/DB/SOADemo AdminServer Running 1 1
    eis/DB/SOADemo soa_server1 Running 1 1
    eis/DB/soademoDatabase AdminServer Running 1 1
    eis/DB/soademoDatabase soa_server1 Running 1 1
    The DbAdapter is related to the following files:
    C:\ Oracle\ Middleware\ home_11gR1\ Oracle_SOA1\ soa\ connectors\ DbAdapter. rar
    C:\ Oracle\ Middleware\ home_11gR1\ Oracle_SOA1\ soa\ DBPlan\ Plan. xml
    I unzipped DbAdapter.rar, opened weblogic-ra.xml and found that there's only one data source is registered:
    <?xml version="1.0"?>
    <weblogic-connector xmlns="http://www.bea.com/ns/weblogic/90">
    <enable-global-access-to-classes>true</enable-global-access-to-classes>
    <outbound-resource-adapter>
    <default-connection-properties>
    <pool-params>
    <initial-capacity>1</initial-capacity>
    <max-capacity>1000</max-capacity>
    </pool-params>
    <properties>
    <property>
    <name>usesNativeSequencing</name>
    <value>true</value>
    </property>
    <property>
    <name>sequencePreallocationSize</name>
    <value>50</value>
    </property>
    <property>
    <name>defaultNChar</name>
    <value>false</value>
    </property>
    <property>
    <name>usesBatchWriting</name>
    <value>true</value>
    </property>
    <property>
    <name>usesSkipLocking</name>
    <value>true</value>
    </property>
    </properties>
              </default-connection-properties>
    <connection-definition-group>
    <connection-factory-interface>javax.resource.cci.ConnectionFactory</connection-factory-interface>
    <connection-instance>
    <jndi-name>eis/DB/SOADemo</jndi-name>
              <connection-properties>
                   <properties>
                   <property>
                   <name>xADataSourceName</name>
                   <value>jdbc/SOADataSource</value>
                   </property>
                   <property>
                   <name>dataSourceName</name>
                   <value></value>
                   </property>
                   <property>
                   <name>platformClassName</name>
                   <value>org.eclipse.persistence.platform.database.Oracle10Platform</value>
                   </property>
                   </properties>
              </connection-properties>
    </connection-instance>
    </connection-definition-group>
    </outbound-resource-adapter>
    </weblogic-connector>
    Then I decided to use eis/DB/SOADemo for testing.
    For JDeveloper project, after I deployed to weblogic server, it works fine.
    But for OSB project referencing wsdl, jca and mapping file from JDeveloper project, still got the same error as follows:
    BEA-380001: Invoke JCA outbound service failed with application error, exception:
    com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/DBAdapterTest/DBReader [ DBReader_ptt::DBReaderSelect(DBReaderSelect_inputParameters,PersonTCollection) ] - WSIF JCA Execute of operation 'DBReaderSelect' failed due to: Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [EclipseLink-7060] (Eclipse Persistence Services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException
    Exception Description: Cannot acquire data source [jdbc/SOADataSource].
    Internal Exception: javax.naming.NameNotFoundException: Unable to resolve 'jdbc.SOADataSource'. Resolved 'jdbc'; remaining name 'SOADataSource'.
    ; nested exception is:
    BINDING.JCA-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [EclipseLink-7060] (Eclipse Persistence Services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException
    Exception Description: Cannot acquire data source [jdbc/SOADataSource].
    Internal Exception: javax.naming.NameNotFoundException: Unable to resolve 'jdbc.SOADataSource'. Resolved 'jdbc'; remaining name 'SOADataSource'.
    You may need to configure the connection settings in the deployment descriptor (i.e. DbAdapter.rar#META-INF/weblogic-ra.xml) and restart the server. This exception is considered not retriable, likely due to a modelling mistake.
    It almost drive me crazy!!:-(
    What's the purpose of 'weblogic-ra.xml' under the folder of 'C:\Oracle\Middleware\home_11gR1\Oracle_OSB1\lib\external\adapters\META-INF'?
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  • ORA-03111 - JCA Binding error while invoking a stored procedure in DB

    Hi,
    We are facing this problem for one interface alone.
    Need expert advice to fix this problem..
    This is scheduled to run once in a day and fails daily for past 2 weeks..
    We receive below error as response..
    Same interface worked fine for past 1 yr..
    Also it works fine if we reprocess the batch in next day morning...
    Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'DB_Legacy_To_EBS_Invoice_Conversion' failed due to: Stored procedure invocation error. Error while trying to prepare and execute the IRSOA.AR_SOA_INVOICE.TRN_GET_CUST_INV_RAW_TO_STAGE API. An error occurred while preparing and executing the IRSOA.AR_SOA_INVOICE.TRN_GET_CUST_INV_RAW_TO_STAGE API. Cause: java.sql.SQLException: ORA-03111: break received on communication channel ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.
    AND
    Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'DB_Legacy_To_EBS_Invoice_Conversion' failed due to: Stored procedure invocation error. Error while trying to prepare and execute the IRSOA.AR_SOA_INVOICE.TRN_GET_CUST_INV_RAW_TO_STAGE API. An error occurred while preparing and executing the IRSOA.AR_SOA_INVOICE.TRN_GET_CUST_INV_RAW_TO_STAGE API. Cause: java.sql.SQLException: ORA-01013: user requested cancel of current operation ORA-06512: at "IRSOA.XXIR_AR_SOA_CUSTOMER_INVOICE", line 213 ORA-06512: at line 1 ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution
    Thanks,
    Sundaram

    Looks like the SQL might be taking a longer time to execute and might be timing out.
    Please refer the following:
    Re: ORA-01013: user requested cancel of current operation
    http://www.dba-oracle.com/t_ora_01013_user_requested_cancel_of_current_operation.htm
    Additionally, ORA-06512 indicates that there is a mismatch of the with the data length that is being processed. Refer http://www.techonthenet.com/oracle/errors/ora06512.php
    Hope this helps.
    Thanks,
    Patrick

  • Error message when trying to sign in with iTunes: ConnectionManager::invoke::failed to find service connection url.

    I recently signed out of itunes on my imac and when i tried to sign back in i get the error message: ConnectionManager::invoke::failed to find service connection url. If i try again i get another box asking if i've forgotten my password. But my password is definitely right as i just used to it make an account on this support page. Any simple ways of fixing this?

    Just to test the simple things first, did you try to sign in using another credential?
    If only yours fails, then is a RIM issue, otherwise is indeed your Playbook failure.
    --- Catalonia, next state in Europe ----
    Use the "solved" or "Like" icons if my answer helped you.
    BES10 administrator for several customers.
    "SMPTE Calculator" timecode APP developer for BB10

  • How to create a iview in eclipse for connecting  R/3 using JCA?

    Hi everybody,
           I want to create a iview in eclipse for connecting  R/3 using JCA. Can any body send me java code for this purpose. i tried one example from sdn in eclipse but i did't get any code for the same.
    thanking you
    Rajendra

    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sapportals.km.docs/documents/a1-8-4/sap connector examples download.htm

Maybe you are looking for

  • VGA vs S-video - quality differences?

    We're thinking of buying a MacMini to connect to our 640x480p plasma screen. It would be easy for us to connect it via S-video. It'd be a bit of work to get a VGA cable setup, but doable. Anyone have any experience and opinions on the difference in q

  • Safari 5.0.1 is running very slow and doesn't communicate with iPhoto

    Hi! I recently downloaded the suggested update for Safari 5 and now Safari runs slow and can't import photos to iPhoto. It takes 3 tries to import a photo and a message comes up saying the file didn't make it to iPhoto. I know I can't go back to Safa

  • DAO and session Facade

    Hi I came across an design pattern where they call the DAO from Session facade. The purpose of session facade is to minimise the number of network calls. Even though there are no network calls involved why do they go for session facade to call the DA

  • Problem in deploying SessionBean

    Hi, I'm using deplytool of J2EE 1.4 RI. I have 3 classes in a package structure: | mypackage | Calculation.class CalculationBean.class CalculationHome.class In the Edit tab, I added the mypackage directory. When I clicked Next, it says: The class (my

  • Apcupsd working strangely after system upgrade [SOLVED?]

    I'm having an odd problem with the apcupsd (3.10.17-1) package in the Community repo.  I'm running a Back-UPS RS 1000 according to apcaccess.  It was working swimmingly through a USB connection until recently.  I have the timeout set to 0 and the aut