OC4J 9.0.4 with com.evermind.sql.DataSourceUserManager
Hey,
we try to start the OC4J 9.0.4 with the com.evermind.sql.DataSourceUserManager. On OC4J 9.0.3 it will works fine, but now we get an error and can't find a solution.
Shown error:
Error initializing server: Error instantiating default application at file:/C:/OC4J_904/j2ee/home/config/appli
cation.xml: Error initializing userManager 'com.evermind.sql.DataSourceUserManager': NamingException: Need to
specify class name in environment or system property, or as an applet parameter, or in an application resource
file: java.naming.factory.initial
Has somebody solved this problem?
Regards
C. Diemer
Hello!
We have the same problem but with another error.
04/06/09 14:46:42 Error instantiating application 'adminguiden' at file:/opt/oracle/product/9.0.4/j2ee/admguide/applications/adminguiden.ear: Error initializing userManager 'com.telia.pg.realm.PGDataSourceUserManager': NamingException: Not in an application scope - start Orion with the -userThreads switch if using user-created threads
04/06/09 14:46:44 Oracle Application Server Containers for J2EE 10g (9.0.4.0.0) initialized
Suggestions ?
Similar Messages
-
In which jar com.evermind.sql.DriverManagerDataSource located??
in data-sources.xml when i changed the class from com.evermind.sql.DriverManagerDataSource to oracle.jdbc.pool.OracleDataSource i didnt get any exception in std_err log and also it didnt create any spy.log;
when i put class="com.evermind.sql.DriverManagerDataSource " in datasources.xml i am getting this exception
05/04/25 10:50:54 Error initializing data-source 'oraclePool': DriverManagerDataSource driver 'com.p6.engine.spy.P6SpyDriver' not found
in which jar com.evermind.sql.DriverManagerDataSource located??
<data-source
class="oracle.jdbc.pool.OracleDataSource"
name="oraclePool"
location="oraclePool"
xa-location="oraclePool"
ejb-location="oraclePool"
connection-driver="com.p6.engine.spy.P6SpyDriver"
username="egl1005"
password="egl"
url="jdbc:oracle:thin:@192.168.68.44:1521:egl"
inactivity-timeout="30"
/>
this batch file is okay??in home/lib/p6spy.jar is there ;and in node1\lib spy.properties is located.
set path=c:\j2sdk1.4.2_06\bin;
set classpath=C:\OC4J_EXTENDED\j2ee\home\lib;C:\OC4J_EXTENDED\j2ee\home\node1\lib;%classpath%;
java -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000 -Xdebug -Xnoagent -Djava.compiler=NONE -Xmx512m -Dhttp.session.debug=true -Djdbc.connection.debug=true -Dp6.home=C:\OC4J_EXTENDED\j2ee\home\lib -Dp6trace=true -jar oc4j.jar -config node1\config\server.xml -userThreads -verbosity 10 -out node1\log\std_out.log -err node1\log\std_err.logHere is the instructions how to use P6SPY with OC4J 9.0.4/10.1.2
http://radio.weblogs.com/0135826/2004/03/30.html
-Debu -
Datasource using com.evermind.sql.DriverManagerDataSource
Is com.evermind.sql.DriverManagerDataSource still supported?
If not can you direct me to documents on the new way of using datasources. In JDeveloper 10.1.3, "Embedded OC4J Server Preference -> Datasource" gives me three choices: Connection Pool,Managed Data Source, Native Data Source.Now the problem is the Connection object being passed
as parameter to the remote interface of the B bean
The solution is simple - do NOT do that.
A remote object is intended to be run on a remote machine. There is absolutely no way that a resource (socket, file handle, shared memory, pipe, etc) can be used by a remote machine.
Belive me this code runs fine on Weblogic 8.1,
JBossAs a guess because either those two are nice to you and/or because you are not running clusters.
>
i'm unaware that connection object is not serializable
but how this works in other two servers while not in
oracle 9ias,
Only because they are not actually passing it remotely.
i'm using this datasource class
com.evermind.sql.DriverManagerDataSource
after fact finding also i'm unable to find the
solution can anybody guide me in this regardThe solution is to NEVER do that in the first place.
If you want two different objects and want to pass the connection then use a local interface instead of the remote one. -
Does com.evermind.sql.DriverManagerDataSource provide connection pooling?
Hi,
The class defined in default data-sources.xml file is com.evermind.sql.DriverManagerDataSource. In Oracle9i JDBC Developer's Guide and Reference Release 1 (9.0.1) documentation's chapter 15, Oracle encourages to use this emulated data source for it is fast and efficent.
But I could not find any info about whether com.evermind.sql.DriverManagerDataSource provides connection pooling.
Actually, I want to make sure that if I use default data-sources.xml and ejb-location attribute for lookup method, will I be able to get pooled connection?
Thanks a lot.Hi,
Thank you for taking your time.
I could manage to get connections from the com.evermind.sql.DriverManagerDataSource using jdbc/OracleDS in JNDI lookup string.
As far as I've understood from the document you pointed out, I could not see "connection pooling" expression directly for emulated class. But there is an explanation that says "Connections retrieved within a single transaction from a data source using the same username and password causes the logical connections to share a single physical connection.". Is this what you've mentioned?
Lastly, how can I make sure that the connections are coming from the pool? Is there a way to see that?
Thanks again. -
I am getting the following error while running JSP. Can anyone guide me.
Caught "com.evermind.server.rmi.OrionRemoteException" while attempting to find all DepartmentBean entries.
com.evermind.server.rmi.OrionRemoteException: Database error: Io exception: The Network Adapter could not establish the connection; nested exception is: java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
Add entry
I have doubt in
My rmi.xml file
<?xml version="1.0" standalone='yes'?>
<!DOCTYPE rmi-server PUBLIC "Orion RMI-server" "http://xmlns.oracle.com/ias/dtds/rmi-server.dtd">
<rmi-server port="23791" >
<!-- A remote server connection example -->
<!-- <server host="the.remote.server.com" username="adminUser" password="123abc" /> -->
<!-- <server host="169.254.162.207" username="admin" password="welcome" /> -->
<!-- <server host="prg-fg9s9g12dnz" username="admin" password="welcome" /> -->
<!-- path to the log-file where RMI-events/errors are stored -->
<log>
<file path="../log/rmi.log" />
</log>
</rmi-server>
If I give server host line My oc4j server is NOT initialized.
In My Data Sources file :
<data-source
class="com.evermind.sql.DriverManagerDataSource"
name="jdbc/DBConnection"
location="jdbc/OracleCoreDS"
xa-location="jdbc/xa/OracleXADS"
ejb-location="jdbc/DBConnection"
connection-driver="oracle.jdbc.driver.OracleDriver"
username="RajiveShukla"
password="pujavrms1"
url="jdbc:oracle:thin:@localhost:1521:wbs"
inactivity-timeout="30"
/>
And JSP which I run is :
<%
* list.jsp
* Lists all the entries stored through EmployeeBean. This JSP is the only JSP
* that will actually connect to the entity bean. On success, it will save a
* reference to the entity bean in the session. So there will be one reference
* to the bean per session.
%>
<%@ page import="com.webstore.*,java.io.*,java.net.*,java.util.*,javax.naming.*,javax.rmi.*" %>
<%
// Make sure this page will not be cached by the browser
response.addHeader("Pragma", "no-cache");
response.addHeader("Cache-Control", "no-store");
// We will send error messages to System.err, for verbosity. In a real
// application you will probably not want this.
PrintStream errorStream = System.err;
// If we find any fatal error, we will store it in the "error" variable. If
// an exception is caught that corresponds with this error message, then we
// will store it in the "exception" variable.
String error = null;
Exception exception = null;
// First check if the reference to the EJB is already stored in the session.
DepartmentHome home = (DepartmentHome) session.getAttribute("DepartmentHome");
// If not, then attempt to get the initial JNDI context.
if (home == null) {
// When attempting to connect to JNDI, we store the reference to the
// initial JNDI context in this variable. We will use it to lookup the
// entity bean.
Context context = null;
try {
context = new InitialContext();
} catch (Exception e) {
exception = e;
error = "Caught \"" + exception.getClass().getName() + "\" while " +
"attempting to create the initial JNDI context.";
errorStream.println(error);
exception.printStackTrace(errorStream);
// We have specified "EmployeeBean" in the web.xml file as the name
// by which we would like to contact the EmployeeBean home interface. We will
// have to prepend "java:comp/env/", the root `directory' for enterprise
// beans.
//final String location = "java:comp/env/DepartmentBean";
if (error == null) {
try {
// Attempt to lookup an object at the specified location in the JNDI
// context.
//Object boundObject = context.lookup(location);
Object boundObject = context.lookup("Department");
// Try to convert it to an instance of EmployeeBean, the home
// interface for our bean.
home = (DepartmentHome) PortableRemoteObject.narrow(boundObject,
DepartmentHome.class);
// If we got this far, we've done it, let's save the reference to the
// Employee home interface in the session for future use by both
// this page and the other JSP pages.
session.setAttribute("DepartmentHome", home);
} catch (Exception e) {
exception = e;
error = "Caught \"" + exception.getClass().getName() + "\" while " +
"attempting to lookup the Department bean at \"" + "\".";
//location + "\".";
errorStream.println(error);
exception.printStackTrace(errorStream);
// This is the variable we will store all records in.
Collection recs = null;
if (error == null) {
try {
recs = home.findAll();
} catch (Exception e) {
exception = e;
error = "Caught \"" + exception.getClass().getName() + "\" while " +
"attempting to find all DepartmentBean entries.";
errorStream.println(error);
exception.printStackTrace(errorStream);
// Decide what the title will be.
String title;
if (error != null) {
title = "Error";
} else {
title = "com.webstore | List of entries";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<TITLE><%= title %></TITLE>
</HEAD>
<BODY bgcolor="#FFFFFF">
<H1><%= title %></H1>
<%
// Display the error message, if any.
if (error != null) {
%>
<P><BLOCKQUOTE><%= error %></BLOCKQUOTE>
<%
// Display the exception message, if any.
if (exception != null) {
%>
<P><BLOCKQUOTE><CODE><%= exception %></CODE></BLOCKQUOTE>
<%
} /* if */
} else {
// If there are no recs to be displayed, display a descriptive text.
if (recs.size() == 0) {
%>
<P><BLOCKQUOTE>No entries found.</BLOCKQUOTE>
<%
// Otherwise display a table with all columns, and
// display two extra choices: "Edit" and "Delete".
} else {
%>
<P><TABLE border="1" width="100%">
<TR>
<TD><STRONG>DptNo (long)</STRONG></TD>
<TD><STRONG>DptName (String)</STRONG></TD>
<TD><STRONG>Actions</STRONG></TD>
</TR>
<%
Iterator iterator = recs.iterator();
while(iterator.hasNext()) {
Department rec = (Department) PortableRemoteObject.narrow(iterator.next(),
Department.class);
long dptNo = rec.getDptno();
String dptName= rec.getDptname();
// put all pk columns in hashtable for URLEncoding
Hashtable cols = new Hashtable();
cols.put("DPTNO",Long.valueOf("dptNo"));
// URLEncode columns as params to JSP
StringBuffer buf = new StringBuffer();
Enumeration params = cols.keys();
while (params.hasMoreElements()) {
String param = (String)params.nextElement();
String value = (String)cols.get(param);
buf.append(URLEncoder.encode(param) +
"=" + URLEncoder.encode(value));
if (params.hasMoreElements())
buf.append("&");
String editURL = "dptedit.jsp?" + buf;
String deleteURL = "dptdelete.jsp?" + buf;
%>
<TR>
<TD><%= dptNo %></TD>
<TD><%= dptName %></TD>
<TD><A href="<%= editURL %>">Edit</A> <A href="<%= deleteURL %>">Delete</A></TD>
</TR>
<%
} /* for */
%>
</TABLE>
<%
} /* else */
} /* else */
// Finally display a link to the page that allows the user to add an entry
// to the address book.
%>
<P><TABLE border="1">
<TR><TD><A href="dptadd.jsp">Add entry</A></TD></TR>
</TABLE>
</BODY>
</HTML>
Please guide me..Hi Avi,
Thanks,
I have already used earlier..
the data-sources file is as under.
<data-source class="com.evermind.sql.DriverManagerDataSource" name="jdbc/DBConnection" location="jdbc/OracleCoreDS" xa-location="jdbc/xa/OracleXADS" ejb-location="com.webstore.Department" connection-driver="oracle.jdbc.driver.OracleDriver" username="RajiveShukla" password="pxujxa" url="jdbc:oracle:thin:@PRG-FG9S9G12DNZ:1521:wbs" inactivity-timeout="30"/>
</data-sources>
The username and password and sid, I can connect in the sqlPlus
Do we have to give remote server name in rmi.xml.. It is not initilizing the J2EE server if we give that.??
I am using thin driver , if any change or any settings please write me..
Thanks in advance..
Rajive -
OC4j Developer Preview problem with JDBC
I'm running the developer preview of OC4J (9.0.4) and trying to get a connection to SQL Server 2000 for my CMP 2.0 entity beans.
I have a setup and configuration that works on Orion 2.0, but when I moved it over to OC4J it no longer worked. I get an error
SQL error: Io exception: The Network Adapter could not establish the connection
I checked my data-sources.xml file to make sure the syntax was OK and the driver url and properties were correct (they worked on Orion so they should be), and they looked OK.
This fails both with the JSQLConnect driver and with the recommended DataDirect driver. For the latter my data-sources.xml entry looks like:
<data-source
class="com.evermind.sql.DriverManagerDataSource"
name="MSSQL"
schema="database-schemas/ms-sql.xml"
location="jdbc/foo"
xa-location="jdbc/foo"
ejb-location="jdbc/foo"
connection-driver="com.ddtek.jdbc.sqlserver.SQLServerDriver"
url="jdbc:sqlserver://localhost;DatabaseName=foo;User=foouser;Password=foo"
username="foouser"
password="foo"
max-connections="5"
min-connections="2"
inactivity-timeout="30"
/>
The same URL works fine using DataDirect's JDBC Test utility.
I can't find anything useful in any of the OC4J logs and have basically run out of options to get OC4J working.
Any help much appreciated.
Thanks
AlanHi Steve
I had the JDBC driver jars in j2ee/home/lib (with pointers via <library> tags in server.xml).
The j2ee/home/applib directory didn't exist so I created it and copied the driver files there but alas it didn't help. (I also modified the appropriate <library> tags in server.xml but that didn't help.) I still get the same error.
When I removed the JDBC driver jars altogether then I did get an additional error:
Error initializing data-source 'jdbc/foo': DriverManagerDataSource driver 'com.ddtek.jdbc.sqlserver.SQLServerDriver' not found.
So it looks like the underlying problem is not inability to load the jars. -
hei!
I have a simple SessionBean, deployed to remote OC4J.(the bean is tested locally and is fine)
using Jdeveloper, I create a client to call my sessionBean methods.
If I create the client to run agains the embedded oc4j, it works fine.
If I create a client that runs agains the remote oc4j, I get this error:
com.evermind.server.rmi.RMIConnectionException: Unknown command: 0
and a lot of
java.lang.Object com.evermind.server.rmi.RemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
appreciate your help
Regards
RTRussel ,
Have you started remote OC4J Server? Also can you able to browse
JNDI tree of Remote OC4J Server from JDeveloper?
Also provide following information in order to understand your problem fully
1. Which OC4J version you are using?
2. Platform in which you are testing your application?
3. Provide full stack trace of error that you are getting
Cheers
--Venky -
In sun java studio enterprise 8
I'm able to connect to my local DB2 sample database by creating a database schema.
But when I try to execute a java class (main) using
Class.forName("com.sun.sql.jdbc.db2.DB2Driver"). It returns a not found condition.
what am I doing wrong? do I have to point the classpath to some directory?try to add jar containing driver to
Your project -> Properties -> Libraries -> Run list. -
Hi,
I have one big application in which we are using oracle9iAS and EJB. While I am searching some data which returns more than 15000 rows then I got Followed Error.
I use,
Front End ::Swing
Middle Ware ::EJB
Application Server ::OC4J 9i
com.evermind.server.ejb.TimeoutExpiredException: timeout expired waiting for an instance
at com.evermind.server.ejb.EntityEJBHome.getContextInstance(EntityEJBHome.java:309)
at com.evermind.server.ejb.DBEntityEJBHome.createWrapperInstance(DBEntityEJBHome.java:114)
at com.evermind.server.ejb.DBEntityEJBHome.getWrapperInstanceNoCache(DBEntityEJBHome.java:108)
at com.evermind.server.ejb.DBEntityEJBHome.getWrapperInstance(DBEntityEJBHome.java:149)
at FingdAttrBMHome_EntityHomeWrapper193.findBy_CompleteSQLFinder(FingdAttrBMHome_EntityHomeWrapper193.java:1086)
at com.fritolay.mware.mf.prd.session.FGItems.FGItemAppSearchBean.approvalSearchMethod(FGItemAppSearchBean.java:1422)
at com.fritolay.mware.mf.prd.session.FGItems.FGItemSFBean.approvalSearch(FGItemSFBean.java:9713)
at FGItemSFRemote_StatefulSessionBeanWrapper30.approvalSearch(FGItemSFRemote_StatefulSessionBeanWrapper30.java:1186)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:119)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:802)
at java.lang.Thread.run(Thread.java:484)
Error: null:null:ApprovalSearch()->Exception occured in ApprovalBDCSearch found
Code which produce this error is as follows::
public Collection ejbFindBy_CompleteSQLFinder(String strSql)
throws RemoteException, FinderException, ServerSideException {
methodName = "ejbFindBy_generalCompleteFinder(String strSql)";
log(SIMPLE_MESSAGE, "\n\rSTARTED");
Connection con = null;
Statement stmt = null;
try {
String selectSQL = strSql;
log(SIMPLE_MESSAGE, "selectSql :\n\r" + selectSQL);
con = new SqlUtility().getConnection(DATA_SOURCE_NAME);
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(selectSQL);
Vector v = new Vector();
while (rs.next()) {
FingdAttrPK pk = new FingdAttrPK(getValue(rs,this.ITEM_SYS_NBR,"ITEM_SYS_NBR") , getValue(rs,this.CTRY_CODE,"CTRY_CODE") , getValue(rs,this.CO_CODE,"CO_CODE") , getValue(rs,this.FGITEM_ATTR_EFF_DT,"FGITEM_ATTR_EFF_DT"));
log(SIMPLE_MESSAGE, "" + pk );
v.addElement(pk);
} // End of While
log(SUCCESSFULLY_DONE,"successfully done ....");
return v;
catch (SQLException sqle) {
log(ERROR_OCCURED, "SQL Exception while getting PK " + sqle.getMessage());
sqle.printStackTrace();
int iErrorCode = sqle.getErrorCode();
String sErrorDesciption [] = new String[] {"SQL Exception while getting collection of PK " + sqle.getMessage()};
ServerSideException sse = new ServerSideException(beanName + methodName,iErrorCode,sErrorDesciption);
throw sse;
finally {
log(SIMPLE_MESSAGE, "releaseResource(Statement) : " + new SqlUtility().releaseResource(stmt));
log(SIMPLE_MESSAGE, "releaseResource(Connection) : " + new SqlUtility().releaseResource(con));
So, how i can solve this issue?? is there any setting in .xml files??
Regards,
Jignesh PatelThanks to all, The problem solved
Regards
Madhu V -
ClassCastException: com.evermind.server.rmi.OrionRemoteException
We have resently tried to move our application from OC4J 9.0.3 to the OC4J 9.0.4 preview.
However when autogenerating data we get the following exception:
com.evermind.server.rmi.OrionRemoteException: java.lang.ClassCastException: com.evermind.server.rmi.OrionRemoteException
at com.evermind.server.ejb.EJBUtils.getUserException(EJBUtils.java:275)
at InstallSession_StatelessSessionBeanWrapper2717.createItemBatchBaseData(InstallSession_StatelessSessionBeanWrapper2717.java:268)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:124)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:479)
at connection to wmsserver/192.168.1.95 as admin
at com.evermind.server.rmi.RMIConnection.EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER(RMIConnection.java:1499)
at com.evermind.server.rmi.RMIConnection.invokeMethod(RMIConnection.java:1452)
at com.evermind.server.rmi.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:55)
at com.evermind.server.rmi.RecoverableRemoteInvocationHandler.invoke(RecoverableRemoteInvocationHandler.java:22)
at com.evermind.server.ejb.StatelessSessionRemoteInvocationHandler.invoke(StatelessSessionRemoteInvocationHandler.java:50)
at __Proxy1.createItemBatchBaseData(Unknown Source)
at Sampleinstall.InstallSessionClient2.main(InstallSessionClient2.java:28)
Nested exception is:
java.lang.ClassCastException: com.evermind.server.rmi.OrionRemoteException
at ItemBatchLocalHome_EntityHomeWrapper343.create(ItemBatchLocalHome_EntityHomeWrapper343.java:1063)
at install.impl.InstallSessionBean.createItemBatchBaseData(InstallSessionBean.java:120)
at InstallSession_StatelessSessionBeanWrapper2717.createItemBatchBaseData(InstallSession_StatelessSessionBeanWrapper2717.java:254)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:124)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:479)
at connection to wmsserver/192.168.1.95
at com.evermind.server.rmi.OrionRemoteException.receive(OrionRemoteException.java:130)
at com.evermind.server.rmi.RMIConnection.handleMethodInvocationResponse(RMIConnection.java:1622)
at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:406)
at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:286)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:536)
Process exited with exit code 0.
The method which fails is the following method, which is located in an orinary stateless session bean:
public void createItemBatchBaseData() {
try{
ItemBatchLocalHome itemBatchHome = getItemBatchLocalHome();
ItemLocalHome itemHome = getItemLocalHome(); ItemLocal item = itemHome.findByPrimaryKey("5501");
System.out.println("Før create "+item);
ItemBatchLocal itemBatch = itemBatchHome.create(item,
"B05501-1",
new Long(System.currentTimeMillis()),
new Boolean(false),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Integer(0));
System.err.println("Efter create");
item = itemHome.findByPrimaryKey("5502");
/* FAILS HERE >> */ itemBatch = itemBatchHome.create(item,
("B05502-1"),
new Long(System.currentTimeMillis()),
new Boolean(false),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Integer(0));
catch (CreateException e) {
System.err.println("Et eller flere batchnumre er oprettet i forvejen \n");
e.printStackTrace();
catch (FinderException f){
System.err.println("Ved oprettelse af batchnummer manglede relateret vare \n");
f.printStackTrace();
catch (NamingException e) {
System.err.println("Naming");
e.printStackTrace();
itemBatch is a CMP entity bean, with nothing but the field getters and setters, so it should be quite basic.
It worked without problems in 9.0.3, so we are wondering what we might have missed when changing to 9.0.4.
mvh
NHBWe have resently tried to move our application from OC4J 9.0.3 to the OC4J 9.0.4 preview.
However when autogenerating data we get the following exception:
com.evermind.server.rmi.OrionRemoteException: java.lang.ClassCastException: com.evermind.server.rmi.OrionRemoteException
at com.evermind.server.ejb.EJBUtils.getUserException(EJBUtils.java:275)
at InstallSession_StatelessSessionBeanWrapper2717.createItemBatchBaseData(InstallSession_StatelessSessionBeanWrapper2717.java:268)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:124)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:479)
at connection to wmsserver/192.168.1.95 as admin
at com.evermind.server.rmi.RMIConnection.EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER(RMIConnection.java:1499)
at com.evermind.server.rmi.RMIConnection.invokeMethod(RMIConnection.java:1452)
at com.evermind.server.rmi.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:55)
at com.evermind.server.rmi.RecoverableRemoteInvocationHandler.invoke(RecoverableRemoteInvocationHandler.java:22)
at com.evermind.server.ejb.StatelessSessionRemoteInvocationHandler.invoke(StatelessSessionRemoteInvocationHandler.java:50)
at __Proxy1.createItemBatchBaseData(Unknown Source)
at Sampleinstall.InstallSessionClient2.main(InstallSessionClient2.java:28)
Nested exception is:
java.lang.ClassCastException: com.evermind.server.rmi.OrionRemoteException
at ItemBatchLocalHome_EntityHomeWrapper343.create(ItemBatchLocalHome_EntityHomeWrapper343.java:1063)
at install.impl.InstallSessionBean.createItemBatchBaseData(InstallSessionBean.java:120)
at InstallSession_StatelessSessionBeanWrapper2717.createItemBatchBaseData(InstallSession_StatelessSessionBeanWrapper2717.java:254)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:124)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:479)
at connection to wmsserver/192.168.1.95
at com.evermind.server.rmi.OrionRemoteException.receive(OrionRemoteException.java:130)
at com.evermind.server.rmi.RMIConnection.handleMethodInvocationResponse(RMIConnection.java:1622)
at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:406)
at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:286)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:536)
Process exited with exit code 0.
The method which fails is the following method, which is located in an orinary stateless session bean:
public void createItemBatchBaseData() {
try{
ItemBatchLocalHome itemBatchHome = getItemBatchLocalHome();
ItemLocalHome itemHome = getItemLocalHome(); ItemLocal item = itemHome.findByPrimaryKey("5501");
System.out.println("Før create "+item);
ItemBatchLocal itemBatch = itemBatchHome.create(item,
"B05501-1",
new Long(System.currentTimeMillis()),
new Boolean(false),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Integer(0));
System.err.println("Efter create");
item = itemHome.findByPrimaryKey("5502");
/* FAILS HERE >> */ itemBatch = itemBatchHome.create(item,
("B05502-1"),
new Long(System.currentTimeMillis()),
new Boolean(false),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Double(0),new Double(0),new Double(0),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Long(System.currentTimeMillis()),
new Integer(0));
catch (CreateException e) {
System.err.println("Et eller flere batchnumre er oprettet i forvejen \n");
e.printStackTrace();
catch (FinderException f){
System.err.println("Ved oprettelse af batchnummer manglede relateret vare \n");
f.printStackTrace();
catch (NamingException e) {
System.err.println("Naming");
e.printStackTrace();
itemBatch is a CMP entity bean, with nothing but the field getters and setters, so it should be quite basic.
It worked without problems in 9.0.3, so we are wondering what we might have missed when changing to 9.0.4.
mvh
NHB -
How to configure OC4J using RMI/IIOP with SSL
Any help?
I just mange configure the OC4J using RMI/IIOP but base on
But when I follow further to use RMI/IIOP with SSL I face the problem with: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
p/s: I use self generate keystore which should be ok as I can use it for https connection.
Any one can help?
Below is the OC4J log:
D:\oc4j\j2ee\home>java -Djavax.net.debug=all -DGenerateIIOP=true -Diiop.runtime.debug=true -jar oc4j.jar
05/02/23 16:43:16 ================ IIOPServerExtensionProvider.preInitApplicationServer
05/02/23 16:43:38 ================= IIOPServerExtensionProvider.postInitApplicationServer
05/02/23 16:43:38 ================== config = {SEPS={IIOP={ssl-port=5556, port=5555, ssl=true, trusted-clients=*, ssl-client-server-auth-port=5557, keystore=D:\\oc4j\\j2ee\\home\\server.keystore, keystore-password=123456, truststore=D:\\oc4j\\j2ee\\home\\server.keystore, truststore-password=123456, ClassName=com.oracle.iiop.server.IIOPServerExtensionProvider, host=localhost}}}
05/02/23 16:43:38 ================== server.getAttributes() = {threadPool=com.evermind.server.ApplicationServerThreadPool@968fda}
05/02/23 16:43:38 ================== pool: null
05/02/23 16:43:38 ====================== In startServer ...
05/02/23 16:43:38 ==================== Creating an IIOPServer ...
05/02/23 16:43:38 ========= IIOP server being initialized
05/02/23 16:43:38 SSL port: 5556
05/02/23 16:43:38 SSL port 2: 5557
05/02/23 16:43:43 com.sun.corba.ee.internal.iiop.GIOPImpl(Thread[Orion Launcher,5,main]): getEndpoint(IIOP_CLEAR_TEXT, 5555, null)
05/02/23 16:43:43 com.sun.corba.ee.internal.iiop.GIOPImpl(Thread[Orion Launcher,5,main]): createListener( socketType = IIOP_CLEAR_TEXT port = 5555 )
05/02/23 16:43:44 com.sun.corba.ee.internal.iiop.GIOPImpl(Thread[Orion Launcher,5,main]): getEndpoint(SSL, 5556, null)
05/02/23 16:43:44 com.sun.corba.ee.internal.iiop.GIOPImpl(Thread[Orion Launcher,5,main]): createListener( socketType = SSL port = 5556 )
05/02/23 16:43:45 ***
05/02/23 16:43:45 found key for : mykey
05/02/23 16:43:45 chain [0] = [
Version: V1
Subject: CN=Server, OU=Bar, O=Foo, L=Some, ST=Where, C=UN
Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4
Key: SunJSSE RSA public key:
public exponent:
010001
modulus:
b1239fff 2ae5d31d b01a0cfb 1186bae0 bbc7ac41 94f24464 e92a7e33 6a5b0844
109e30fb d24ad770 99b3ff86 bd96c705 56bf2e7a b3bb9d03 40fdcc0a c9bea9a1
c21395a4 37d8b2ce ff00eb64 e22a6dd6 97578f92 29627229 462ebfee 061c99a4
1c69b3a0 aea6a95b 7ed3fd89 f829f17e a9362efe ccf8034a 0910989a a8573305
Validity: [From: Wed Feb 23 15:57:28 SGT 2005,
To: Tue May 24 15:57:28 SGT 2005]
Issuer: CN=Server, OU=Bar, O=Foo, L=Some, ST=Where, C=UN
SerialNumber: [ 421c3768]
Algorithm: [MD5withRSA]
Signature:
0000: 34 F4 FA D4 6F 23 7B 84 30 42 F3 5C 4B 5E 18 17 4...o#..0B.\K^..
0010: 73 69 73 A6 BF 9A 5D C0 67 8D C3 56 DF A9 4A AC sis...].g..V..J.
0020: 88 AF 24 28 C9 39 16 22 29 81 01 93 86 AA 1A 5D ..$(.9.")......]
0030: 07 89 26 22 91 F0 8F DE E1 4A CF 17 9A 02 51 7D ..&".....J....Q.
0040: 92 D3 6D 9B EF 5E C1 C6 66 F9 11 D4 EB 13 8F 17 ..m..^..f.......
0050: E7 66 58 9F 6C B0 60 7C 39 B4 E0 B7 04 A7 7F A6 .fX.l.`.9.......
0060: 4D A5 89 E7 F4 8A DC 59 B4 E7 A5 D4 0A 35 9A F1 M......Y.....5..
0070: A2 CD 3A 04 D6 8F 16 B1 9E 6F 34 40 E8 C0 47 03 ..:[email protected].
05/02/23 16:43:45 ***
05/02/23 16:43:45 adding as trusted cert:
05/02/23 16:43:45 Subject: CN=Client, OU=Bar, O=Foo, L=Some, ST=Where, C=UN
05/02/23 16:43:45 Issuer: CN=Client, OU=Bar, O=Foo, L=Some, ST=Where, C=UN
05/02/23 16:43:45 Algorithm: RSA; Serial number: 0x421c3779
05/02/23 16:43:45 Valid from Wed Feb 23 15:57:45 SGT 2005 until Tue May 24 15:57:45 SGT 2005
05/02/23 16:43:45 adding as trusted cert:
05/02/23 16:43:45 Subject: CN=Server, OU=Bar, O=Foo, L=Some, ST=Where, C=UN
05/02/23 16:43:45 Issuer: CN=Server, OU=Bar, O=Foo, L=Some, ST=Where, C=UN
05/02/23 16:43:45 Algorithm: RSA; Serial number: 0x421c3768
05/02/23 16:43:45 Valid from Wed Feb 23 15:57:28 SGT 2005 until Tue May 24 15:57:28 SGT 2005
05/02/23 16:43:45 trigger seeding of SecureRandom
05/02/23 16:43:45 done seeding SecureRandom
05/02/23 16:43:45 com.sun.corba.ee.internal.iiop.GIOPImpl(Thread[Orion Launcher,5,main]): getEndpoint(SSL_MUTUALAUTH, 5557, null)
05/02/23 16:43:45 com.sun.corba.ee.internal.iiop.GIOPImpl(Thread[Orion Launcher,5,main]): createListener( socketType = SSL_MUTUALAUTH port = 5557 )
05/02/23 16:43:45 matching alias: mykey
matching alias: mykey
05/02/23 16:43:46 ORB created ..com.oracle.iiop.server.OC4JORB@65b738
05/02/23 16:43:47 com.sun.corba.ee.internal.corba.ClientDelegate(Thread[Orion Launcher,5,main]): invoke(ClientRequest) called
05/02/23 16:43:47 com.oracle.iiop.server.OC4JORB(Thread[Orion Launcher,5,main]): process: dispatching to scid 2
05/02/23 16:43:47 com.oracle.iiop.server.OC4JORB(Thread[Orion Launcher,5,main]): dispatching to sc [email protected]7
05/02/23 16:43:48 com.sun.corba.ee.internal.corba.ClientDelegate(Thread[Orion Launcher,5,main]): invoke(ClientRequest) called
05/02/23 16:43:48 com.oracle.iiop.server.OC4JORB(Thread[Orion Launcher,5,main]): process: dispatching to scid 2
05/02/23 16:43:48 com.oracle.iiop.server.OC4JORB(Thread[Orion Launcher,5,main]): dispatching to sc com.sun.corba.ee.internal.corba.ServerDelegate@9300cc
05/02/23 16:43:48 com.sun.corba.ee.internal.corba.ServerDelegate(Thread[Orion Launcher,5,main]): Entering dispatch method
05/02/23 16:43:48 com.sun.corba.ee.internal.corba.ServerDelegate(Thread[Orion Launcher,5,main]): Consuming service contexts, GIOP version: 1.2
05/02/23 16:43:48 com.sun.corba.ee.internal.corba.ServerDelegate(Thread[Orion Launcher,5,main]): Has code set context? false
05/02/23 16:43:48 com.sun.corba.ee.internal.corba.ServerDelegate(Thread[Orion Launcher,5,main]): Dispatching to servant
05/02/23 16:43:48 com.sun.corba.ee.internal.corba.ServerDelegate(Thread[Orion Launcher,5,main]): Handling invoke handler type servant
05/02/23 16:43:48 NS service created and started ..org.omg.CosNaming._NamingContextExtStub:IOR:000000000000002b49444c3a6f6d672e6f72672f436f734e616d696e672f4e616d696e67436f6e746578744578743a312e30000000000001000000000000007c000102000000000c31302e312e3231342e31310015b3000000000031afabcb0000000020d309e06a0000000100000000000000010000000c4e616d65536572766963650000000004000000000a0000000000000100000001000000200000000000010001000000020501000100010020000101090000000100010100
05/02/23 16:43:48 NS ior = ..IOR:000000000000002b49444c3a6f6d672e6f72672f436f734e616d696e672f4e616d696e67436f6e746578744578743a312e30000000000001000000000000007c000102000000000c31302e312e3231342e31310015b3000000000031afabcb0000000020d309e06a0000000100000000000000010000000c4e616d65536572766963650000000004000000000a0000000000000100000001000000200000000000010001000000020501000100010020000101090000000100010100
05/02/23 16:43:48 Oracle Application Server Containers for J2EE 10g (9.0.4.0.0) initialized
05/02/23 16:45:14 com.sun.corba.ee.internal.iiop.ConnectionTable(Thread[JavaIDL Listener,5,main]): Server getConnection(119e583[Unknown 0x0:0x0: Socket[addr=/127.0.0.1,port=1281,localport=5556]], SSL)
05/02/23 16:45:14 com.sun.corba.ee.internal.iiop.ConnectionTable(Thread[JavaIDL Listener,5,main]): host = 127.0.0.1 port = 1281
05/02/23 16:45:14 com.sun.corba.ee.internal.iiop.ConnectionTable(Thread[JavaIDL Listener,5,main]): Created connection Connection[type=SSL remote_host=127.0.0.1 remote_port=1281 state=ESTABLISHED]
com.sun.corba.ee.internal.iiop.MessageMediator(Thread[JavaIDL Reader for 127.0.0.1:1281,5,main]): Creating message from stream
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, handling exception: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, SEND TLSv1 ALERT: fatal, description = unexpected_message
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, WRITE: TLSv1 Alert, length = 2
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, called closeSocket()
05/02/23 16:45:14 com.sun.corba.ee.internal.iiop.ReaderThread(Thread[JavaIDL Reader for 127.0.0.1:1281,5,main]): IOException in createInputStream: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
05/02/23 16:45:14 javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
05/02/23 16:45:14 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.d(DashoA12275)
05/02/23 16:45:14 at com.sun.net.ssl.internal.ssl.AppInputStream.read(DashoA12275)
05/02/23 16:45:14 at com.sun.corba.ee.internal.iiop.messages.MessageBase.readFully(MessageBase.java:520)
05/02/23 16:45:14 at com.sun.corba.ee.internal.iiop.messages.MessageBase.createFromStream(MessageBase.java:58)
05/02/23 16:45:14 at com.sun.corba.ee.internal.iiop.MessageMediator.processRequest(MessageMediator.java:110)
05/02/23 16:45:14 at com.sun.corba.ee.internal.iiop.IIOPConnection.processInput(IIOPConnection.java:339)
05/02/23 16:45:14 at com.sun.corba.ee.internal.iiop.ReaderThread.run(ReaderThread.java:63)
05/02/23 16:45:14 Caused by: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
05/02/23 16:45:14 at com.sun.net.ssl.internal.ssl.InputRecord.b(DashoA12275)
05/02/23 16:45:14 at com.sun.net.ssl.internal.ssl.InputRecord.read(DashoA12275)
05/02/23 16:45:14 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(DashoA12275)
05/02/23 16:45:14 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.j(DashoA12275)
05/02/23 16:45:14 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(DashoA12275)
05/02/23 16:45:14 ... 6 more
05/02/23 16:45:14 com.sun.corba.ee.internal.iiop.IIOPConnection(Thread[JavaIDL Reader for 127.0.0.1:1281,5,main]): purge_calls: starting: code = 1398079696 die = true
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, called close()
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, called closeInternal(true)
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, called close()
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, called closeInternal(true)
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, called close()
05/02/23 16:45:14 JavaIDL Reader for 127.0.0.1:1281, called closeInternal(true)
05/02/23 16:45:14 com.sun.corba.ee.internal.iiop.ConnectionTable(Thread[JavaIDL Reader for 127.0.0.1:1281,5,main]): DeleteConn called: host = 127.0.0.1 port = 1281Good point, I do belive what you are referring to is this:
Any client, whether running inside a server or not, has EJB security properties. Table 15-2 lists the EJB client security properties controlled by the ejb_sec.properties file. By default, OC4J searches for this file in the current directory when running as a client, or in ORACLE_HOME/j2ee/home/config when running in the server. You can specify the location of this file explicitly with the system property setting -Dejb_sec_properties_location=pathname.
Table 15-2 EJB Client Security Properties
Property Meaning
# oc4j.iiop.keyStoreLoc
The path and name of the keystore. An absolute path is recommended.
# oc4j.iiop.keyStorePass
The password for the keystore.
# oc4j.iiop.trustStoreLoc
The path name and name of the truststore. An absolute path is recommended.
# oc4j.iiop.trustStorePass
The password for the truststore.
# oc4j.iiop.enable.clientauth
Whether the client supports client-side authentication. If this property is set to true, you must specify a keystore location and password.
# oc4j.iiop.ciphersuites
Which cipher suites are to be enabled. The valid cipher suites are:
TLS_RSA_WITH_RC4_128_MD5
SSL_RSA_WITH_RC4_128_MD5
TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
TLS_RSA_EXPORT_WITH_RC4_40_MD5
SSL_RSA_EXPORT_WITH_RC4_40_MD5
TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
nameservice.useSSL
Whether to use SSL when making the initial connection to the server.
client.sendpassword
Whether to send user name and password in clear form (unencrypted) in the service context when not using SSL. If this property is set to true, the user name and password are sent only to servers listed in the trustedServer list.
oc4j.iiop.trustedServers
A list of servers that can be trusted to receive passwords sent in clear form. This has no effect if client.sendpassword is set to false. The list is comma-delimited. Each entry in the list can be an IP address, a host name, a host name pattern (for example, *.example.com), or * (where "*" alone means that all servers are trusted. -
Hi,
I have deployed some ADF BC as EJB to oc4j1013 and want to access them
using the HTTP tunnel. It works perfectly within JDEV
1) Calling EJB withing JDEV with RMI
2) Calling EJB within JDEV through HTTP:ORMI
3) Calling EJB with RMI as JClient Web Start
But does not work as JClient Web Start and HTTP Tunneling with the stck below:
oracle.oc4j.rmi.OracleRemoteException: Unable to create InterfaceType: com.evermind.server.SubordinateXAResource
at com.evermind.server.rmi.RMICall.EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER(RMICall.java:110)
at com.evermind.server.rmi.RMICall.throwRecordedException(RMICall.java:128)
at com.evermind.server.rmi.RMIClientConnection.obtainRemoteMethodResponse(RMIClientConnection.java:472)
at com.evermind.server.rmi.RMIClientConnection.invokeMethod(RMIClientConnection.java:416)
at com.evermind.server.rmi.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:63)
at com.evermind.server.rmi.RecoverableRemoteInvocationHandler.invoke(RecoverableRemoteInvocationHandler.java:28)
at __Proxy0.create(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.inv
Please advise
Thanks
JOI did what Manu suggested with no success. Alternatively, I registered the driver jar with embedded OC4J preferences > global > libraries. Still does not work. Please, note, that when I run JUnit tests against my BC4J application modules with JDBC URL as connection type, everything works just fine. The problem comes while running the JSF application when the application module is using JDBC DataSource as connection type.
-
Com.evermind.server.rmi.RMIClientContext.lookup ERROR
Hello,
I'm trying to follow up the JavaEE_tutorial.PDF (http://www.oracle.com/technology/obe/JavaEE_tutorial_10131/index.htm) and when want to testing the Data Model I get this error:
D:\oracle\jdevstudio10131\jdk\bin\javaw.exe -client -classpath D:\oracle\jdevstudio10131\jdev\mywork\SRDEMO\Model\classes;D:\oracle\jdevstudio10131\j2ee\home\lib\ejb30.jar;D:\oracle\jdevstudio10131\toplink\jlib\toplink-essentials.jar;D:\oracle\jdevstudio10131\j2ee\home\lib\activation.jar;D:\oracle\jdevstudio10131\j2ee\home\lib\ejb.jar;D:\oracle\jdevstudio10131\j2ee\home\lib\jms.jar;D:\oracle\jdevstudio10131\j2ee\home\lib\jta.jar;D:\oracle\jdevstudio10131\j2ee\home\lib\mail.jar;D:\oracle\jdevstudio10131\j2ee\home\lib\servlet.jar;D:\oracle\jdevstudio10131\jdev\system\oracle.j2ee.10.1.3.39.84\embedded-oc4j\.client;D:\oracle\jdevstudio10131\j2ee\home\oc4j.jar;D:\oracle\jdevstudio10131\j2ee\home\lib\oc4j-internal.jar;D:\oracle\jdevstudio10131\opmn\lib\optic.jar;D:\oracle\jdevstudio10131\toplink\jlib\toplink.jar;D:\oracle\jdevstudio10131\toplink\jlib\toplink-oc4j.jar;D:\oracle\jdevstudio10131\toplink\jlib\antlr.jar org.srdemo.client.ServiceRequestFacadeClientEmbed
javax.naming.CommunicationException: Connection refused: connect [Root exception is java.net.ConnectException: Connection refused: connect]
at com.evermind.server.rmi.RMIClient.lookup(RMIClient.java:292)
at com.evermind.server.rmi.RMIClientContext.lookup(RMIClientContext.java:51)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at org.srdemo.client.ServiceRequestFacadeClientEmbed.main(ServiceRequestFacadeClientEmbed.java:23)
Caused by: java.net.ConnectException: Connection refused: connect
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:507)
at java.net.Socket.connect(Socket.java:457)
at java.net.Socket.<init>(Socket.java:365)
at java.net.Socket.<init>(Socket.java:207)
at com.evermind.server.rmi.RMIClientConnection.createSocket(RMIClientConnection.java:682)
at oracle.oc4j.rmi.ClientSocketRmiTransport.createNetworkConnection(ClientSocketRmiTransport.java:58)
at oracle.oc4j.rmi.ClientRmiTransport.connectToServer(ClientRmiTransport.java:78)
at oracle.oc4j.rmi.ClientSocketRmiTransport.connectToServer(ClientSocketRmiTransport.java:68)
at com.evermind.server.rmi.RMIClientConnection.connect(RMIClientConnection.java:646)
at com.evermind.server.rmi.RMIClientConnection.sendLookupRequest(RMIClientConnection.java:190)
at com.evermind.server.rmi.RMIClientConnection.lookup(RMIClientConnection.java:174)
at com.evermind.server.rmi.RMIClient.lookup(RMIClient.java:283)
... 3 more
Process exited with exit code 0.
Thanks in advance for your help,
MiguelIt does work!!
I have a incorrect connection pool in the data-sources.xml
Bye -
Error running com.evermind.server.jms.JMSUtils
I'm running the following from the Developer prompt command window of a 10.1.2 midtier install.
java -classpath C:\OraHome_AppServ\j2ee\home\oc4j.jar com.evermind.server.jms.JMSUtils destinations
This gives the following error:
Oracle Application Server Containers for J2EE 10g (10.1.2.0.0) (build "041223.1874"), OC4J JMS 1.0.2b
javax.jms.JMSException: Unable to create a connection to "/0.0.0.0:9,127" as user "null".
at com.evermind.server.jms.JMSUtils.makeJMSException(JMSUtils.java:1843)
at com.evermind.server.jms.JMSUtils.toJMSException(JMSUtils.java:1859)
at com.evermind.server.jms.EvermindConnection.<init>(EvermindConnection.java:114)
at com.evermind.server.jms.EvermindConnectionFactory.createConnection(EvermindConnectionFactory.java:118)
at com.evermind.server.jms.EvermindConnectionFactory.createConnection(EvermindConnectionFactory.java:110)
at com.evermind.server.jms.JMSUtils.dest(JMSUtils.java:679)
at com.evermind.server.jms.JMSUtils.main(JMSUtils.java:265)
I'm running this to see if my Queue to Topic sample is working correctly. I suspect this is a configuration error but I'm not sure how to fix it.
Thanks,
CraigThese objects are created on the server when the oc4j.jms.debug property is true. They are used to track DMS phases that have been started but not yet completed. DMS phases are started (and these objects created) when operations on various OC4J JMS server-side objects (representing JMS connections, sessions, producers, consumers, browsers) are started, and are (supposed to be) ended (and these objects released) when those operations complete. Specifically, allocation is done via JMSObject.lock and release is via JMSObject.unlock. It's possible that you are hitting some case where one of these operations is calling lock() and then failing to call unlock(). Note that, despite the name, in most cases the lock() method doesn't check that the given JMS object isn't already locked, so multiple calls to lock() without an unlock() will typically not generate any kind of error or warning (but will produce a memory leak).
At least for debugging purposes, a modified JMSObject.class file could be used which had a member variable isLocked, set isLocked in lock(), cleared it in unlock(), and verified it is clear before setting it (throwing/logging otherwise). If you are unable (or are legally prevented) from doing such a temporary modification yourself, you should suggest that support provide you with such a modified class file as it will likely be the fastest way to find the root cause. (Note that it would not necessarily flag an error on the faulty operation, but rather on the next attempted operation on the given object or one of its "children", so you would need to backtrack to figure out what the last operation was. "children" is defined as "session is child of connection" and "consumer/producer/browser" are child of session" -- locking/unlocking a child also locks/unlocks the parent.)
As a workaround, you might try just not using oc4j.jms.debug.
-Jeff -
Hi,
Recently i did heap dump on my application oc4j and find out lots of com.evermind.server.jms.JMSObject$ActivationRecord are created and causing the JVM restarted (because FULL GC was taken too much time and opmn ping timeout).
My application is an ADF JSF/Toplink application. I have configured Toplink cache synchronization between different servers (using session customizer class).
It also has several MDB which integrated with some BPEL Processes (Using JMS Adapter).
Platform Solaris Sparc 5.10, Oracle Application Server 10g 10.1.3 SOA Suite.
Why and What process creates this object? i know it's part of oc4j-internal.jar.
Appreciate any helps.
Regards,
RickyThese objects are created on the server when the oc4j.jms.debug property is true. They are used to track DMS phases that have been started but not yet completed. DMS phases are started (and these objects created) when operations on various OC4J JMS server-side objects (representing JMS connections, sessions, producers, consumers, browsers) are started, and are (supposed to be) ended (and these objects released) when those operations complete. Specifically, allocation is done via JMSObject.lock and release is via JMSObject.unlock. It's possible that you are hitting some case where one of these operations is calling lock() and then failing to call unlock(). Note that, despite the name, in most cases the lock() method doesn't check that the given JMS object isn't already locked, so multiple calls to lock() without an unlock() will typically not generate any kind of error or warning (but will produce a memory leak).
At least for debugging purposes, a modified JMSObject.class file could be used which had a member variable isLocked, set isLocked in lock(), cleared it in unlock(), and verified it is clear before setting it (throwing/logging otherwise). If you are unable (or are legally prevented) from doing such a temporary modification yourself, you should suggest that support provide you with such a modified class file as it will likely be the fastest way to find the root cause. (Note that it would not necessarily flag an error on the faulty operation, but rather on the next attempted operation on the given object or one of its "children", so you would need to backtrack to figure out what the last operation was. "children" is defined as "session is child of connection" and "consumer/producer/browser" are child of session" -- locking/unlocking a child also locks/unlocks the parent.)
As a workaround, you might try just not using oc4j.jms.debug.
-Jeff
Maybe you are looking for
-
HP PSC 1350 Series Printer will NOT print from the internet ~ but will print a word document.
I have an HP PSC all-in-one PSC 1350 Series printer. the operating system is Windows XP to the computer it's USB connected to. Earlier this week I was having troubles with the WIFI and IT helpers changed setting on the modem and the router. Still
-
Discovery data couldn't be inserted to the database. This could have happened because of one of the following reasons: - Discovery data is stale. The discovery data is generated by an MP recently deleted. - Database connectivity problems or data
-
Multitask screen not on top but on bottom of screen
Multitask info not on top of screen, but at bottom ????
-
Hi, i use in abap EXCEL with OLE and visible mode. Every thing works like i want, but when excel starts, it's allways behind the SAP Window. Is there any way to start the excel allways in foreground? Regards, Dieter Moved to GUI - Forum Edited by: Di
-
Problems in customising the HRASR00_PROFILES_SHOW WDA
Hi, I am trying to customise the search part of HRASR00_PROFILES_SHOW.Actually it uses HRASR00_EMPLOYEE_SEARCH as a component usage for search functionality and that component internally uses CL_HRASR00_WD_EMPLOYEE_SEARCH class to define the query an