46c with 46d_ext kernel sles and oracle platform question
Dear sap on linux community,
I currently have R/3 4.6c with 46d_ext kernel running on sles8 and ora 9204 (all 32-bit)
As part of an upgrade project I want to move current system to sles10 and oracle 10 (all 64-bit). I am using that note as a starting point.
According to the note oracle 9 client is required with ora10 db ?
Why is this ?
This leads to some conflicting results from pam.
pam states that it is supported to run ora10 64-bit on sles10.
But as far as I know it is not suported to install ora9 client on sles10.
Please explain.
Do I need a db server with sles10ora10 and a ci app server with sles9ora9 ?
Rgds, Eirikur.
Hello,
I strongly recommend you to take a look at the note <a href="http://service.sap.com/sap/support/notes/521230">521230: FAQ: Client software 9i or earlier on UNIX</a>
The oracle client to be used on a SAP system running on UNIX depends on the <b>KERNEL</b>
You are upgrading
- Your OS ( from SLES 8 to 10 )
- Your Oracle DB ( from 9i to 10g )
Your kernel is NOT changing, therefore the oracle client still is the same as before.
NOTE. Even when the oracle client still is 9i, you must have version 9.2.0.7 or 9.2.0.8
Please, do not confuse the oracle client version (9i) with the RDBMS version (10g)
There is no conflict with PAM. PAM talks about RDBMS version, not about client versions.
At the end you will have a DB server running oracle 10g (RDBMS) and CI/AS runing kernel 46D_EXT with Oracle <b>CLIENT</b> 9i
Similar Messages
-
ConnectionPool problems with WLS 7.0 and Oracle 9.2
Hi,
We are using WLS 7.0 SP4, and Oracle 9 and the Oracle thin driver type 4. In our
application on the productive system (and only there) we constantly encounter
a whole set of SQLExceptions which have all in common that the Connection from
the pool is not valid any more when the application tries to use it.
Typical, recurring error messages are:
- Exhausted ResultSet
- Connection has already been closed
- Closed Statement
- Transaction is no longer active - status committing
- NullPointerException at
weblogic.jdbc.pool.Connection.prepareStatement()
There are no special Statements which create these errors. They are spread at
random across practically every query the application creates, and the same queries
sometimes succeed and sometimes fail.
I double and triple checked that all Connections, Statements and ResultSets are
closed immediately after use. As an example, I attached a code snippet and a resulting
StackTrace which.
The problem also seems to occur only with an (unknown) minimum of concurrent usern,
since in the approval tests on an almost identical test system these errors never
occurred.
I also followed the advice from Oracle and installed the latest Oracle JDBC driver
(Oracle 10g) - to no avail.
What else can I do?
Another question: Is it correct that my Oracle JDBC driver is in the application
classpath (via a reference in the Manifest file of the application jar), not in
the system classpath? There has never been a problem with that, but in a Newsgroup
answer from Nov 10, 2003 (subject: "ResultSet closes prematurely"), Joe Weinstein
suggested to "get it listed at the
front of the -classpath argument that the startWebLogic script creates for the
java line that starts the server".
I hesitate to do so, since the driver is in a standard WebApp- directory, WEB-INF/lib.
Is it possible and safe to add a jar located there to the system classpath? If
it is possible, why is it necessary?
Best regards,
Andreas Zehrt
[CodeSnippetsAndStackTraceForConnectionPoolProblem.txt]Andreas Zehrt wrote:
Hi Joe,
Your hint that there is a threading problem was right:
On further investigation of the code I found out that the class that passes the
Connection to the DAO not only stores it as a member at some point (which is not
a good idea anyway) but is also a singleton - then, of course, it's no surprise
that the Connection gets invalid in a incalculable way when concurrent threads
share it.
The singleton instantiation was not so obvious because the way of instantiation
is controlled by a configuration parameter that can be overridden at different
levels.
I changed it and the productive logfiles indicate that the SQLExceptions related
to that class have disappeared.I am happy to have helped.
So, thanks a lot for the advice.
But I am still wondering why this code has worked for so long a time with WLS
5.1 and Oracle 8 (the system has been productive for over 2 years). Even in the
approval tests with WLS 7.0 and Oracle 9, we did not run into problems, although
it was multi-user environment.Mo idea.
I still believe that there is a difference between WLS 5.1 and 7.0 in the way
it treats pooled Oracle JDBC Connections. I wished both Oracle and Bea could be
a little more explicit about those changes and possible version incompatabilities
beyond the general advice "use the latest thin driver".Though I can think of no change to our pooling which would have had any material
effect in this case, I will certainly do what I can to see that our documentation
is explicit about changes.
Joe
Best regards, Andreas
Joe Weinstein <[email protected]> wrote:
Hi Andreas.
Andreas Zehrt wrote:
Hi,
We are using WLS 7.0 SP4, and Oracle 9 and the Oracle thin driver type4. In our
application on the productive system (and only there) we constantlyencounter
a whole set of SQLExceptions which have all in common that the Connectionfrom
the pool is not valid any more when the application tries to use it.
Typical, recurring error messages are:
- Exhausted ResultSetThat is typically if the statement that created it is either re-executed
or closed.
- Connection has already been closedAs described. If you give a stacktrace, we could make a debug patch which
would show
where it was originally closed.
- Closed Statementsame as above.
- Transaction is no longer active - status committingThat implies your code is obtaining a connection from a transactional
datasource,
and then later trying to use it after the transaction which it was associated
with,
is finished.
- NullPointerException at
weblogic.jdbc.pool.Connection.prepareStatement()Maybe any of the above.
There are no special Statements which create these errors. They arespread at
random across practically every query the application creates, andthe same queries
sometimes succeed and sometimes fail.
I double and triple checked that all Connections, Statements and ResultSetsare
closed immediately after use. As an example, I attached a code snippetand a resulting
StackTrace which.
The problem also seems to occur only with an (unknown) minimum of concurrentusern,
since in the approval tests on an almost identical test system theseerrors never
occurred.
I also followed the advice from Oracle and installed the latest OracleJDBC driver
(Oracle 10g) - to no avail.
What else can I do?
Another question: Is it correct that my Oracle JDBC driver is in theapplication
classpath (via a reference in the Manifest file of the applicationjar), not in
the system classpath? There has never been a problem with that, butin a Newsgroup
answer from Nov 10, 2003 (subject: "ResultSet closes prematurely"),Joe Weinstein
suggested to "get it listed at the
front of the -classpath argument that the startWebLogic script createsfor the
java line that starts the server".
I hesitate to do so, since the driver is in a standard WebApp- directory,WEB-INF/lib.
Is it possible and safe to add a jar located there to the system classpath?If
it is possible, why is it necessary?I was only concerned to ensure we know which driver we are working with.
We also ship
an oracle thin driver, which becomes obsolete soon...
I am concerned that your code creates pool connections to be used later.
The problems
can arise if more than one thread ever gets the same connection, or if
the connection
is used in the same thread, spanning transactions. It does also seem
that there may
be a threading issue, because if two threads each call the code to create
a connection,
and two connections are made, but one over-writes the other, the two
threads can
end up using the same connection, and closing it. The over-written one
never gets closed,
resulting in that leak message you got...
Joe
The Connection parameter is opened by a business component class, ComaServiceProviderClassicImpl.It is propagated through
several classes in the business layer, but not used, until the DAOtakes it to make the query.
So, the Connection is closed where it was opened, not in the DAO class.
public class ConcernDAOImpl extends BaseDAO {
public Collection getConcernsForIncidents(Connection conn, Collectionincidents)
throws DataAccessException, ConstraintException, ComaParseException{>
sqlMessage.append(")");
String sqlStmt = sqlMessage.toString();
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
pstmt = conn.prepareStatement(sqlStmt);
rs = pstmt.executeQuery();
while (rs != null && rs.next()) {
final Concern concern =
new Concern(DAOUtil.getComaOID(rs, ComaDBNames.KDANR));
concern.setIncidentOID(DAOUtil.getComaOID(rs, ComaDBNames.KDAVGENR));
return concerns;
} catch (SQLException sqle) {
// Wrapps real SQL exception
String[] message = new String[]{sqle.getMessage(), sqlStmt};
throw new DataAccessException(ExpCode.S_ORACLE_SQL, message,
sqle);
} finally {
closeAll(rs, pstmt);
_logger.exitDebug(method);
Here, the Connection is acquired and finally closed
public class ComaServiceProviderClassicImpl {
public void updateComplaint(
final Request updateRequest,
final ResponseSingleElement response,
final Principal principal)
throws SystemException {
try {
logger.info("updateComplaint", "store incident");
// store the incident in the database
incidentManager.storeIncident(getConnection(), updateIncident);
// reload the incident from Cache and / or the databaseto get the ContactReferences.
Incident returnIncident = incidentManager.loadIncident(//IncidentManager passes the Connection to the DAO
getConnection(), updateIncident.getOID());
} catch (RemoteException rex) {
// remote exceptions
rollbackIfNecessary();
CoreUtils.unwrapRemoteException(rex, logger);
} catch (SystemException e) {
// all other exceptions --> rollback if necessary and rethrow
rollbackIfNecessary();
throw e;
} finally {
removeConnection();
logger.exitDebug("updateComplaint");
This is the resulting StackTrace:
sql exception: [Closed Statement: next] - sql statement: [select *
at de.deutschepost.ubbrief.coma.persistence.dao.ConcernDAOImpl.getConcernsForIncidents(ConcernDAOImpl.java:363)
at de.deutschepost.ubbrief.coma.persistence.dao.CachingConcernDAOImpl.getConcernsForIncidents(CachingConcernDAOImpl.java:129)
at de.deutschepost.ubbrief.coma.persistence.incidentmanager.IncidentManagerImpl.loadConcernStructuresIntoIncidents(IncidentManagerImpl.java:1067)
at de.deutschepost.ubbrief.coma.persistence.incidentmanager.IncidentManagerImpl.loadStructureForIncident(IncidentManagerImpl.java:320)
at de.deutschepost.ubbrief.coma.persistence.incidentmanager.IncidentManagerImpl.loadIncidents(IncidentManagerImpl.java:264)
at de.deutschepost.ubbrief.coma.persistence.taskmanager.TaskManagerImpl.selectTasksForUser(TaskManagerImpl.java:299)
at de.deutschepost.ubbrief.coma.service.z2.ComaServiceProviderZ2Impl.getTaskList(ComaServiceProviderZ2Impl.java:113)
at de.deutschepost.ubbrief.coma.service.z2.ComaServiceProviderZ2Bean_1dhrj7_EOImpl.getTaskList(ComaServiceProviderZ2Bean_1dhrj7_EOImpl.java:154)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList.runServiceMethod(CMPGetTaskList.java:64)
at de.deutschepost.ubbrief.coma.sbbx.sp.BasicMethodProvider.execute(BasicMethodProvider.java:145)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList_9b9mv5_EOImpl.execute(CMPGetTaskList_9b9mv5_EOImpl.java:46)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList_9b9mv5_EOImpl_WLSkel.invoke(UnknownSource)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:159)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:263)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:230)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList_9b9mv5_EOImpl_WLStub.execute(UnknownSource)
at de.deutschepost.ubbrief.backbone.jazz.impl.core.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:115)
at de.deutschepost.ubbrief.backbone.common.impl.core.rpc.server.ServerKernelImpl.handleTransportMessage(ServerKernelImpl.java:270)
at de.deutschepost.ubbrief.backbone.common.impl.core.messaging.MessageTransport.handleMessage(MessageTransport.java:454)
at de.deutschepost.ubbrief.backbone.common.impl.core.KernelFacade.handleMessage(KernelFacade.java:209)
at de.deutschepost.ubbrief.backbone.jazz.impl.backbone.BackboneBean.messageArrived(BackboneBean.java:637)
at de.deutschepost.ubbrief.backbone.jazz.impl.backbone.BackboneBean_ina9d7_ELOImpl.messageArrived(BackboneBean_ina9d7_ELOImpl.java:105)
at de.deutschepost.ubbrief.backbone.jazz.impl.transport.receive.LocalQueueReceiveBean.deliverMessage(LocalQueueReceiveBean.java:43)
at de.deutschepost.ubbrief.backbone.jazz.impl.transport.receive.AbstractMessageReceiveBean.onMessage(AbstractMessageReceiveBean.java:127)
at weblogic.ejb20.internal.MDListener.execute(MDListener.java:377)
at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:311)
at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:286)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2351)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:2267)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:234)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:210)
####<May 26, 2004 12:18:43 PM CEST> <Warning> <JDBC> <S0048016> <REMA20Z><Finalizer> <kernel identity> <> <001074> <A JDBC pool connection leak
was detected. A Connection leak occurs when a connection obtained from
the pool was not closed explicitly by calling close() and then was disposed
by the garbage collector and returned to the connection pool. The following
stack trace at create shows where the leaked connection was created.
Stack trace at connection create:
at weblogic.jdbc.pool.Connection.<init>(Connection.java:66)
at weblogic.jdbc.pool.Driver.allocateConnection(Driver.java:294)
at weblogic.jdbc.pool.Driver.connect(Driver.java:210)
at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:373)
at weblogic.jdbc.jts.Driver.connect(Driver.java:129)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:287)
at de.deutschepost.ubbrief.coma.core.ComaComponentImpl.getConnectionFromPool(ComaComponentImpl.java:163)
at de.deutschepost.ubbrief.coma.core.ComaComponentImpl.getConnectionInternal(ComaComponentImpl.java:135)
at de.deutschepost.ubbrief.coma.core.ComaComponentImpl.getConnection(ComaComponentImpl.java:99)
at de.deutschepost.ubbrief.coma.persistence.customermanager.CurryCustomerManagerImpl.findCustomers(CurryCustomerManagerImpl.java:73)
at de.deutschepost.ubbrief.coma.service.z2.ComaServiceProviderZ2BaseImpl.resolveCustomerInstances(ComaServiceProviderZ2BaseImpl.java:808)
at de.deutschepost.ubbrief.coma.service.z2.ComaServiceProviderZ2Impl.getTaskList(ComaServiceProviderZ2Impl.java:213)
at de.deutschepost.ubbrief.coma.service.z2.ComaServiceProviderZ2Bean_1dhrj7_EOImpl.getTaskList(ComaServiceProviderZ2Bean_1dhrj7_EOImpl.java:154)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList.runServiceMethod(CMPGetTaskList.java:64)
at de.deutschepost.ubbrief.coma.sbbx.sp.BasicMethodProvider.execute(BasicMethodProvider.java:145)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList_9b9mv5_EOImpl.execute(CMPGetTaskList_9b9mv5_EOImpl.java:46)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList_9b9mv5_EOImpl_WLSkel.invoke(UnknownSource)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:159)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:263)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:230)
at de.deutschepost.ubbrief.coma.sbba.z2.CMPGetTaskList_9b9mv5_EOImpl_WLStub.execute(UnknownSource)
at de.deutschepost.ubbrief.backbone.jazz.impl.core.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:115)
at de.deutschepost.ubbrief.backbone.common.impl.core.rpc.server.ServerKernelImpl.handleTransportMessage(ServerKernelImpl.java:270)
at de.deutschepost.ubbrief.backbone.common.impl.core.messaging.MessageTransport.handleMessage(MessageTransport.java:454)
at de.deutschepost.ubbrief.backbone.common.impl.core.KernelFacade.handleMessage(KernelFacade.java:209)
at de.deutschepost.ubbrief.backbone.jazz.impl.backbone.BackboneBean.messageArrived(BackboneBean.java:637)
at de.deutschepost.ubbrief.backbone.jazz.impl.backbone.BackboneBean_ina9d7_ELOImpl.messageArrived(BackboneBean_ina9d7_ELOImpl.java:105)
at de.deutschepost.ubbrief.backbone.jazz.impl.transport.receive.LocalQueueReceiveBean.deliverMessage(LocalQueueReceiveBean.java:43)
at de.deutschepost.ubbrief.backbone.jazz.impl.transport.receive.AbstractMessageReceiveBean.onMessage(AbstractMessageReceiveBean.java:127)
at weblogic.ejb20.internal.MDListener.execute(MDListener.java:377)
at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:311)
at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:286)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2351)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:2267)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:234)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:210) -
Linking Access tables, creating a query with using both Access and Oracle
Hello,
I am using 3.0.04.34 version Oracle Developer. I am supposed to create a script/procedure to use both Access tables and oracle tables together. There is an option in developer to copy the access tables into oracle. But it doesn't help me. Because when we updated the access tables
the copied ones are not be updated. How can I created a linked access tables to oracle and create a query with using both access and oracle table together.
I will appreciate if you guys help me. I look forward to hearing from you guys.
Thanks,
PinarPinar,
to be able to query MS Access tables in Oracle you need an additional product, the Oracle Database Gateway for ODBC. It allows you to link any foreign database into an Oracle database using a suitable ODBC driver. You can then access the MS Access tables through a database link based on the Database Gateway for ODBC. This will also allow you to join local Oracle and remote MS Access tables from your Oracle database.
There's a note on My Oracle Support which gives you more details:Document 233876.1 Options for Connecting to Foreign Data Stores and Non-Oracle Databases - For example - DB2, SQL*Server, Sybase, Informix, Teradata, MySQL
And there's also a dedicated Forum: Heterogeneous Connectivity -
Ajax with Ruby on Rails and Oracle Database
Ajax may be used with Ruby on Rails and Oracle database.
http://www.ftponline.com/channels/java/2007_02/dvohra/okay, that helped. Here's what I get:
erik-petersons-computer:/usr/local/mysql/bin erikpeterson$ ls
comp_err mysql_zap
makesharedlibdistribution mysqlaccess
makewin_bindist mysqlaccess.conf
makewin_srcdistribution mysqladmin
msql2mysql mysqlbinlog
myprintdefaults mysqlbug
myisam_ftdump mysqlcheck
myisamchk mysqld
myisamlog mysqld_multi
myisampack mysqld_safe
mysql mysqldump
mysqlclienttest mysqldumpslow
mysql_config mysqlhotcopy
mysqlconvert_tableformat mysqlimport
mysqlcreate_systemtables mysqlmanager
mysqlexplainlog mysqlshow
mysqlfindrows mysqltest
mysqlfixextensions mysqltestmanager
mysqlfix_privilegetables mysqltestmanager-pwgen
mysqlsecureinstallation mysqltestmanagerc
mysql_setpermission perror
mysql_tableinfo replace
mysqltzinfo_tosql resolvestackdump
mysql_upgrade resolveip
mysqlupgradeshell safe_mysqld
mysql_waitpid
erik-petersons-computer:/usr/local/mysql/bin erikpeterson$
How would I create a new database from here? -
i switched to the classic 'landscape' and when i reboot, it just stays at the greay screen, with the macintosh logo, and a blinking question mark. ive tried several methods of key combinations with rebooting etc.. i just bought this. please help.
I bought this off of craigslist with my christmas money, TODAY. i really need help, i have OS X experience from school, just not OS 9x. I need to reboot back to OS X asap. anything that may help is very appreciated. Thank You.
Chris.Are you able to start up in Safe Mode?
http://support.apple.com/kb/HT1455?viewlocale=en_US
If this works you will see the normal desktop Once completely started up in Safe Mode, try to restart normally and go to Applications > Utilities > Disk Utility. Click on the top hard drive icon in the left sidebar and note the S.M.A.R.T. status at the bottom right of the pane. What does it say?
Select the named boot volume in the left sidebar, ("Macintosh HD" unless it has been renamed). What is the hard drive capacity and how much space remains available on it? Repair permissions on it.
See if you are able to do a little hard drive maintenance to help things out. -
Performanceproblem with WL6.1 JDBC and Oracle
Hi!
I have a big performance-problem using wl6.1, jdbc and oracle.
My Server is sending a Vector with NodeBeans via JDBC to a OracleDB. The answer
comes immediately with the timeout.
Why is the EJB waiting for the timeout?
Is it a problem of configuration?
Thanks
ThomasHi Sree,
here I send You the class with the main problem. The call queryDataSet.refresh();
is the timeconsuming part.
We are using WL6.1sp2, Oracle 8.1.7 with classes12. In our environment we can
not use connectionpools.
It comes back with a timeout AND the data. Calling it again immediately it takes
2/3 of the time the timeout is set.
Do You have a fine solution?
Thanks
Thomas
package ppif.db;
import java.rmi.*;
import ppif.bo.*;
import java.util.*;
import com.borland.dx.dataset.*;
import com.borland.dx.sql.dataset.*;
import java.math.*;
public class connector {
private ppif.mapping.NodeDescriptions nodeDescriptions;
public connector(ppif.mapping.NodeDescriptions nodeDescriptions) {
this.nodeDescriptions = nodeDescriptions;
public connector() {
this.nodeDescriptions = nodeDescriptions;
public Vector fetchNodes(ppif.bo.Node filterNode) throws RemoteException {
String childClassName = null;
Vector nodeVector = new Vector();
Node node = null;
if (nodeDescriptions == null) throw new RemoteException("nodeDescriptions ==
null");
// childClassName zu gegebenen filterNode ermitteln
if (filterNode.getClassName().equals("DefaultRoot")) childClassName = "ST";
if (filterNode.getClassName().equals("PrismaProjectsRoot")) childClassName =
"PrismaProjects";
if (childClassName == null) throw new RemoteException("Zum übergebenen filterNode
wurde kein chlidClassName gefunden.");
if (nodeDescriptions.getNodeDescription(childClassName) == null) throw new RemoteException("Für
die ChildClass "+childClassName+" ist kein Mapping definiert.");
// Vector mit Child-Knoten erzeugen durch DB-Zugriff
ppif.mapping.NodeDescription nodeDescription = nodeDescriptions.getNodeDescription(childClassName);
Database database = new Database();
ParameterRow parameterRow = null;
Column column = null;
QueryDataSet queryDataSet = new QueryDataSet();
// DB-Connect generieren
database.setConnection(new com.borland.dx.sql.dataset.ConnectionDescriptor(nodeDescription.dbUrl,
nodeDescription.dbUser, nodeDescription.dbPassword, false, "oracle.jdbc.driver.OracleDriver"));
int queryCount = 0;
// Schleife über alle queries der childKlasse, gemäss Mapping
for (Iterator it = nodeDescription.mappingQueries.iterator(); it.hasNext();
ppif.mapping.MappingQuery mappingQuery = (ppif.mapping.MappingQuery)it.next();
String queryString = mappingQuery.getQueryString();
parameterRow = mappingQuery.getParameterRow();
// ParameterRow mit Input-Werten füllen
for (int i=0; i<parameterRow.getColumnCount(); i++) {
String columnName = parameterRow.getColumn(i).getColumnName();
String filterAttributeName = columnName;
Object filterAttributeValue = filterNode.getAttribute(filterAttributeName).getVal1();
switch (parameterRow.getColumn(i).getDataType()) {
case com.borland.dx.dataset.Variant.BIGDECIMAL:
BigDecimal val = (BigDecimal)filterAttributeValue;
parameterRow.setBigDecimal(i, val);
break;
case com.borland.dx.dataset.Variant.STRING:
parameterRow.setString(i, (String)filterAttributeValue);
break;
default:
throw new RemoteException("Unbekannter Datentyp");
// Query generieren
queryDataSet.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database,
queryString, parameterRow, false, Load.ALL));
// DB-Verbindung öffnen
queryDataSet.open();
// Rolle setzen
if (nodeDescription.dbRole != null) {
java.sql.Statement setRole;
String roleName = nodeDescription.dbRole;
String rolePwd = nodeDescription.dbRolePassword;
try {
java.sql.Connection jdbcConnection = database.getJdbcConnection();
setRole = jdbcConnection.createStatement();
setRole.execute("SET ROLE " + roleName + " IDENTIFIED BY " + rolePwd);
} catch (java.sql.SQLException exception) {
throw new RemoteException(exception.getMessage());
} catch (Exception exception) {
throw new RemoteException(exception.getMessage());
// Query ausführen
queryDataSet.refresh();
// Datensätze in Node-Objekte umwandeln
int columnCount = queryDataSet.getColumnCount();
String columnArray[];
columnArray = queryDataSet.getColumnNames(columnCount);
for(queryDataSet.first(); queryDataSet.inBounds(); queryDataSet.next()) {
Node rNode = nodeDescriptions.createNodeInstance(childClassName);
// Abfrageergebnissen in eine Attributliste übertragen
for (int i=0; i<columnCount; i++) {
nodeVector.add(rNode);
queryCount++;
return nodeVector;
public ppif.mapping.NodeDescriptions getNodeDescriptions() {
return nodeDescriptions;
public void setNodeDescriptions(ppif.mapping.NodeDescriptions nodeDescriptions)
this.nodeDescriptions = nodeDescriptions;
"Sree Bodapati" <[email protected]> wrote:
hi Thomas,
please post more detail on what your code is doing. if possible a code
snippet/error messages/thread dump
sree
"Thomas Eberhard" <[email protected]> wrote in message
news:[email protected]...
Hi!
I have a big performance-problem using wl6.1, jdbc and oracle.
My Server is sending a Vector with NodeBeans via JDBC to a OracleDB.
The
answer
comes immediately with the timeout.
Why is the EJB waiting for the timeout?
Is it a problem of configuration?
Thanks
Thomas -
Problems with file location variables and Oracle 9i
I'm new to Oracle and I'm seeing if I can get Oracle 9i running and do anything useful for me on a Solaris 9 platform.
The installation of Oracle went OK except step three, creating a starter database. The installation wanted to put it on the same file system as {ORACLE_HOME} although I told the installation that I wanted {ORACLE_BASE} on another file system. So of course there wasn't enough room on the file system to make the starter database.
I thought I'd be able to correct this after installation. I tried to make a General Purpose Database with Database Configuration Assistant but DBCA in step 5 of 7, File Location Variables still shows {ORACLE_BASE} to be the same as {ORACLE_HOME}, and no way to change that variable on this screen. Don't I want to change { ORACLE_BASE} to a file system that has enough space to make the data base? How do I change this variable? When logged in as the oracle user, I don't see it listed by setenv.
When I ignored this setting and tried to finish DBCA, it hung.I looked for the {ORACLE*} environmental variables in the profile and login files of my oracle user, but didn't find that they were added by my Oracle setup. So I didn't think defining them as environmental variables would persist or overrule the global variables set at dbca run time.
In the dbca windows, step 5 displays these global variable settings provocatively in a table, as if Oracle wants me to verify and edit them if necessary, but I keep poking at them with right mouse clicks, left mouse clicks, backspace, and delete, but all I can do is turn them blue.
Currently when I use dbca to try to create a general purpose database, it hangs at 50% done, but not much space is used up on {ORACLE_HOME}. So it doesn't really look like the hang is caused by the disk being full. One of the processes that is hung is jre, so I thought I'd review the Oracle requirements and locations for JRE on my system. -
Problem with java.sql.Clob and oracle.sql.CLOB
Hi,
I am using oracle9i and SAP web application server. I am getClob method and storing that in java.sql.Clob and using the getClass().getName() I am getting the class name as oracle.sql.CLOB. But when I am trying to cast this to oracle.sql.CLOB i am getting ClassCastException. The code is given below
java.sql.Clob lOracleClob = lResultSet.getClob(lColIndex + 1);
lPrintWriter = new PrintWriter(new BufferedWriter (((oracle.sql.CLOB) lOracleClob).getCharacterOutputStream()));
lResourceStatus = true;
can anybody please tell me the what is the problem with this and solution.
thanks,
Ashok.Hi Ashok
You can get a "ClassCastException" when the JVM doesn't have access to the specific class (in your case, "oracle.sql.CLOB").
Just check your classpath and see if you are referring to the correct jar files.
cheers
Sameer
PS: Please award points if you find the answer useful -
Stored Procedures with Date data types and Oracle
This should be easy.... But i keep getting the error:
[Macromedia][Oracle JDBC Driver][Oracle]ORA-06550: line 1,
column 7: PLS-00306: wrong number or types of arguments in call to
'RETRIEVE_TS' ORA-06550: line 1, column 7: PL/SQL: Statement
ignored
And I got it worked out to where i know it is a problem with
the way i am using the date data types in a stored procedure....
In the past i usually avoided calling procedures in Oracle
with date as the in type.... It is always easiest to let oracle
convert the string to a date.... Unfortunately now i am stuck with
having a date type in the procedure call.... So the question is:
WHAT IS THE PROPER WAY TO SUBMIT DATE/TIME STAMP IN A STORED
PROCEDURE?
The Oracle Procedure looks like this:
PROCEDURE retrieve_ts (
p_at_tsv_rc IN OUT sys_refcursor,
p_units IN OUT VARCHAR2,
p_officeid IN VARCHAR2,
p_timeseries_desc IN VARCHAR2,
p_start_time IN DATE,
p_end_time IN DATE,
p_timezone IN VARCHAR2 DEFAULT 'GMT',
p_trim IN NUMBER DEFAULT false_num,
p_inclusive IN NUMBER DEFAULT NULL,
p_versiondate IN DATE DEFAULT NULL,
p_max_version IN NUMBER DEFAULT true_num
AND the stored procedure call looks like this:
<cfset ed = Now()>
<cfset sd = #DateAdd("d",-lbt,Now())#>
<cfstoredproc datasource="CWMS"
procedure="cwms.cwms_ts.retrieve_ts"
returncode="no">
<cfprocparam type="inout" variable="unit" value="#unit#"
dbvarname="@p_units"
cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="MVS"
dbvarname="@p_officeid"
cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value=#id.cwms_ts_id#
dbvarname="@p_timeseries_desc"
cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="#sd#"
dbvarname="@p_start_time"
cfsqltype="cf_sql_date">
<cfprocparam type="in" value="#ed#"
dbvarname="@p_end_time"
cfsqltype="cf_sql_date">
<cfprocparam type="in" value="#tz#"
dbvarname="@p_time_zone"
cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="0"
dbvarname="@p_trim"
cfsqltype="cf_sql_numeric">
<cfprocparam type="in" value=""
null = "yes"
dbvarname="@p_inclusive"
cfsqltype="cf_sql_numeric">
<cfprocparam type="in" value=""
null="yes"
dbvarname="@p_versiondate"
cfsqltype="cf_sql_date">
<cfprocparam type="in" value="1"
dbvarname="@p_max_version"
cfsqltype="cf_sql_numeric">
<cfprocresult name="ts_dat">
</cfstoredproc>
TextYeah.... One is a type INOUT ref cursor.... which is denoted
by the cfprocresult....
By the way:
Phil - the code example with a little tweaking worked fine on
my machine....
<<cfstoredproc procedure="test_pkg.test"
datasource="myDSN" returncode="no">
<cfprocparam type="IN" cfsqltype="cf_sql_timestamp"
value="15-JUN-2005">
<cfprocparam type="OUT" cfsqltype="cf_sql_varchar"
variable="v_out">
<cfprocresult name="rs1">
</cfstoredproc>
PROCEDURE test(
v3_out OUT ref_cur_type,
v1_in IN date default null,
v2_out OUT varchar2
IS
BEGIN
v2_out := TO_CHAR(v1_in, 'mm/dd/yyyy');
OPEN v3_out
FOR
SELECT *
FROM user
WHERE activation_date >= v1_in;
END test;
Why do i still get this error......
Here is what it looks like now:
PROCEDURE retrieve_ts (
p_at_tsv_rc IN OUT sys_refcursor,
p_units IN OUT VARCHAR2,
p_officeid IN VARCHAR2,
p_timeseries_desc IN VARCHAR2,
p_start_time IN DATE,
p_end_time IN DATE,
p_timezone IN VARCHAR2 DEFAULT 'GMT',
p_trim IN NUMBER DEFAULT false_num,
p_inclusive IN NUMBER DEFAULT NULL,
p_versiondate IN DATE DEFAULT NULL,
p_max_version IN NUMBER DEFAULT true_num
<cfstoredproc datasource="CWMS"
procedure="cwms.cwms_ts.retrieve_ts"
returncode="no">
<cfprocparam type="INOUT" variable="p_units"
value="#unit#" <!---p_units--->
cfsqltype="cf_sql_varchar">
<cfprocparam type="IN" value="MVS"
<!---p_officeid--->
cfsqltype="cf_sql_varchar">
<cfprocparam type="IN" value=#id.cwms_ts_id#
<!---p_timeseries_desc--->
cfsqltype="cf_sql_varchar">
<cfprocparam type="IN" value="#sd#"
<!---p_start_time--->
cfsqltype="cf_sql_timestamp">
<cfprocparam type="IN" value="#ed#"
<!---p_end_time--->
cfsqltype="cf_sql_timestamp">
<cfprocparam type="IN" value="#tz#"
<!---p_timezone--->
cfsqltype="cf_sql_varchar">
<cfprocparam type="IN" value="0" <!---p_trim--->
cfsqltype="cf_sql_integer">
<cfprocparam type="IN" value=""
<!---p_inclusive--->
null = "yes"
cfsqltype="cf_sql_numeric">
<cfprocparam type="IN" value=""
<!---p_versiondate--->
null="yes"
cfsqltype="cf_sql_timestamp">
<cfprocparam type="IN" value="1"
<!---p_max_version--->
cfsqltype="cf_sql_integer">
<cfprocresult name="ts_dat">
<!---sys_refcursor--->
</cfstoredproc>
If I truly am short a parameter, How do you specify the INOUT
sys_refcursor? -
Trouble with MSSQL Reporting Services and Oracle: PLS-00553: character set
First off, Oracle version is 8.1.7.4.0. SQL is 64bit 2005 on Windows 2003 with all the latest patches. We’re using the Oracle 10.2 client on the SQL box.
A few months ago queries against Oracle stopped working on our MSSQL reporting services server - after a service pack on this same system.
I ended up having to grant permissions on Oracle directories to eliminate the first error and then renamed the NLS_LANG registry entry (effectively deleting it) to get rid of the second error.
The second error was: ORA-12705: Cannot access NLS data files or invalid environment specified. I don’t have docs on the first error, but it was a reference to a file access problem. Looking at this error again makes me think that I still have some file access problems.
The old value for the NLS_LANG registry key was: AMERICAN_AMERICA.WE8MSWIN1252
Everything has been working fine since then.
Now we are moving some new reports into production which use Oracle stored procedures and they are getting this error:
--- End of inner exception stack trace ---
w3wp!processing!8!7/27/2009-09:26:09:: e ERROR: An exception has occurred in data source 'CSUD3_RPTAPL'. Details: Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Query execution failed for data set 'MYDATASET'. ---> System.Data.OracleClient.OracleException: ORA-06550: line 1, column 57:
PLS-00553: character set name is not recognized
ORA-06550: line 0, column 0:
PL/SQL: Compilation unit analysis terminated
I've created a test package as below, which has also gotten the same error.
create or replace
PACKAGE BODY SQLTEST AS
PROCEDURE OPEN_CURSOR (ResultCursor OUT T_CURSOR,
SQLTESTIN IN VARCHAR
AS
l_query varchar2(3000);
BEGIN
l_query := 'Hi there';
open ResultCursor for select l_query "field1" from dual;
END OPEN_CURSOR;
END SQLTEST;
I tried setting the NLS_Lang value back to its old value, but it did not fix this problem – and made all the regular oracle queries break again.
From what I've read, the client should be using the database default if the charset is not specified on the client.
Can anyone advise on what the problem might be?
Thanks!
Sam GreeneWith all due respects I can not think of a worse reporting tool than MS Reporting Services.
Give serious consideration to getting a real report writing tool from Oracle or SAP (Business Objects / Crystal).
Reporting Services is one nightmare after another. -
Dbping errors with Oracle8.1.5 and Oracle thin driver
I am trying to connect to Oracle 8.1.5.0.0 with Oracle thin driver 8.1.5. However I keep getting error ORA-24327. Any suggestions on how to fix this error?
<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Jayanta Ghosh ([email protected]):
Hi,
Does XML parser for PL/SQL work with Oracle 8.1.5? Did any one install the
same and if so what are steps to follow? I ran initjvm.sql to install
JServer and then tried to load jar files using loadjava, but it's giving
error. It's working fine with Oracle8.1.6.
Any idea?
Thanks,
Jayanta<HR></BLOCKQUOTE>
Oracle XML Parser has differents distributions for 8.1.5 and 8.1.6 databases, try the correct version, then runs the oraclexmlsqlload.csh from the lib directory of XSU distribution.
Best regards, Marcelo.
null -
Can we install web db with redhat 6.0 and oracle 8 ?
Is it possible to install web db on linux ?
Have any one succeeded in doing so ??
Any help or site regarding this ?I then tried a custom install of Dev. 6.0 but I removed product by product and the error always was "<product name> can't be installed into multiple oracle homes".
I deleted the whole Oracle 8.1.6 Client and just installed Dev. 6.0 into DEFAULT_HOME. I had a TNS-Error Can't resolve service name.
Copying the tnsnames.ora does not help. You have to manipulate it a litte bit, because Net8 TNSNAMES.ORA needs .world after the connect string.
My question now is: Is it a problem to connect with SQL-Plus 8.0.5 which was installed with Dev. 6.0 to a 8.1.6 Database ?
null -
Help with SL Server PHP and Oracle ?
(my apologies for post to wrong forum first)
I'm attempting to add oci8/instantclient to the "out-of-the-box" php distribution w/o recompiling (if at all possible)
have installed instantclient in /usr/local
installed oci8 from pecl and built w/instantclient
I THINK my main issue is adding the DYLIB- envt variables because I cannot find a reference to the required XML syntax
Has anyone got this bad boy working?Assuming you installed the Oracle Instant Client correctly, then try this as root (or issue sudo -s before):
mkdir -p /SourceCache
cd /SourceCache
curl -O http://www.opensource.apple.com/source/apachemod_php/apache_modphp-53/php-5.3.0.tar.bz2
tar xjf php-5.3.0.tar.bz2
cd /SourceCache/php-5.3.0/ext/oci8
phpize
MACOSXDEPLOYMENTTARGET=10.6 CFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch i386 -arch x86_64 -g -Os -pipe" CXXFLAGS="-arch i386 -arch x86_64 -g -Os -pipe" LDFLAGS="-arch i386 -arch x86_64 -bindatload" ./configure
make
make install
When done, edit/create /etc/php.ini and add:
extension=/usr/lib/php/extensions/no-debug-non-zts-20090626/oci8.so
next issue:
sudo apachectl graceful
with a little luck you are all set.
HTH,
Alex -
Using OCI8 driver with Sun ONE AS7 and Oracle 9
Hi
I am writing a bean that needs to access an Oracle Database.
I have defined in AS7 a connection pool, that looks like:
<jdbc-connection-pool steady-pool-size="8" max-pool-size="32" max-wait-time-
in-millis="60000" pool-resize-quantity="2" idle-timeout-in-seconds="300" is-isol
ation-level-guaranteed="false" is-connection-validation-required="false" connect
ion-validation-method="auto-commit" fail-all-connections="false" datasource-clas
sname="oracle.jdbc.driver.OracleDriver" name="Oracle_EUNDEV">
<property value="user" name="user"/>
<property value="passwd" name="password"/>
<property value="jdbc:oracle:oci8:@eundev:EUNDEV" name="URL"/>
</jdbc-connection-pool>
My code does a JNDI lookup DataSource, which succeeds.
However, the getConnection always fails, and throws the following exception:
[02/May/2003:16:28:06] WARNING ( 794): CORE3283: stderr: java.lang.NoSuchMethodException: setpassword
[02/May/2003:16:28:06] WARNING ( 794): CORE3283: stderr: at com.sun.enterprise.util.Utility.invokeSetMethodCaseInsensitive(Utility.java:373)
[02/May/2003:16:28:06] WARNING ( 794): CORE3283: stderr: at com.sun.enterprise.repository.JdbcConnectionPool.createDataSource(JdbcConnectionPool.java:238)
[02/May/2003:16:28:06] WARNING ( 794): CORE3283: stderr: at com.sun.enterprise.resource.JdbcUrlAllocator.createResource(JdbcUrlAllocator.java:80)
[02/May/2003:16:28:06] WARNING ( 794): CORE3283: stderr: at com.sun.enterprise.resource.IASNonSharedResourcePool.createSteadyResources(IASNonSharedResourcePool.java:856)
I used dbping tool from iplanet and could define a new connection and connect successfully,
But trying to use the existing connection always fail with the same 'MissingMethod' exception.
Can someone help?
Thanks a lot
Jean-Noel ColinHere is your problem:
jdbc:oracle:oci8:@eundev:EUNDEV
the last part is wrong. Driver will see the EUNDEV as password. After @ , just specify the tnsName that you have, no " : "
you do have a property called "password" already.
It should be something like this:
jdbc:oracle:oci8@eundev -
Conflict with Oracle_Home in OC4J and Oracle Client
Hi,
I've installed the Oracle Container 4 Java - Extended and I have also installed the oracle client. Since the OC4J - Extended use the oracle_home and the oracle client use the oracle_home, a conflict arise. When i try to set the oracle_home to the directory where I installed the java sdk 5.0, my application server run but I cannot connect to the database server. When I set the oracle_home to the path where my oracle client resides, I can connect to the database but I cannot run my application server which is needed during the portal development. Is there any way that I can run both the application server and I can connect to the database server? Your help is highly appreciated.Hello,
How do you start your OC4J?
The simplest way is to create a command line script and set the ORACLE_HOME there just before starting the container. Do not change the O_H at the OS level for OC4J.
Regards
Tugdual Grall
Maybe you are looking for
-
Hi, i'm developing an applicatin who uses Modules. The modules load and unload well and after unload a module, i can see in the profiler, the garbage collection remove the instance. so far so good. now, i'm using a popup or alert in my modul (for dat
-
Problems installing Dreamweaver CS3
Hi, I've been trying to install Dreamweaver CS3 on my Vista computer, home premium and I've already spent numerous hours installing and uninstalling the product! The problem is that the installer fails to install Adobe Cue Client CS3. I've googled th
-
On selection A I5Grid Row initiate I5Grid B by passing parameter column 3 of selected Row
Dear Guru, I want to initiate I5Grid B on selection of I5Grid A Row hard code value of column 3. Which function I has to use for button I can use press function but on I5Grid click which function or code will be applicable. Thanks Muhammad
-
HP Pavilion Media Center m8200n Desktop PC/ recovery disks FAIL
I had to replace a crashed hard drive. BIOS shows that it recognizes the new drive. Can NOT boot system. Error message says disks (obtained upon purchase of computer) do not belong to this pc. What? I'm under the impression that it should not ma
-
My Macbook Air storage is messed up.
I wanted to download the new Itunes to my computer. I didn't have enough storage to, and I noticed that movies were taking up 25 GBS on my computer. I put all of the movies on an external drive and deleted them off my macbook air. I checked my stoage