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 AMArun,
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)
> -
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,
VipaHere 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,
GeorgeHi 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,
Manojhi 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,
KattaHi 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.
IvanHmm... 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,
senAre 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.comOK, 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 PMHi 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,
SundaramLooks 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 -
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
Rajendrahttps://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
-
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