Jdbc openProxyConnection and MapViewer (or any packaged EAR)
Hi,
I'm cross-posting this from the "Oracle Spatial" forum to here, as the question actually applies to any packaged EAR where we don't have access to the source code.
Our requirement is to authenticate against an LDAP server, and then bring up MapViewer to access data on the Oracle DB. Once in the DB, we want to know (and record) who the real user is (i.e. charlie_brown), even though MapViewer connects via the data_source in mapViewerConfig.xml (i.e. gis_middletier).
The additional complication is the use of connection pooling in the middle-tier, which uses a generic account upon which the connection is made.
So... in a nutshell, is there a way to plug into MapViewer something like "conn.openProxyConnection" in the JDBC connection? If not, how are people passing in the authenticated user name through MapViewer generic datasource user, such that the authorizations are appropriate for the authenticated user (not the connection pool user and not the MapViewer data_source).
TIA,
Gary
Hi, it is recommended that you deploy MapViewer to an OC4J instance external to JDeveloper. MapViewer is not a small application and it may become memory intensive depending on the complexity of your map layers, as such it is better running in its own J2EE container. The embedded OC4J should only be used to run your JSP/ADF pages under development/testing. Also, deploying MapViewer to the embedded OC4J does not in any way simplify development, it may actually complicate things as the embedded OC4J is constantly being started/stopped, unlike a standalone OC4J which once started stays up unaffected by your JDeveloper activities.
thanks
LJ
Similar Messages
-
i have the following problem: i lost my cs6 Adobe Production Premium installer dvds and the serials within the package, after all i logged here into adobe and cant find any product in my profile, so i am not able to see my serials or my installations i have on my macbookpro. Can you help me to find out where i am registerd?
If your registrations do not show at https://www.adobe.com/account.html you will not get help in an open forum
You MAY get help at Contact Customer Care
-Select your product and what you need help with
-Click on the blue box "Still need help? Contact us" -
is ipod shuffle bluetooth enabled and are there any compatable - ON ear- wireless, headphones ..that work with ipod shuffle?? Thanks
okay,tyvm for the reply.
-
Oracle 10.1.0 jdbc driver and 9i Database
Are there any known issues with using the Oracle 10.1.0 jdbc drivers and 9i Database. I was lead to believe that the Jdbc drivers are backward compatible.
ThanksSorry for not including my error:
Hello all,
I am getting an error "Bigger type length than Maximum" when calling a stored procedure that returns a small result set. I am not working with BLOBs or CLOBs and cannot find anything on the web that addresses my specific situation.
I would greatly appreciate any help available in solving this problem.
Here is my data access object:
package my.app.access;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import oracle.jdbc.OracleTypes;
import oracle.jdbc.OracleTypes.*;
import my.app.beans.Person;
import my.app.util.Database;
public class PersonAccess {
public Person getPerson(Person person) throws SQLException, Exception {
Database db = new Database();
Connection con = db.connect();
ResultSet rs;
CallableStatement cs = con
.prepareCall("{call SP_GET_PERSON_BY_USER_ID (?,?)}");
cs.setString(1, person.getUserId());
cs.registerOutParameter(2, oracle.jdbc.OracleTypes.CURSOR);
cs.execute(); // ################### ERROR HAPPENS ON THIS LINE
rs = (ResultSet) cs.getObject(2);
if (rs.next() == true) {
person.setId(new Integer(rs.getString("id")).intValue());
person.setFirstName((String) rs.getString("first_name"));
person.setLastname((String) rs.getString("last_name"));
person.setPhoneNumber((String) rs.getString("phone_number"));
person.setEmailAddress((String) rs.getString("email_addr"));
person.setRoleId(new Integer(rs.getInt("role_id")).intValue());
//this.roleName = rs.getString("role_name");
person.setPassword((String) rs.getString("password"));
person.setAgencyId(new Integer(rs.getInt("agency_id")).intValue());
if (rs.getString("account_disabled").equals("1"))
person.setAccountDisabled(true);
if (rs.getString("pwd_change_reqd").equals("0"))
person.setPasswordChangeRequired(false);
return person;
And here is a test object:
package my.app.access;
import my.app.beans.*;
public class testAccess {
* @param args
public static void main(String[] args) {
// TODO Auto-generated method stub
PersonAccess pa = new PersonAccess();
Person person = new Person();
person.setUserId("jrlaughlin");
try {
pa.getPerson(person);
} catch (Exception e) {
e.printStackTrace();
System.out.println("done");
And here is the output from this test app
java.sql.SQLException: Bigger type length than Maximum
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:161)
at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:884)
at oracle.jdbc.driver.T4CMAREngine.buffer2Value(T4CMAREngine.java:2230)
at oracle.jdbc.driver.T4CMAREngine.unmarshalUB4(T4CMAREngine.java:1146)
at oracle.jdbc.driver.T4CTTIoac.unmarshal(T4CTTIoac.java:215)
at oracle.jdbc.driver.T4C8TTIuds.unmarshal(T4C8TTIuds.java:121)
done
at oracle.jdbc.driver.T4CTTIdcb.receiveCommon(T4CTTIdcb.java:125)
at oracle.jdbc.driver.T4CTTIdcb.receiveFromRefCursor(T4CTTIdcb.java:103)
at oracle.jdbc.driver.T4CResultSetAccessor.unmarshalOneRow(T4CResultSetAccessor.java:165)
at oracle.jdbc.driver.T4CTTIrxd.unmarshal(T4CTTIrxd.java:787)
at oracle.jdbc.driver.T4CTTIrxd.unmarshal(T4CTTIrxd.java:704)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:526)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:179)
at oracle.jdbc.driver.T4CCallableStatement.execute_for_rows(T4CCallableStatement.java:782)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1027)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2887)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:2978)
at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4102)
at my.app.access.PersonAccess.getPerson(PersonAccess.java:68)
at my.app.access.testAccess.main(testAccess.java:17)
I am only having this problem when using the 10g jdbc driver, 9.2.0.4 and up are fine.
Thanks again..... -
What driver should I use for O8.1.6 using RedHat 6.2 Linux
Thanks
P.S. Please respond to [email protected]the jdbc driver readme file:
Oracle JDBC Drivers release 8.1.7 README
========================================
What Is New In This Release?
These are the major new features/enhancements in this release:
- Statement Caching
* Implicit Statement Caching
* Explicit Statement Caching
- Full XA Support
* Including XA Recover and Forget
* OracleXid independent implementation for 8.1.7 servers and above
- Connection Caching
* New Scheme (FIXED_WAIT_SCHEME)
* Statement Caching coupling
- PLSQL Tables Support for Scalar types (for OCI driver only)
- User-Defined Datatypes Performance Enhancement
- Object Types Extensions
* Serializable Type Descriptors
* Accessing collection elements in Java primitive types
* Buffering and indexing collection elements
* Creating empty Lobs
- Support for 56-bit encryption algorithms for connection using
the Thin JDBC driver.
These are the major bug fixes:
- BUG-903011
The JDBC Thin driver could not be used with usernames that
contained Latin-1 characters when the server used UTF8 character
set. This problem has been fixed in release 8.1.7.
- BUG-1052489
There was a problem with PreparedStatements being executed
multiple times and the length of one of the bind variables (bound
with setBinaryStream or setCharacterStream) increased. This
problem has been fixed in release 8.1.7.
- BUG-1069768
There was a problem with insertion of ADTs with an image bigger
than 4K with the JDBC Thin driver. This problem has been fixed
in release 8.1.7.
- BUG-1247015
When using ResultSet::getObject() to access CHAR or VARCHAR columns
in scrollable result sets, ResultSet::getObject() returned null.
- BUG-1349713
getString() of scrollable result sets returns incorrect values if
the column data contains multibyte characters.
Driver Versions
These are the driver versions in the 8.1.7 release:
- JDBC OCI Driver 8.1.7
Client-side JDBC for use on a machine where OCI 8.1.7 is installed.
- JDBC Thin Driver 8.1.7
100% Java client-side JDBC for use in applets and applications.
- JDBC Thin Server-side Driver 8.1.7
JDBC for use by Java Stored Procedures or by Java CORBA objects
running in Oracle 8.1.7. This driver is typically used in a middle
tier server.
- JDBC Server-side Internal Driver 8.1.7
Server-side JDBC for use by Java Stored procedures or by Java CORBA
objects running in Oracle 8.1.7. This driver used to be called the
"JDBC Kprb Driver".
For complete documentation, please refer to "JDBC Developer's Guide
and Reference".
Contents Of This Release
The [ORACLE_HOME]/jdbc/lib directory contains:
- classes111.zip
Classes for use with JDK 1.1.x. It contains the JDBC driver
classes except classes necessary for NLS support in Object and
Collection types.
- nls_charset11.zip
NLS classes for use with JDK 1.1.x. It contains classes necessary
for NLS support in Object and Collection types.
- classes111_g.zip
Same as classes111.zip, except that classes were compiled with
"javac -g".
- classes12.zip
Classes for use with JDK 1.2.x. It contains the JDBC driver
classes except classes necessary for NLS support in Object and
Collection types.
- nls_charset12.zip
NLS classes for use with JDK 1.2.x. It contains classes necessary
for NLS support in Object and Collection types.
- classes12_g.zip
Same as classes12.zip, except that classes were compiled with
"javac -g".
Note that the packaging of the JDBC classes to support NLS was
changed in 8i. The classes pertaining to specific character sets
support in Object and Collection types have been separated from the
basic zip files. These NLS classes are now packaged into the
extension zip files. This allows the user to include the NLS
classes only if necessary. Please refer to the "NLS Extension Zip
Files (for client-side only)" for further details.
[ORACLE_HOME]/lib directory contains libocijdbc8.so and
libocijdbc8_g.so (on Solaris), which are the shared libraries used by
the JDBC OCI driver.
[ORACLE_HOME]/jdbc/doc/javadoc.tar contains the JDBC Javadoc. This
release contains a beta release of the Javadoc files for the public
API of the public classes of Oracle JDBC.
[ORACLE_HOME]/jdbc/demo/demo.tar contains sample JDBC programs.
Demo programs written for JDK 1.1 must be modified to run in JDK 1.2.
Please refer to the "Support For JDK 1.2" for porting details.
NLS Extension Zip Files (for client-side only)
The JDBC Server-side Internal Driver provides complete NLS support.
It does not require any NLS extension zip files, nls_charset*.zip.
Discussions in this section do not apply to the JDBC Server-side
Internal Driver. You can skip this section if you only use the
Server-side Internal Driver.
The basic zip files, classes111.zip and classes12.zip, contain all the
necessary classes to provide complete NLS support for:
- Oracle Character sets for CHAR/VARCHAR/LONGVARCHAR/CLOB type data
that is not retrieved or inserted as a data member of an Oracle 8
Object or Collection type.
- NLS support for CHAR/VARCHAR data members of Objects and
Collections for a few commonly used character sets. These
character sets are: US7ASCII, WE8DEC, WE8ISO8859P1 and UTF8.
Users must include the appropriate extension zip in their CLASSPATH
if utilization of other character sets in CHAR/VARCHAR data members
of Objects/Collections is desired. It is important to note that
extension zip files are large in size due to the requirement of
supporting a large number of character sets. Users may choose to
include only the necessary classes from the extension zip file.
To do so, users can first unzip the extension zip file, and then put
only the necessary classes in the CLASSPATH. The character set
extension class files are named in the following format:
CharacterConverter<OracleCharacterSetId>.class
where <OracleCharacterSetId> is the hexidecimal representation of the
Oracle character set id of the corresponding character set.
Installation
Please do not try to put multiple versions of the Oracle JDBC drivers
in your CLASSPATH. The Oracle installer installs the JDBC Drivers in
the [ORACLE_HOME]/jdbc directory.
Setting Up Your Environment
On Win95/Win98/NT:
- Add [ORACLE_HOME]\jdbc\lib\classes111.zip and
[ORACLE_HOME]\jdbc\lib\nls_charset11.zip to your CLASSPATH.
(Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
- Add [ORACLE_HOME]\jdbc\lib to your PATH.
On Solaris/Digital Unix:
- Add [ORACLE_HOME]/jdbc/lib/classes111.zip and
[ORACLE_HOME]/jdbc/lib/nls_charset11.zip to your CLASSPATH.
(Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
- Add [ORACLE_HOME]/jdbc/lib to your LD_LIBRARY_PATH.
On HP/UX:
- Add [ORACLE_HOME]/jdbc/lib/classes111.zip and
[ORACLE_HOME]/jdbc/lib/nls_charset11.zip to your CLASSPATH.
(Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
- Add [ORACLE_HOME]/jdbc/lib to your SHLIB_PATH and LD_LIBRARY_PATH.
On AIX:
- Add [ORACLE_HOME]/jdbc/lib/classes111.zip and
[ORACLE_HOME]/jdbc/lib/nls_charset11.zip to your CLASSPATH.
(Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
- Add [ORACLE_HOME]/jdbc/lib to your LIBPATH and LD_LIBRARY_PATH.
Some Useful Hints In Using the JDBC Drivers
Please refer to "JDBC Developer's Guide and Reference" for details
regarding usage of Oracle's JDBC Drivers. This section only offers
useful hints. These hints are not meant to be exhaustive.
These are a few simple things that you should do in your JDBC program:
1. Import the necessary JDBC classes in your programs that use JDBC.
For example:
import java.sql.*;
import java.math.*;
2. Register the Oracle driver before before calling other JDBC APIs.
(This is not needed if you are using the JDBC Server-side Internal
Driver because registration is done automatically in the server.)
To register the Oracle driver, make sure the following statement
is executed at least once in your Java session:
DriverManager.registerDriver(
new oracle.jdbc.driver.OracleDriver());
3. Open a connection to the database with the getConnection call.
Different connection URLs should be used for different JDBC
drivers. The following examples demonstrate the different URLs.
For the JDBC OCI8 Driver:
Connection conn = DriverManager.getConnection(
"jdbc:oracle:oci8:@<database>",
"scott", "tiger");
where <database> is either an entry in tnsnames.ora or a SQL*net
name-value pair.
For the JDBC Thin Driver, or Server-side Thin Driver:
Connection conn = DriverManager.getConnection(
"jdbc:oracle:thin:@<database>",
"scott", "tiger");
where <database> is either a string of the form
<host>:<port>:<sid> or a SQL*net name-value pair.
For the JDBC Server-side Internal Driver:
Connection conn = DriverManager.getConnection(
"jdbc:oracle:kprb:");
Note that the trailing ':' character is necessary. When you use
the Server-side Internal Driver, you always connect to the
database you are executing in. You can also do this:
Connection conn
= new oracle.jdbc.driver.OracleDriver().defaultConnection();
Java Stored Procedures
Please note that examples for callins and instance methods using Oracle
8 Object Types are provided in:
[ORACLE_HOME]/javavm/demo/demo.zip
Once unzipped, the directory containing the examples is:
[ORACLE_HOME]/javavm/demo/examples/jsp
Known Problems/Limitations In This Release
The following is a list of known problems/limitations:
1. There is a limitation regarding the use of stream input for LOB
types. Stream input for LOB types can only be used for 8.1.7
JDBC OCI driver connecting to an 8.1.7 Oracle server. The use of
stream input for LOB types in all other configurations may result
in data corruption. PreparedStatement stream input APIs include:
setBinaryStream(), setAsciiStream(), setUnicodeStream(),
setCharacterStream() and setObject().
2. BUG-1018797
Extra characters may be appended to the end of a CLOB value
mistakenly under the following conditions:
- setCharacterStream() is used to insert a CLOB value, and
- The Oracle server uses multi-byte character set.
(See 1 for limitation of stream input for LOB type.)
3. Programs can fail to open 16 or more connections using our
client-side drivers at any one time. This is not a limitation
caused by the JDBC drivers. It is most likely that the limit of
per-process file descriptors is exceeded. The solution is to
increase the limit.
4. The Server-side Internal Driver has the following limitation:
- Data access for LONG and LONG RAW types is limited to 32K of
data.
- Inserts of Object Types (Oracle 8 Objects, Collections and
References) will not work when the database compatibility mode
is set to 8.0. This limitation does not apply when the
compatibility mode is set to 8.1.
- Statement.cancel() is not implemented.
- In a chain of SQLExceptions, only the first one in the chain
will have a getSQLState value.
5. The JDBC OCI driver on an SSL connection hangs when the Java
Virtual Machine is running in green threads mode. A work-around
is to run the Java Virtual Machine in native threads mode.
6. Date-time format, currency symbol and decimal symbols are always
presented in American convention.
7. When using OracleStatement.defineColumnType(), it is not necessary
to define the column type to be the same as the column type
declared in the database. If the types are different, the
retrieved values are converted to the type specified in
defineColumnType.
Note: Most reasonable conversions work, but not all. If you find
a conversion that you think is reasonable, but that does not wo rk,
please submit a TAR to Oracle Support.
8. The utility dbms_java.set_output or dbms_java.set_stream that is
used for redirecting the System.out.println() in JSPs to stdout
SHOULD NOT be used when JDBC tracing is turned on. This is
because the current implementation of dbms_java.set_output and
set_stream uses JDBC to write the output to stdout. The result
would be an infinite loop.
9. The JDBC OCI and Thin drivers do not read CHAR data via binary
streams correctly. In other word, using getBinaryStream() to
retrieve CHAR data may yield incorrect results. A work-around is
to use either getCHAR() or getAsciiStream() instead. The other
alternative is to use getUnicodeStream() although the method is
deprecated.
10. BUG-899078 (since 8.1.6 SDK):
The JDBC Server-side Internal driver has extra space padding with
PL/SQL CHAR OUT (2 to 3 space depending on character set).
Problem occurs in most of the multibyte database character set
except UTF8.
11. There is a limitation for Triggers implemented in Java and Object
Types. It only affects the IN argument types of triggers
implemented using Java on the client-side. The restriction does
not apply to JDBC programs running inside the server. Triggers
implemented as Java methods cannot have IN arguments of Oracle 8
Object or Collection type. This means the Java methods used to
implement triggers cannot have arguments of the following types:
- java.sql.Struct
- java.sql.Array
- oracle.sql.STRUCT
- oracle.sql.ARRAY
- oracle.jdbc2.Struct
- oracle.jdbc2.Array
- any class implementing oracle.jdbc2.SQLData or
oracle.sql.CustomDatum
12. The scrollable result set implementation has the following
limitation:
- setFetchDirection() on ScrollableResultSet is not supported.
- refreshRow() on ScrollableResultSet does not support all
combinations of sensitivity and concurrency. The following
table depicts the supported combinations.
Support Type Concurrency
no TYPE_FORWARD_ONLY CONCUR_READ_ONLY
no TYPE_FORWARD_ONLY CONCUR_UPDATABLE
no TYPE_SCROLL_INSENSITIVE CONCUR_READ_ONLY
yes TYPE_SCROLL_INSENSITIVE CONCUR_UPDATABLE
yes TYPE_SCROLL_SENSITIVE CONCUR_READ_ONLY
yes TYPE_SCROLL_SENSITIVE CONCUR_UPDATABLE
13. BUG-1324918
Repeatedly updating a clob with jdbc-oci, prepared statement,
and setCharacterStream consumes the temporary tablespace. If
you repeatedly update the clob, either the temp tablespace will
continue to grow, or you may get a Exception in thread "main"
java.sql.SQLException: ORA-01652: unable to extend segment if
you have a limit on the tablespace size. The work-around is to
use oracle.sql.CLOB::setCharacterOutputStream() instead. -
How to install a new jdbc driver and get it in a list to select.
I have placed the driver in the directory with the rest of the drivers. and followed the instructions below.
The HUGE missing part is typing in the driver name. WHERE? I there isn't a field that I can edit to add the name.
The URL and connection string are no problem, but how do I get ODI to recognize the new driver is there and how can I select it?
This has to be something simple that I am missing. Any help would be appreciated.
Follow these steps to add a new driver for Oracle Data Integrator.
■Copy the driver packages (.zip or .jar files) to the /drivers sub-directory under the Oracle
Data Integrator installation folder (ODI_Home\oracledi\drivers) if they are not already referenced in the Java classpath.
Oracle Data Integrator will automatically detect the driver the next time it starts and will add these packages to the classpath. This must be done on each machine executing an Oracle Data Integrator component.
■If the driver is used to connect a repository and you wish to use Metadata Navigator to
connect to this repository, then copy the driver's packages in the /WEB-INF/lib sub- directory of the Metadata Navigator installation folder, then restart the application server.
Refer to the driver's documentation for specific setup operations.
Drivers added to Oracle Data Integrator do not automatically appear in the list of drivers and URL in the Oracle Data Integrator GUI. The URL and drivers must be typed in manually in the appropriate fields, using the syntax provided in the drivers' documentations.
The automatic detection of the drivers does not work on certain systems, including Windows 95 andDid you check this out:
http://odiexperts.com/manual-entry-in-odi-driver-list -
JDBC, JMS and EJB transactions - possible problem?
Hello,
I am using Oracle 9, Weblogic 8.1 SP 4, MyEclipse and
XDoclet.
In my current project I have the following piece of code
in one of my message driven beans (code cited as pseudocode
without unnecessary details):
* @ejb.bean name="MyMessageProcessor"
* display-name="Display name for a MyMessageProcessor"
* jndi-name="ejb/MyMessageProcessor"
* description="Bean MyMessageProcessor"
* destination-type="javax.jms.Queue"
* transaction-type="Container"
* acknowledge-mode="Auto-acknowledge"
* subscription-durability="Durable"
* generate="false"
* @ejb.transaction type="Required"
public class MyMessageProcessor implements MessageDrivenBean, MessageListener {
public void onMessage(Message msg) {
try {
//obtaining connections to two different databases via JNDi
java.sql.Connection connOne =
((DataSource)ctx.lookup("DataSourceOne")).getConnection();
java.sql.Connection connTwo =
((DataSource)ctx.lookup("DataSourceTwo")).getConnection();
// performing some UPDATEs and INSERTs on connOne and connTwo
// calling some other methods of this bean
//creating the reply JMS message and sending it to another JMS queue
Message msgTwo = this.createReplyMessage(msg)
this.queueSender.send(msgTwo);
//commiting everything
this.queueSession.commit();
} catch (Exception ex) {
try {
if (this.queueSession!=null) this.queueSession.rollback();
} catch (JMSException JMSEx) {};
this.context.setRollbackOnly();
Some days ago (before the final remarks from my client) there used to be only one DataSource configurated on the basis of the
connection pool with non-XA jdbc driver. Everything worked fine
including the transactions (if anything wrong happend not only wasn't the replymessage sent, but also no changes were written
to database and the incomming message was thrown back to the my bean's
queue).
When I deployed the second DataSource I was informed by an error message, that only one non-transactional resource may
participate in a global transaction. When I changed both datasources
to depend on underlying datasources with transatcional (XA) jdbc drivers, everything stopped working. Even if
EJB transaction was theoretically successfully rolledbacked, the changed were written to the database
and the JMS message wasn't resent to the JMS queue.
So here are my questions:
1. How to configure connection pools to work in such situations? What JDBC drivers should I choose?
Are there any global server configurations, which may influence this situation?
2. Which jdbc drivers should I choose so that the container was able to rollback the database transactions
(of course, if necessary)?
3. Are there any JMS Queue settings, which would disable the container to send message back to the
queue in case of setRollbackOnly()? How should be the Queue configurated?
As I am new to the topic and the deadline for the project seems to be too close I would be grateful
for any help.
This message was sent to EJB list and JDBC list.
Sincerely yours,
Marcin ZakidalskiHi,
I found these information extremely useful and helpful.
The seperate transaction for sending messages was, of course, unintentional. Thanks a lot.
Anyway, I still have some problems. I have made some changes to the
code cited in my previous mail. These changes included changing QueueSessions
to non-transactional. I also set the "Honorate global transactions" to true.
I am using XA JDBC driver. After setting "Enable local transactions" to false
(I did it, because I assume that JDBC transactions should be part on the global
EJB transaction) I got the following error:
java.sql.SQLException: SQL operations are not allowed with no global transaction by default for XA drivers. If the XA
driver supports performing SQL operations with no global transaction, explicitly allow it by setting
"SupportsLocalTransaction" JDBC connection pool property to true. In this case, also remember to complete the local
transaction before using the connection again for global transaction, else a XAER_OUTSIDE XAException may result. To
complete a local transaction, you can either set auto commit to true or call Connection.commit() or Connection.rollback().
I have also inspected the calls of methods of bean inside of onMessage() method just to check, whether
the transactions are correctly initialized (using the weblogic.transaction.Transaction class).
My questions are as follows:
1. Any suggestions how to solve it? I have gone through the google answers on that problem and only
thing I managed to realize that JDBC must start its own transaction. Is there any way to prohibit it
from doing that? Can using setAutocommit(true/false) change the situation for better?
2. How to encourage the JDBC driver to be a part of EJB transaction?
3. As I have noticed each of ejb method has its own transactions (transactions have different
Xid). Each method of the bean has "required" transaction attribute. Shouldn't it work in such
way that if already started transaction exists it is used by the called method?
4. The DataSources are obtained in my application via JNDI and in the destination environment I will have slight
impact on the configuration of WebLogic. What is least problematic and most common WebLogic configuration which would
enable JDBC driver to participate in the EJB transaction? Is it the WebLogic configuration problem or can it be
solved programmically?
Currently my module works quite fine when "enable local transactions" for DataSources is set to true, but this way
I am loosing the ability to perform all actions in one transaction.
Any suggestions / hints are more than welcomed. This message was posted to jdbc list and ejb list.
Marcin -
Problem with Linus Ubuntu 7.04 and Oracle-Xe debian package
Hi all,
Installed Oracle 10g XE on my Ubuntu 7.04 using universal Debian Package : oracle-xe-universal_10.2.0.1-1.0_i386.deb. No problem during the installation . After finished the installation, I configured the database to use port 6000 and its password (Listener port set to default).
But when I tried to access the database home page using "http://127.0.0.1:6000/apex", it cannot be accessed. Then I tried to verify my database server using /etc/init.d/oracle-xe status and here's the output:(before it, I make user the database was realy online by typing /etc/init.d/oracle-xe start)
###########################333###
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 09-AUG-2007 22:45:07
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 2: No such file or directory
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=wks-082)(PORT=1521)))
TNS-12545: Connect failed because target host or object does not exist
TNS-12560: TNS:protocol adapter error
TNS-00515: Connect failed because target host or object does not exist
Linux Error: 110: Connection timed out
then I tried to open the log in /usr/lib/oracle/xe/app/oracle/admin/xe/bdump/alert_XE.log and here is the output
Thu Aug 9 14:54:14 2007
Starting ORACLE instance (normal)
Cannot determine all dependent dynamic libraries for /proc/self/exe
Unable to find dynamic library libocr10.so in search paths
RPATH = /ade/aime1_build2101/oracle/has/lib/:/ade/aime1_build2101/oracle/lib/:/ade/aime1_build2101/oracle/has/lib/:
LD_LIBRARY_PATH is not set!
The default library directories are /lib and /usr/lib
Unable to find dynamic library libocrb10.so in search paths
Unable to find dynamic library libocrutl10.so in search paths
Unable to find dynamic library libocrutl10.so in search paths
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Shared memory segment for instance monitoring created
Picked latch-free SCN scheme 2
Using LOG_ARCHIVE_DEST_10 parameter default value as USE_DB_RECOVERY_FILE_DEST
Autotune of undo retention is turned on.
IMODE=BR
ILAT =10
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Thu Aug 9 14:54:27 2007
ksdpec: called for event 13740 prior to event group initialization
Starting up ORACLE RDBMS Version: 10.2.0.1.0.
System parameters with non-default values:
sessions = 49
sga_target = 146800640
control_files = /usr/lib/oracle/xe/oradata/XE/control.dbf
compatible = 10.2.0.1.0
db_recovery_file_dest = /usr/lib/oracle/xe/app/oracle/flash_recovery_area
db_recovery_file_dest_size= 10737418240
undo_management = AUTO
undo_tablespace = UNDO
remote_login_passwordfile= EXCLUSIVE
dispatchers = (PROTOCOL=TCP) (SERVICE=XEXDB)
shared_servers = 4
job_queue_processes = 4
background_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/bdump
user_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/udump
core_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/cdump
audit_file_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/adump
db_name = XE
open_cursors = 300
os_authent_prefix =
pga_aggregate_target = 41943040
Thu Aug 9 14:54:33 2007
Errors in file /usr/lib/oracle/xe/app/oracle/admin/XE/udump/xe_ora_7532.trc:
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []
USER: terminating instance due to error 600
Instance terminated by USER, pid = 7532
Thu Aug 9 14:54:35 2007
Starting ORACLE instance (normal)
Cannot determine all dependent dynamic libraries for /proc/self/exe
Unable to find dynamic library libocr10.so in search paths
RPATH = /ade/aime1_build2101/oracle/has/lib/:/ade/aime1_build2101/oracle/lib/:/ade/aime1_build2101/oracle/has/lib/:
LD_LIBRARY_PATH is not set!
The default library directories are /lib and /usr/lib
Unable to find dynamic library libocrb10.so in search paths
Unable to find dynamic library libocrutl10.so in search paths
Unable to find dynamic library libocrutl10.so in search paths
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Picked latch-free SCN scheme 2
Using LOG_ARCHIVE_DEST_10 parameter default value as USE_DB_RECOVERY_FILE_DEST
Autotune of undo retention is turned on.
IMODE=BR
ILAT =10
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Thu Aug 9 14:54:46 2007
ksdpec: called for event 13740 prior to event group initialization
Starting up ORACLE RDBMS Version: 10.2.0.1.0.
System parameters with non-default values:
sessions = 49
sga_target = 146800640
control_files = /usr/lib/oracle/xe/oradata/XE/control.dbf
compatible = 10.2.0.1.0
db_recovery_file_dest = /usr/lib/oracle/xe/app/oracle/flash_recovery_area
db_recovery_file_dest_size= 10737418240
undo_management = AUTO
undo_tablespace = UNDO
remote_login_passwordfile= EXCLUSIVE
dispatchers = (PROTOCOL=TCP) (SERVICE=XEXDB)
background_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/bdump
user_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/udump
core_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/cdump
audit_file_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/adump
db_name = XE
open_cursors = 300
os_authent_prefix =
pga_aggregate_target = 41943040
Thu Aug 9 14:54:51 2007
Errors in file /usr/lib/oracle/xe/app/oracle/admin/XE/udump/xe_ora_7551.trc:
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []
USER: terminating instance due to error 600
Instance terminated by USER, pid = 7551
Thu Aug 9 14:54:53 2007
Are there anyone who can help me? I really have no idea since I'm a newbie here, both linux and oracle. Any hint are welcome, thanks in advance.
Regards,
Rudi SadriaThx for the help, I already verify the /etc/hosts and these are the output:
127.0.0.1 localhost
127.0.0.1 wks-082
127.0.0.1 localhost.localdomain localhost localhost.domain
127.0.0.1 hostname hostname.domain
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
I check the listener status and here's the output:
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 10-AUG-2007 15:14:45
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
STATUS of the LISTENER
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date 10-AUG-2007 15:14:39
Uptime 0 days 0 hr. 0 min. 6 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service XE
Listener Parameter File /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/listener.ora
Listener Log File /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=wks-082)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "XE" has 1 instance(s).
Instance "XE", status BLOCKED, has 1 handler(s) for this service...
Service "XE_XPT" has 1 instance(s).
Instance "XE", status BLOCKED, has 1 handler(s) for this service...
The command completed successfully
and here's the alert_XE.log
Fri Aug 10 15:30:59 2007
Starting ORACLE instance (normal)
Cannot determine all dependent dynamic libraries for /proc/self/exe
Unable to find dynamic library libocr10.so in search paths
RPATH = /ade/aime1_build2101/oracle/has/lib/:/ade/aime1_build2101/oracle/lib/:/ade/aime1_build2101/oracle/has/lib/:
LD_LIBRARY_PATH is not set!
The default library directories are /lib and /usr/lib
Unable to find dynamic library libocrb10.so in search paths
Unable to find dynamic library libocrutl10.so in search paths
Unable to find dynamic library libocrutl10.so in search paths
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Picked latch-free SCN scheme 2
Using LOG_ARCHIVE_DEST_10 parameter default value as USE_DB_RECOVERY_FILE_DEST
Autotune of undo retention is turned on.
IMODE=BR
ILAT =10
LICENSE_MAX_USERS = 0
SYS auditing is disabled
ksdpec: called for event 13740 prior to event group initialization
Starting up ORACLE RDBMS Version: 10.2.0.1.0.
System parameters with non-default values:
sessions = 49
__shared_pool_size = 41943040
__large_pool_size = 0
sga_target = 146800640
control_files = /usr/lib/oracle/xe/oradata/XE/control.dbf
__db_cache_size = 96468992
compatible = 10.2.0.1.0
db_recovery_file_dest = /usr/lib/oracle/xe/app/oracle/flash_recovery_area
db_recovery_file_dest_size= 10737418240
undo_management = AUTO
undo_tablespace = UNDO
remote_login_passwordfile= EXCLUSIVE
dispatchers = (PROTOCOL=TCP) (SERVICE=XEXDB)
shared_servers = 4
job_queue_processes = 4
background_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/bdump
user_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/udump
core_dump_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/cdump
audit_file_dest = /usr/lib/oracle/xe/app/oracle/admin/XE/adump
db_name = XE
open_cursors = 300
os_authent_prefix =
pga_aggregate_target = 41943040
PMON started with pid=2, OS id=7328
PSP0 started with pid=3, OS id=7330
MMAN started with pid=4, OS id=7332
DBW0 started with pid=5, OS id=7334
LGWR started with pid=6, OS id=7336
CKPT started with pid=7, OS id=7338
SMON started with pid=8, OS id=7340
RECO started with pid=9, OS id=7342
CJQ0 started with pid=10, OS id=7344
MMON started with pid=11, OS id=7348
MMNL started with pid=12, OS id=7350
Fri Aug 10 15:31:00 2007
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
starting up 4 shared server(s) ...
Oracle Data Guard is not available in this edition of Oracle.
Fri Aug 10 15:31:01 2007
ALTER DATABASE MOUNT
Fri Aug 10 15:31:01 2007
ORA-00202: control file: '/usr/lib/oracle/xe/oradata/XE/control.dbf'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Fri Aug 10 15:31:01 2007
ORA-205 signalled during: ALTER DATABASE MOUNT...
and then I open the SQL* plus and type some command
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/nls_lang.sh: 114: [[: not found
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/nls_lang.sh: 114: [[: not found
SQL*Plus: Release 10.2.0.1.0 - Production on Fri Aug 10 15:32:38 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn / as sysdba
Connected.
SQL> select status from v$instance
2 ;
STATUS
STARTED
But I'm still cannot accessed my "http://localhost:6000/apex". Are there any possibilities that my browser block it? or I need to change the port?
Thx a lot for your help
Regards,
Rudi Sadria -
How to install apex (and mapviewer) company wide ?
Hi,
Until now I've developed some applications on a laptop.
I want to bring them to my company - in this stage as a "pilot" with a limited number of employees having access.
What do I need: a database, apex installed and - now is coming what I want to know - application server or http-server ?
For your information: I'm using also oracle spatial and mapviewer to present data on the map of the netherlands. Therefore I want to install spatial, and mapviewer. An pre-installed oc4j is included in that installation.
How to combine these issues ?
Thanks in advance for any reaction.
LeoHello Leo,
I'm not sure these issues should be combined. You are talking about 3 different Oracle products, each with its own pre-installation requirements. Regarding oracle spatial and MapViewer, you'll need to ask your DBA (or someone with the proper experience in this forum can help you).
As for ApEx, you'll need a db version 9.2.0.3 or higher, and you'll need the OHS (Oracle HTTP Server) which is part of the db companion CD, or can be downloaded from OTN.
As far as I know, Oracle MapViewer is part of the Oracle Application server, just like OC4J and OHS. In this case, you can install all the needed modules of the Application Server, and then installed ApEx. The ApEx installation guide includes information on how to configure the HTTP server, as part of the Application Server.
Hope this helps,
Arie.
. -
Hello,
In order to configure JMS Receiver Adapter to access Websphere Application Server 7.0, I have recently deployed file com.sap.aii.adapter.lib.sca with the following libraries:
com.sap.aii.adapter.lib_api.jar
com.ibm.ws.ejb.thinclient_7.0.0.jar
com.ibm.ws.orb_7.0.0.jar
com.ibm.ws.sib.client.thin.jms_7.0.0.jar
com.ibm.ws.runtime.jar
javax.j2ee.jms.jar
The communication channel can reach the queue but when I send a message it fails because services sap.com/com.sap.aii.adapter.jdbc.svc and com.sap.aii.adapter.jms.svc are not started.
Checking dev_server0 file I found the following error.
==============================================================================================
Service com.sap.aii.adapter.jdbc.svc start ================= ERROR =================
com.sap.engine.frame.ServiceException: Could not obtain an initial context due to a communication failure. Since no provider
URL was specified, the default provider URL of "corbaloc:iiop:1.0(at)sapdpi-lpar:2809/NameService" was used. Make sure that any
bootstrap address information in the URL is correct and that the target name server is running. Possible causes other than
an incorrect bootstrap address or unavailable name server include the network environment and workstation network configurati
on.
at com.sap.aii.adapter.jdbc.SapAdapterServiceFrameImpl.start(SapAdapterServiceFrameImpl.java:151)
at com.sap.engine.core.service630.container.ServiceRunner.startFrame(ServiceRunner.java:155)
at com.sap.engine.core.service630.container.ServiceRunner.startService(ServiceRunner.java:113)
at com.sap.engine.core.service630.container.ServiceRunner.run(ServiceRunner.java:60)
at com.sap.engine.frame.core.thread.Task.run(Task.java:73)
at com.sap.engine.core.thread.impl5.SingleThread.execute(SingleThread.java:162)
at com.sap.engine.core.thread.impl5.SingleThread.run(SingleThread.java:260)
Caused by: javax.naming.ServiceUnavailableException: Could not obtain an initial context due to a communication failure. Sinc
e no provider URL was specified, the default provider URL of "corbaloc:iiop:1.0(at)sapdpi-lpar:2809/NameService" was used. Make
sure that any bootstrap address information in the URL is correct and that the target name server is running. Possible caus
es other than an incorrect bootstrap address or unavailable name server include the network environment and workstation netwo
rk configuration. [Root exception is org.omg.CORBA.TRANSIENT: java.net.ConnectException: Connection refused:host=sapdpi-lpar,
port=2809 vmcid: 0x4942f000 minor code: 3586 completed: No]
at com.ibm.ws.naming.util.WsnInitCtxFactory.mapInitialReferenceFailure(WsnInitCtxFactory.java:2228)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getWsnNameService(WsnInitCtxFactory.java:1414)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getRootContextFromServer(WsnInitCtxFactory.java:944)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getRootJndiContext(WsnInitCtxFactory.java:865)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:545)
at com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:123)
at com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:798)
at com.ibm.ws.naming.util.WsnInitCtx.rebind(WsnInitCtx.java:242)
at com.ibm.ws.naming.util.WsnInitCtx.rebind(WsnInitCtx.java:255)
at javax.naming.InitialContext.rebind(InitialContext.java:367)
at javax.naming.InitialContext.rebind(InitialContext.java:367)
at com.sap.aii.adapter.jdbc.SapAdapterServiceFrameImpl.start(SapAdapterServiceFrameImpl.java:100)
... 6 more
Caused by: org.omg.CORBA.TRANSIENT: java.net.ConnectException: Connection refused:host=sapdpi-lpar,port=2809 vmcid: 0x4942f0
00 minor code: 3586 completed: No
at com.ibm.CORBA.transport.TransportConnectionBase.connect(TransportConnectionBase.java:425)
at com.ibm.ws.orbimpl.transport.WSTransport.getConnection(WSTransport.java:436)
at com.ibm.CORBA.transport.TransportBase.getConnection(TransportBase.java:187)
at com.ibm.rmi.iiop.TransportManager.get(TransportManager.java:89)
at com.ibm.rmi.iiop.GIOPImpl.getConnection(GIOPImpl.java:120)
at com.ibm.rmi.iiop.GIOPImpl.locate(GIOPImpl.java:209)
at com.ibm.rmi.corba.Corbaloc.locateUsingINS(Corbaloc.java:307)
at com.ibm.rmi.corba.Corbaloc.resolve(Corbaloc.java:378)
at com.ibm.rmi.corba.ORB.objectURLToObject(ORB.java:3721)
at com.ibm.CORBA.iiop.ORB.objectURLToObject(ORB.java:3256)
at com.ibm.rmi.corba.ORB.string_to_object(ORB.java:3619)
at com.ibm.ws.naming.util.WsnInitCtxFactory.stringToObject(WsnInitCtxFactory.java:1524)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getWsnNameService(WsnInitCtxFactory.java:1389)
... 16 more
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:522)
at java.net.Socket.connect(Socket.java:470)
at java.net.Socket.<init>(Socket.java:367)
at java.net.Socket.<init>(Socket.java:180)
at com.ibm.ws.orbimpl.transport.WSTCPTransportConnection.createSocket(WSTCPTransportConnection.java:270)
at com.ibm.CORBA.transport.TransportConnectionBase.connect(TransportConnectionBase.java:354)
... 28 more
Service com.sap.aii.adapter.jms.svc start ================= ERROR =================
com.sap.engine.frame.ServiceRuntimeException: Could not obtain an initial context due to a communication failure. Since no pr
ovider URL was specified, the default provider URL of "corbaloc:iiop:1.0(at)sapdpi-lpar:2809/NameService" was used. Make sure t
hat any bootstrap address information in the URL is correct and that the target name server is running. Possible causes othe
r than an incorrect bootstrap address or unavailable name server include the network environment and workstation network conf
iguration.
at com.sap.aii.adapter.jms.core.service.AdapterServiceFrameImpl.bindAdapter(AdapterServiceFrameImpl.java:171)
at com.sap.aii.adapter.jms.core.service.AdapterServiceFrameImpl.start(AdapterServiceFrameImpl.java:125)
at com.sap.engine.core.service630.container.ServiceRunner.startFrame(ServiceRunner.java:155)
at com.sap.engine.core.service630.container.ServiceRunner.startService(ServiceRunner.java:113)
at com.sap.engine.core.service630.container.ServiceRunner.run(ServiceRunner.java:60)
at com.sap.engine.frame.core.thread.Task.run(Task.java:73)
at com.sap.engine.core.thread.impl5.SingleThread.execute(SingleThread.java:162)
at com.sap.engine.core.thread.impl5.SingleThread.run(SingleThread.java:260)
Caused by: javax.naming.ServiceUnavailableException: Could not obtain an initial context due to a communication failure. Sinc
e no provider URL was specified, the default provider URL of "corbaloc:iiop:1.0(at)sapdpi-lpar:2809/NameService" was used. Make
sure that any bootstrap address information in the URL is correct and that the target name server is running. Possible caus
es other than an incorrect bootstrap address or unavailable name server include the network environment and workstation netwo
rk configuration. [Root exception is org.omg.CORBA.TRANSIENT: Connection state: State: ABORT (5) vmcid: 0x4942f000 minor co
de: 775 completed: No]
at com.ibm.ws.naming.util.WsnInitCtxFactory.mapInitialReferenceFailure(WsnInitCtxFactory.java:2228)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getWsnNameService(WsnInitCtxFactory.java:1414)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getRootContextFromServer(WsnInitCtxFactory.java:944)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getRootJndiContext(WsnInitCtxFactory.java:865)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:545)
at com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:123)
at com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:798)
at com.ibm.ws.naming.util.WsnInitCtx.rebind(WsnInitCtx.java:242)
at com.ibm.ws.naming.util.WsnInitCtx.rebind(WsnInitCtx.java:255)
at javax.naming.InitialContext.rebind(InitialContext.java:367)
at javax.naming.InitialContext.rebind(InitialContext.java:367)
at com.sap.aii.adapter.jms.core.service.AdapterServiceFrameImpl.bindAdapter(AdapterServiceFrameImpl.java:163)
... 7 more
Caused by: org.omg.CORBA.TRANSIENT: Connection state: State: ABORT (5) vmcid: 0x4942f000 minor code: 775 completed: No
at com.ibm.rmi.iiop.Connection.checkEstablished(Connection.java:3091)
at com.ibm.rmi.iiop.Connection.send(Connection.java:2145)
at com.ibm.rmi.iiop.Connection._locate(Connection.java:463)
at com.ibm.rmi.iiop.Connection.locate(Connection.java:439)
at com.ibm.rmi.iiop.GIOPImpl.locate(GIOPImpl.java:219)
at com.ibm.rmi.corba.Corbaloc.locateUsingINS(Corbaloc.java:307)
at com.ibm.rmi.corba.Corbaloc.resolve(Corbaloc.java:378)
at com.ibm.rmi.corba.ORB.objectURLToObject(ORB.java:3721)
at com.ibm.CORBA.iiop.ORB.objectURLToObject(ORB.java:3256)
at com.ibm.rmi.corba.ORB.string_to_object(ORB.java:3619)
at com.ibm.ws.naming.util.WsnInitCtxFactory.stringToObject(WsnInitCtxFactory.java:1524)
at com.ibm.ws.naming.util.WsnInitCtxFactory.getWsnNameService(WsnInitCtxFactory.java:1389)
... 17 more
==============================================================================================
Could anyone tell me why is trying to connect to "corbaloc:iiop:1.0(at)sapdpi-lpar:2809/NameService"? Do I have to configure a default provider URL for SAP PI server? If so, where I configure it? Any help will be appreciated.
Thank you in advance.
Roger Allué i VallHi Roger,
we also experience the same issue and would be very keen to understand how you resolved this problem.
Many thanks.
Dieter -
Import classes that are not part of any package
I have this problem with the JDK1.4 compiler:
I have a few classes that were created outside of any package for some JNI uses. When I used JDK1.3 to compile, I was able to get the compiler to find these classes by doing the following in the calling classes:
import ClassOutSideOfPackage;
Now that I am trying to use JDK 1.4, the compiler complains with the following error:
"." expected
import ClassOutSideOfPackage;
I tried to take the import out and had no luck. The compiler complained that it can't find this class. What can I do or is the only solution to change the class to include it in a package and change all relavant JNI native calls... etc. Thank you.Removing the entire import statement should work. Check for a classpath problem if it
doesn't. It is not necessary to place in a package and recompile, though.I tried your suggestion. However, it keeps complaining that it can't find the class. The class file resides in the current directory and I have "." at the beginning of my class path. I don't see anything wrong with the classpath. Did you have this working? -
Hardware Sizing for Oracle Application Server and MapViewer
Hi all,
I need to develop an application using Oracle Application Server 10g and MapViewer. The applicaction will, basically, do thematic maps based on a search criteria. The estimative is that we will have 25 users simultaneously using it.
I´d like to have an idea about the hardware to support it.
Do you know where I can get this information?
Any documentation can help.
Regards,
Luis AugustoHi Luis,
It may depend on your database size, but I think at least you need to meet the minimum requirements for the Application Server. You can find additional documentation for the AS at http://www.oracle.com/technology/products/ias/index.html.
However I would suggest some extra memory, and if possible the better CPU that you can get. MapViewer will render the spatial features on the server side, and depending on your database size and number of features returned from the queries, this extra memory will help.
Joao -
Hi everyone,
I'm trying to use mapviewer to get some reports on OBIEE 11g, after getting the tile and configure the Mapviewer with te data source and everything, i get the following error while trying to create a report, after associate data to the area.
the Associated Subject Areas on the Background map Tab, on Manage Map Data is empty, and the data is associated in the Layers Tab.
Then when i try to create a report using the associated data, then the following error gets to me.
"A basemap is required to render a map. Please ensure that atleast one basemap is defined in the spatial meta-data"
Then, searching on the documentation, i've done the following,
On the mapViewerConfig.xml file
<proxy_enabled_hosts>
http://"hos"t:9704/mapviewer
</proxy_enabled_hosts>
on the instanceconfig.xml
<ServerInstance>
<SpatialMaps>
<ColocatedOracleMapViewerContextPath>/mapviewer</ColocatedOracleMapViewerContextPath>
<RemoteOracleMapViewerAbsoluteURL>http://"host":9704/mapviewer</RemoteOracleMapViewerAbsoluteURL>
<LayerDataLayout>
<MaxRecords>600</MaxRecords>
</LayerDataLayout>
</SpatialMaps>
</ServerInstance>
but still got the same problem, something i saw on the weblogic console was the following
<Cannot read USER_SDO_TILE_ADMIN_TASKS view from database
after saving and restarting the mapviewer.
Any idea??
Regards
CesarHi,
May be this will help you for this you need to create a data source in map viewer which will help you to get the base map present and then you can go on creating the report using map.
After creating the data-source you will find the list of map available for u to use then bring them online and then go on using.
Thanks. -
Location of "any" packages in a local repository structure
Hello, I have searched for an answer to this but have been unable to find one.
I want to build a personal repo for some packages. I have read how to do this using repo-add but I am unclear on where architecture-independent packages should be stored. What I understand from looking at official repos is the structure is along the lines of:
repo/
----os/
----686/
----x86_64/
Older posts on the forum like this one suggest a separate subdirectory for the "any" packages but, looking at the official repos, that doesn't appear to be current practice. It looks to me like these packages are duplicated in the architecture-specific subdirectories. For example:
.../core/os/x86_64/man-pages-3.51-1-any.pkg.tar.xz
.../core/os/x86_64/man-pages-3.51-1-any.pkg.tar.xz.sig
and
.../core/os/i686/man-pages-3.51-1-any.pkg.tar.xz
.../core/os/i686/man-pages-3.51-1-any.pkg.tar.xz.sig
From a saving diskspace perspective, it would be better not to have this duplication but I guess you could use hard links.
Another repo that I have used in the past is archlinuxfr and this does have a separate "any" tree.
So, I'd like to understand if it's supported to have a spearate "any" subtree ?
Last edited by starfry (2013-05-11 09:54:04)If you have a look at the repos at archlinux.fr, you will find the packages in "any" also duplicated in the other repos. As far as I understand, pacman only looks at the folder with the same architecture: http://url.to.mirror/archlinux.org/$repo/os/$arch
-
How to find the Last modified date and time of a package
Hi,
We need a clarification on how to find the Last modified date and time of a package in Oracle. We used the example below to explain our scenario,
Lets consider the following example
Let A, B be two packages.
Package A calls the package B. So A is dependent on B.
When A is compiled the TIMESTAMP,LAST_DDL_TIME in USER_OBJECTS gets updated.
Now there a modification in package B so it is compiled. There is no modification in package A.
Now when the package A is executed the TIMESTAMP,LAST_DDL_TIME in USER_OBJECTS gets updated but we did not make any change in Package A. Now we need to find last modified date and time of the package A . So we can not rely on the TIMESTAMP,LAST_DDL_TIME in USER_OBJECTS . Can u please tell us any other solution to get last modified date and time of the package A .
Regards,
Vijayanand.CHere is an example:
SQL> SELECT OBJECT_NAME,CREATED,LAST_DDL_TIME,TIMESTAMP,STATUS FROM USER_OBJECTS
2 WHERE OBJECT_NAME = ANY('A','B');
OBJECT_NAM CREATED LAST_DDL_TIME TIMESTAMP STATUS
A 20-MAY-2004 10:57:32 20-MAY-2004 10:57:32 2004-05-20:10:57:32 VALID
B 20-MAY-2004 10:58:22 20-MAY-2004 10:59:04 2004-05-20:10:59:04 VALID
SQL> CREATE OR REPLACE PROCEDURE A AS
2 BEGIN
3 NULL;
4 NULL;
5 END;
6 /
Procedure created.
SQL> SELECT OBJECT_NAME,CREATED,LAST_DDL_TIME,TIMESTAMP,STATUS FROM USER_OBJECTS
2 WHERE OBJECT_NAME = ANY('A','B');
OBJECT_NAM CREATED LAST_DDL_TIME TIMESTAMP STATUS
A 20-MAY-2004 10:57:32 20-MAY-2004 11:01:28 2004-05-20:11:01:28 VALID
B 20-MAY-2004 10:58:22 20-MAY-2004 10:59:04 2004-05-20:10:59:04 INVALID
SQL> EXEC B
PL/SQL procedure successfully completed.
SQL> SELECT OBJECT_NAME,CREATED,LAST_DDL_TIME,TIMESTAMP,STATUS FROM USER_OBJECTS
2 WHERE OBJECT_NAME = ANY('A','B');
OBJECT_NAM CREATED LAST_DDL_TIME TIMESTAMP STATUS
A 20-MAY-2004 10:57:32 20-MAY-2004 11:01:28 2004-05-20:11:01:28 VALID
B 20-MAY-2004 10:58:22 20-MAY-2004 11:01:53 2004-05-20:11:01:53 VALID
Note that the date under the column 'created' only changes when you really create or replace the procedure.
Hence you can use the column 'created' of 'user_objects'.
Maybe you are looking for
-
I devlop a software using Developer 2000, during entry i need sum of the existing and newly enterd values, i made it to first save in a table, but meanwhile operator makes an error and whishes to re-correct the entry that has been alredy saved, what
-
When I send an e-mail on my Virgin Media account, a prefix, "41 Club" is added to my e-mail address. Consequently, it appears as:- 41 Club <[email protected]>. This is incorrect. How can I r
-
Elements 12 trial to full version
I downloaded the 30 trial version of Adobe Elements 12. The trial has ended. I purchased the full version from a store. Do I need to uninstall the trial version in order to get the full version on my computer? Do I use the serial number on the box to
-
Panel Lights Indicate empty cartridges - but they are not empty!
I have an HP Officejet Pro K850 printer. The Magenta and yellow cartridge lights illuminated and I installed new cartridges with 2012 expiration dates. The lights will not go out and the printer will not print. I replaced all cartridges with new H
-
How can I permanently delete itunes files?
I moved my itunes library to an external hard-drive, but it still shows all the albums in my library. If I try to play an album, it says the file has been moved. How can I clean up my library so it doesn't show those files anymore?