ClassCastException for RMI-IIOP client hitting CORBA server
I am writing a RMI-IIOP client to connect to an existing CORBA C++ server. I started out with writing a RMI Interface mimicking the IDL and then converting into a stub using rmic -iiop option. I then use COSNaming to connect to the server. When I narrow the reference using PortableRemoteObject.narrow(), I get a ClassCastException. Probably because the object that I get from naming service will be a CORBA object which cannot be casted to RMI Interface object.
Exception in thread "main" java.lang.ClassCastException
at com.sun.corba.se.impl.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:229)
at javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:137)
at com.att.cswd.poc.RMIIIOPClient.IMSConnect(RMIIIOPClient.java:46)
at com.att.cswd.poc.RMIIIOPClient.main(RMIIIOPClient.java:27)
Caused by: java.lang.ClassCastException: Object is not of remote type com.att.cswd.poc.CORBAInterface
at com.sun.corba.se.impl.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:221)
... 3 more
Code
CORBAInterface ims;
String tranCode="CRTUN130";
byte[][] input_segs = null;
try {
Hashtable hm = new Hashtable();
hm.put("java.naming.factory.initial", "com.sun.jndi.cosnaming.CNCtxFactory");
hm.put("java.naming.provider.url", "corbaloc:iiop:BSYS.MVS.SC.COM:14050/NameService");
Context initialNamingContext = new InitialContext(hm);
Object objref = initialNamingContext.lookup("O2K/AdapterInterface");
ims = (CORBAInterface) PortableRemoteObject.narrow(objref, CORBAInterface.class);
byte output_segs[][] = ims.run_transaction_binary(tranCode, input_segs);
System.out.println ("Response is " + output_segs);
} catch (NamingException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
}
I am writing a RMI-IIOP client to connect to an existing CORBA C++ serverAs it says in [the Javadoc|http://java.sun.com/j2se/1.5.0/docs/guide/rmi-iiop/rmiiiopUsing.html#when], you can't do that. For RMI/IIOP you have to start with a PortableRemoteObject and rmic -iiop. You can use a C++ client to that but you can't use an RMI/IIOP client to a C++ server.
Use IDLJ.
Similar Messages
-
RMI-IIOP client - CORBA Server
I already have a CORBA server in C++ which has already been written. I am trying to develop an RMI-IIOP client which would talk to this CORBA Server.
The CORBA server has several interfaces that I would like to use with my RMI-IIOP client. How do I proceed?? Can somebody give me an example of an RMI-IIOP client? Basically my question is: how do I take the IDL and build an RMI-IIOP client with it???Hello
I already have a CORBA server in C++ which has already
been written. I am trying to develop an RMI-IIOP
client which would talk to this CORBA Server.
The CORBA server has several interfaces that I would
like to use with my RMI-IIOP client. How do I
proceed?? Can somebody give me an example of an
RMI-IIOP client? Basically my question is: how do I
take the IDL and build an RMI-IIOP client with it???The steps to do are the following:
* Creating the Remote interface
* Using the rmic compiler to genarate the IDL and the client stub.
* Generating stub and skeleton of the C++ server using that IDL (the one you already made is no longer compatible)
* Bulding up the new C++ server
* Using a nameservice (tnameserver for example) and binding your server to that.
* Writing the RMI-IIOP client
I proceeded like this (using Visibroker 4.5 on the server side) and I was able to do it... but as you can see from my last post, I wasn't able to pass Strings from the client to the server.
Bye -
Distributed transactions across RMI-IIOP client to RMI-IIOP server do not work
Hi,
Based on the links below:
http://e-docs.bea.com/wls/docs61/jta/trxrmi.html#1018506
http://e-docs.bea.com/wls/docs61/jta/gstrx.html#1067532
It appears that is possible to have distributed transactions across RMI-IIOP
clients and RMI-IIOP applications (servers).
I followed up the "Transactions Sample RMI Code" section but it appears that
the transaction context is not propagated from client to server. I am also
surprised by the note:
Note: These code fragments do not derive from any of the sample applications
that ship with WebLogic Server. They merely illustrate the use of the
UserTransaction object within an RMI application.
The above note suggests that there is no sample code available.
Is there anyone who successfully had RMI-IIOP applications (servers)
participating in distributed transactions?
Is there any sample code that illustrates RMI-IIOP applications (servers)
participating in distributed transactions?
If anyone thinks that this should work I will post my code that does not
work.
Regards,
Dan Cimpoesu
But if you look to the diagram:
http://e-docs.bea.com/wls/docs61/jta/gstrx.html#1040200
it suggests that transactional context is passed from clients to RMI-IIOP
servers.
Am I wrong?
Dan
"Andy Piper" <[email protected]> wrote in message
news:[email protected]..
"Dan Cimpoesu" <[email protected]> writes:
Transactions over IIOP are not supported or implemented in WLS 6.1 or
previous. This is a feature of WLS 7.0. In 7.0 we implement OTS.
andy
Hi,
Based on the links below:
http://e-docs.bea.com/wls/docs61/jta/trxrmi.html#1018506
http://e-docs.bea.com/wls/docs61/jta/gstrx.html#1067532
It appears that is possible to have distributed transactions across
RMI-IIOP
clients and RMI-IIOP applications (servers).
I followed up the "Transactions Sample RMI Code" section but it appearsthat
the transaction context is not propagated from client to server. I amalso
surprised by the note:
Note: These code fragments do not derive from any of the sampleapplications
that ship with WebLogic Server. They merely illustrate the use of the
UserTransaction object within an RMI application.
The above note suggests that there is no sample code available.
Is there anyone who successfully had RMI-IIOP applications (servers)
participating in distributed transactions?
Is there any sample code that illustrates RMI-IIOP applications(servers)
participating in distributed transactions?
If anyone thinks that this should work I will post my code that does not
work.
Regards,
Dan Cimpoesu -
Distributed transactions across RMI-IIOP client to server do not work
Hi,
Based on the links below:
http://e-docs.bea.com/wls/docs61/jta/trxrmi.html#1018506
http://e-docs.bea.com/wls/docs61/jta/gstrx.html#1067532
It appears that is possible to have distributed transactions across RMI-IIOP
clients and RMI-IIOP applications (servers).
I followed up the "Transactions Sample RMI Code" section but it appears that
the transaction context is not propagated from client to server. I am also
surprised by the note:
Note: These code fragments do not derive from any of the sample applications
that ship with WebLogic Server. They merely illustrate the use of the
UserTransaction object within an RMI application.
The above note suggests that there is no sample code available.
Is there anyone who successfully had RMI-IIOP applications (servers)
participating in distributed transactions?
Is there any sample code that illustrates RMI-IIOP applications (servers)
participating in distributed transactions?
If anyone thinks that this should work I will post my code that does not
work.
Regards,
Dan CimpoesuBut if you look to the diagram:
http://e-docs.bea.com/wls/docs61/jta/gstrx.html#1040200
it suggests that transactional context is passed from clients to RMI-IIOP
servers.
Am I wrong?
Dan
"Andy Piper" <[email protected]> wrote in message
news:[email protected]..
"Dan Cimpoesu" <[email protected]> writes:
Transactions over IIOP are not supported or implemented in WLS 6.1 or
previous. This is a feature of WLS 7.0. In 7.0 we implement OTS.
andy
Hi,
Based on the links below:
http://e-docs.bea.com/wls/docs61/jta/trxrmi.html#1018506
http://e-docs.bea.com/wls/docs61/jta/gstrx.html#1067532
It appears that is possible to have distributed transactions across
RMI-IIOP
clients and RMI-IIOP applications (servers).
I followed up the "Transactions Sample RMI Code" section but it appearsthat
the transaction context is not propagated from client to server. I amalso
surprised by the note:
Note: These code fragments do not derive from any of the sampleapplications
that ship with WebLogic Server. They merely illustrate the use of the
UserTransaction object within an RMI application.
The above note suggests that there is no sample code available.
Is there anyone who successfully had RMI-IIOP applications (servers)
participating in distributed transactions?
Is there any sample code that illustrates RMI-IIOP applications(servers)
participating in distributed transactions?
If anyone thinks that this should work I will post my code that does not
work.
Regards,
Dan Cimpoesu -
[att1.html]
I've been fighting the same issues over the past few days. The answer you gave still left me
wondering which tool to use. Should it be rmi -iiop or ejbc -iiop? I get the idl files on
WLS 5.1 generated but then I can't get the idlj to execute properly on the generated
HelloHome.idl and Hello.idl.
Wayne
Andy Piper wrote:
Abhishek <[email protected]> writes:
But How do I write Rmi - iiop clients for EJBs.
when I try to generate the IDL for my EJB by running the weblogic.rmic utility I get an
error that none of my classes ( Remote, Home and Impl ) implement the remote
interface. Which is true as EJBs do not directly implement the remote interface.You may be able to get this to work with WLS6.0SP1 and the
-idlMethodSignatures flag. Take a look at the methods target in
examples/rmi_iiop/ejb/generic_idl or at
examples/rmi_iiop/ejb/simplified_idl. This all works fine in
Silversword.
andy -
How to get MAC Address for maintaning unique client id at server side?
Hi All,
Can somebody tell how can i get MAC id for maintaing Unique client id at server.
or is there any alternative way to do this?
Thanks in advance..
CKUsually people just use cookies for that.
-
This is part of the EJB 2.0 spec
business methods of a session bean
The argument and return value types for a method must be legal types for RMI/IIOP if the
method corresponds to a business method on the session bean�s remote interface.
What are the "legal types for RMI/IIOP"?Curiously enough all Java types are legal. See http://www.omg.org/cgi-bin/doc?ptc/00-01-06.
EJP -
Clients for RMI-IIOP (help)
hi,
I am using RMI-IIOP(not using IDL) . I want to know if it
possible to implement clients using C++ without haviNg IDL.
thanx
pradeep"pradeep bhat" <[email protected]> writes:
I am using RMI-IIOP(not using IDL) . I want to know if it
possible to implement clients using C++ without haviNg IDL.Possible but not necessarily any easier. You could use JNI or COM
maybe.
andy -
Hi -
I'm working to modify a C program (gnuplot) so that it can remotely call functions in Java.
My current plan is to use RMI-IIOP on the Java side. I'd like to create a class that implements java.rmi.Remote via some local implementation class, instantiate it, then obtain a stringified IOR for that object and pass it to gnuplot, which can then use the IOR to call remote methods.
Also, I'm planning to use CORBA DII on the client side, since I want a generic program where the remote method names can be set by user options at run time.
Does this make sense? I'm working with this tutorial code:
http://java.sun.com/j2se/1.5.0/docs/guide/rmi-iiop/tutorial.html
and am stuck on obtaining an IOR in the server code.
Any help would be appreciated...Well, I figured it out. The key method is remoteToCorba in com.sun.jndi.toolkit.corba.CorbaUtils. Here's my server code:
//HelloServer.java
import java.io.*;
import org.omg.CORBA.ORB;
import com.sun.jndi.toolkit.corba.CorbaUtils;
public class HelloServer {
public static void main(String[] args) {
try {
// Step 1: Instantiate the Hello servant
HelloImpl helloRef = new HelloImpl();
// Step 2: Initialize the ORB
ORB orb = ORB.init(args, null);
// Step 3: Convert the Hello servant to a CORBA object
org.omg.CORBA.Object corba_obj;
corba_obj = CorbaUtils.remoteToCorba(helloRef, orb);
// Step 4a: Announce the IOR to STDOUT
String ior = orb.object_to_string(corba_obj);
System.out.println("IOR: " + ior);
// Step 4b: Announce the IOR to a file
FileWriter fw = new FileWriter("hello.ior");
fw.write(ior);
fw.close();
System.out.println("Hello Server: Ready...");
} catch (Exception e) {
System.out.println("Trouble: " + e);
e.printStackTrace();
}And here's the matching client code:
//HelloClient.java
import java.io.*;
import org.omg.CORBA.ORB;
import javax.rmi.PortableRemoteObject;
public class HelloClient {
public static void main( String args[] ) {
HelloInterface hi;
try {
// Step 1: Initialize the ORB
ORB orb = ORB.init(args, null);
// Step 2: Obtain the stringified IOR from a file
FileReader fr = new FileReader("hello.ior");
BufferedReader br = new BufferedReader(fr);
String ior = br.readLine();
// Step 3: Convert the IOR to a CORBA object reference
org.omg.CORBA.Object objref = orb.string_to_object(ior);
// Step 4: Narrow the CORBA object reference to the concrete type
hi = (HelloInterface) PortableRemoteObject.narrow(
objref, HelloInterface.class);
// Step 5: Invoke the method.
hi.sayHello( " MARS " );
} catch( Exception e ) {
System.err.println( "Exception " + e + "Caught" );
e.printStackTrace( );
return;
}The other two files are unchanged from the original example:
//HelloInterface.java
import java.rmi.Remote;
public interface HelloInterface extends java.rmi.Remote {
public void sayHello( String from ) throws java.rmi.RemoteException;
//HelloImpl.java
import javax.rmi.PortableRemoteObject;
public class HelloImpl extends PortableRemoteObject implements HelloInterface {
public HelloImpl() throws java.rmi.RemoteException {
super(); // invoke rmi linking and remote object initialization
public void sayHello( String from ) throws java.rmi.RemoteException {
System.out.println( "Hello from " + from + "!!" );
System.out.flush();
}Compilation and usage is straightforward:
javac *.java
rmic -iiop HelloImpl
java -cp . HelloServer
java -cp . HelloClientIt gives warnings about using a Sun proprietary interface, but that's the only problem that I've had with the Java end. Getting the C end working has been more challenging. ORBit seems to have some serious interoperability problems. I haven't gotten it working yet with Java. -
Classcastexception with rmi-iiop
Hi,
I try the rmi-iiop example in examples/rmi_iiop/hello using Sun's JDK 1.3rc1 on Linux. I use weblogic.rmic to generate an IDL file from HelloImpl.class. Next, I use idlj (comes with the JDK) to generate those help .java files from IDL. Then, I compile these files and HelloClient.java. I start Weblogic(SP6) and launch HelloClient using the command,
java examples.rmi_iiop.hello.HelloClient {long IOR number string}
Weblogic server throws this exception when the client make a contact,
Sun Dec 17 16:52:33 GMT+08:00 2000:<I> <WebLogicServer> WebLogic Server started
Sun Dec 17 16:52:40 GMT+08:00 2000:<I> <ListenThread> Adding address: localhost/127.0.0.1 to licensed client list
Sun Dec 17 16:52:40 GMT+08:00 2000:<E> <Adapter> Exception thrown by rmi server: [-8596339638698095515S127.0.0.1:[7001,7001,7002,7002,7001,-1]/8]
java.lang.ClassCastException: examples.rmi_iiop.hello.HelloImpl
at weblogic.cos.naming.NamingContextImpl.resolve(NamingContextImpl.java:138)
at weblogic.cos.naming.NamingContext_WLSkel.invoke(NamingContext_WLSkel.java:53)
at weblogic.rmi.extensions.BasicServerObjectAdapter.invoke(BasicServerObjectAdapter.java:347)
at weblogic.rmi.extensions.BasicRequestHandler.handleRequest(BasicRequestHandler.java:69)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:15)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:135)
Why there is a ClassCastException? If there a compatiblity problem with idlj that comes with the JDK? Please advise.Generally, this is a classpath problem. You must ensure that the classes that are produced by jidl are not in the WLS classpath; similarly, the RMI interfaces must not be visible to the java CORBA client.
IMO, a java CORBA client is not a viable development platform.
TH Lim wrote:
Hi,
I try the rmi-iiop example in examples/rmi_iiop/hello using Sun's JDK 1.3rc1 on Linux. I use weblogic.rmic to generate an IDL file from HelloImpl.class. Next, I use idlj (comes with the JDK) to generate those help .java files from IDL. Then, I compile these files and HelloClient.java. I start Weblogic(SP6) and launch HelloClient using the command,
java examples.rmi_iiop.hello.HelloClient {long IOR number string}
Weblogic server throws this exception when the client make a contact,
Sun Dec 17 16:52:33 GMT+08:00 2000:<I> <WebLogicServer> WebLogic Server started
Sun Dec 17 16:52:40 GMT+08:00 2000:<I> <ListenThread> Adding address: localhost/127.0.0.1 to licensed client list
Sun Dec 17 16:52:40 GMT+08:00 2000:<E> <Adapter> Exception thrown by rmi server: [-8596339638698095515S127.0.0.1:[7001,7001,7002,7002,7001,-1]/8]
java.lang.ClassCastException: examples.rmi_iiop.hello.HelloImpl
at weblogic.cos.naming.NamingContextImpl.resolve(NamingContextImpl.java:138)
at weblogic.cos.naming.NamingContext_WLSkel.invoke(NamingContext_WLSkel.java:53)
at weblogic.rmi.extensions.BasicServerObjectAdapter.invoke(BasicServerObjectAdapter.java:347)
at weblogic.rmi.extensions.BasicRequestHandler.handleRequest(BasicRequestHandler.java:69)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:15)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:135)
Why there is a ClassCastException? If there a compatiblity problem with idlj that comes with the JDK? Please advise. -
Cannot connect RMI-IIOP client to standalone OC4J (10.1.3)
[PROBLEM]
I am trying to access an EJB session bean from a simple remote java client.
The EJB is deployed to a standalone OC4J server.
Using the RMI-over-IIOP protocol for client-server communication.
The client and server run in separate JVMs (but on the same machine).
This is a simple java client program, not a J2EE application client.
The InitialContext creation fails with the errors shown below.
I searched around on the web, and found other people with the same issue, but no solution:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4995985
Maybe I'm missing something in my configuration, deployment, client invocation?
Any help will be greatly appreciated!
[SETUP]
I generated the iiop stubs during deployment (-DGenerateIIOP=true) to the server. Added the generated IIOPClient jar file to my client classpath.
Also specified -enableIIOP and remote=true for the EJB deployment.
As per the 10.1.3 documentation, I also specified the following command line arguments:
-Djavax.rmi.CORBA.PortableRemoteObjectClass=com.sun.corba.ee.impl.javax.rmi.PortableRemoteObject
-Dcom.oracle.CORBA.OrbManager=com.oracle.corba.ee.impl.orb.ORBManagerImpl
-Dorg.omg.CORBA.ORBInitialHost=testpc1
-Dorg.omg.CORBA.ORBInitialPort=5555
Verified in Oracle Enterprise Manager 10g (Application Server Control) that the application was deployed successfully, and a Stateful Session Bean is visible in the EJB pane.
Also verified that the iiop port (5555) is functioning (netstat).
internal-settings.xml file:
<server-extension-provider name="IIOP" class="com.oracle.iiop.server.IIOPServerExtensionProvider">
<sep-property name="port" value="5555"/>
<sep-property name="host" value="localhost"/>
<sep-property name="ssl" value="false"/>
<sep-property name="ssl-port" value="5556"/>
<sep-property name="ssl-client-server-auth-port" value="5557"/>
<sep-property name="trusted-clients" value="*"/>
</server-extension-provider>
server.xml file contains this entry:
<sep-config path="./internal-settings.xml"/>
[Versions]
Oracle Containers for J2EE 10g (10.1.3.0.0) (build 060119.1546.05277)
java version "1.5.0_04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_04-b05)
Java HotSpot(TM) Client VM (build 1.5.0_04-b05, mixed mode, sharing)
[ERROR]
com.sun.corba.ee.impl.legacy.connection.SocketFactoryContactInfoImpl <init>
WARNING: ORBUTIL.invalidEndPointInfoType
org.omg.CORBA.INTERNAL: vmcid: SUN minor code: 281 completed: No
at com.sun.corba.ee.impl.logging.ORBUtilSystemException.invalidEndPointInfoType(ORBUtilSystemException.java:5084)
at com.sun.corba.ee.impl.logging.ORBUtilSystemException.invalidEndPointInfoType(ORBUtilSystemException.java:5106)
at com.sun.corba.ee.impl.legacy.connection.SocketFactoryContactInfoImpl.<init>(SocketFactoryContactInfoImpl.java:62)
at com.sun.corba.ee.impl.legacy.connection.SocketFactoryContactInfoListIteratorImpl.next(SocketFactoryContactInfoListIteratorImpl.java:59)
at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.request(CorbaClientDelegateImpl.java:114)
at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.is_a(CorbaClientDelegateImpl.java:214)
at org.omg.CORBA.portable.ObjectImpl._is_a(ObjectImpl.java:112)
at org.omg.CosNaming.NamingContextHelper.narrow(NamingContextHelper.java:69)
at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(CNCtx.java:345)
at com.sun.jndi.cosnaming.CNCtx.initUsingCorbanameUrl(CNCtx.java:321)
at com.sun.jndi.cosnaming.CNCtx.initUsingUrl(CNCtx.java:247)
at com.sun.jndi.cosnaming.CNCtx.createUsingURL(CNCtx.java:85)
at com.sun.jndi.url.iiop.iiopURLContextFactory.getUsingURLIgnoreRest(iiopURLContextFactory.java:56)
at com.sun.jndi.url.iiop.iiopURLContextFactory.getUsingURL(iiopURLContextFactory.java:61)
at com.sun.jndi.url.iiop.iiopURLContextFactory.getObjectInstance(iiopURLContextFactory.java:34)
at oracle.j2ee.iiop.IIOPInitialContextFactory.getInitialContext(IIOPInitialContextFactory.java:76)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at ejbremoteclient.Main.getContext(Main.java:80)
at ejbremoteclient.Main.main(Main.java:87)
javax.naming.NamingException
at oracle.j2ee.iiop.IIOPInitialContextFactory.getInitialContext(IIOPInitialContextFactory.java:86)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at ejbremoteclient.Main.getContext(Main.java:80)
at ejbremoteclient.Main.main(Main.java:87)
ClientIIOPSSLSocketFactory.getEndpointInfo: iopprofile is not an instance of IIOPProfileTemplate
[CLIENT CODE]
// get context
Hashtable env = new Hashtable();
env.put("java.naming.provider.url", "corbaname::testpc1:5555#DME3");
env.put("java.naming.factory.initial", "oracle.j2ee.iiop.IIOPInitialContextFactory");
env.put(Context.SECURITY_PRINCIPAL, "oc4jadmin");
env.put(Context.SECURITY_CREDENTIALS, "welcome");
Context ic = new InitialContext(env); <---FAILS HEREHello Deepak
I've been doing some other stuff and then back to RMI/IIOP tests wih my app...
Finally I passed the previous errors, it all ended up being misconfigurations on the server and client side.
Now I'm striving with this one ...
java.rmi.AccessException: CORBA NO_PERMISSION 0 No; nested exception is:
org.omg.CORBA.NO_PERMISSION: ----------BEGIN server-side stack trace----------
org.omg.CORBA.NO_PERMISSION: vmcid: 0x0 minor code: 0 completed: No
at oracle.oc4j.corba.iiop.security.SecServerRequestInterceptor.receive_request(SecServerRequestInterceptor.java:354)
at com.sun.corba.ee.impl.interceptors.InterceptorInvoker.invokeServerInterceptorIntermediatePoint(InterceptorInvoker.java:509)
at com.sun.corba.ee.impl.interceptors.PIHandlerImpl.invokeServerPIIntermediatePoint(PIHandlerImpl.java:505)
at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.getServantWithPI(CorbaServerRequestDispatcherImpl.java:429)
at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:191)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1653)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1513)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:895)
at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:172)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:668)
at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.dispatch(SocketOrChannelConnectionImpl.java:375)
at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.read(SocketOrChannelConnectionImpl.java:284)
at com.sun.corba.ee.impl.transport.ReaderThreadImpl.doWork(ReaderThreadImpl.java:73)
at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:382)
----------END server-side stack trace---------- vmcid: 0x0 minor code: 0 completed: No
at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:204)
at javax.rmi.CORBA.Util.mapSystemException(Util.java:67)
at com.x.tools.login.ejb._LoginHome_Stub.create(Unknown Source)
at com.x.tools.login.clientside.model.Facade.<init>(Facade.java:168)
at com.x.tools.login.clientside.model.Facade.getInstance(Facade.java:122)
at com.x.tools.login.clientside.LoginApp.doLogin(LoginApp.java:169)
at com.x.tools.login.clientside.Login.getInstance(Login.java:83)
at com.x.caracas.AdminApp.clientside.MainAdminApp.<init>(MainAdminApp.java:30)
at com.x.caracas.AdminApp.clientside.MainAdminApp.main(MainAdminApp.java:81)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.continueLaunch(Unknown Source)
at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)
at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.omg.CORBA.NO_PERMISSION: ----------BEGIN server-side stack trace----------
org.omg.CORBA.NO_PERMISSION: vmcid: 0x0 minor code: 0 completed: No
at oracle.oc4j.corba.iiop.security.SecServerRequestInterceptor.receive_request(SecServerRequestInterceptor.java:354)
at com.sun.corba.ee.impl.interceptors.InterceptorInvoker.invokeServerInterceptorIntermediatePoint(InterceptorInvoker.java:509)
at com.sun.corba.ee.impl.interceptors.PIHandlerImpl.invokeServerPIIntermediatePoint(PIHandlerImpl.java:505)
at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.getServantWithPI(CorbaServerRequestDispatcherImpl.java:429)
at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:191)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1653)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1513)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:895)
at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:172)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:668)
at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.dispatch(SocketOrChannelConnectionImpl.java:375)
at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.read(SocketOrChannelConnectionImpl.java:284)
at com.sun.corba.ee.impl.transport.ReaderThreadImpl.doWork(ReaderThreadImpl.java:73)
at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:382)
----------END server-side stack trace---------- vmcid: 0x0 minor code: 0 completed: No
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at com.sun.corba.ee.impl.protocol.giopmsgheaders.MessageBase.getSystemException(MessageBase.java:791)
at com.sun.corba.ee.impl.protocol.giopmsgheaders.ReplyMessage_1_2.getSystemException(ReplyMessage_1_2.java:97)
at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.getSystemExceptionReply(CorbaMessageMediatorImpl.java:546)
at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.processResponse(CorbaClientRequestDispatcherImpl.java:430)
at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.marshalingComplete(CorbaClientRequestDispatcherImpl.java:326)
at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:132)
at org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:457)
... 18 more
Hope it's easy to solve ... I'm not using JAAS .. my jndi.properties looks like this:
java.naming.security.principal=oc4jadmin
java.naming.security.credentials=welcome javax.rmi.CORBA.PortableRemoteObjectClass=com.sun.corba.ee.impl.javax.rmi.PortableRemoteObject
com.oracle.CORBA.OrbManager=com.oracle.corba.ee.impl.orb.ORBManagerImpl
java.naming.factory.initial=oracle.j2ee.iiop.IIOPInitialContextFactory
java.naming.provider.url=corbaname::serverhost:13321#/MyApp -
C++ client to CORBA server on 8i
I have seen a few posts on this topic, but no replies so far.
I have downloaded the interop.tar file required for a C++ to be authenticated to the Corba server.
At this stage I am unable to link the Login.lib library (using Borland builder compiler)
If anyone managed to get the example going included in interop.tar please respond.
nullThere is a known issue with Visibroker for C++ 3.3 orb, which is mentioned
in the readme file that is part of interop.tar. A (not too pretty) workaround is also suggested in the readme file.
Hope this helps -
ODBC for Oracle 9i client on Presentation Server 4.5
Does anyone have an Oracle 9i ODBC driver or something that will work for an app that is Oracle 9.1 on presentation server 4.5? The application loads but tnsping returns ORA-12504 error.
Tnsnames is same tnsnames file we use on Presentation 4.0 for same app. Don't know how to fix. Vendor says not supported, boss says too bad make it work.
I can't find 9.1 drivers on Oracle site. If someone has them or has a solution please reply to this post.
ThanksHi, I appreciate your reply. Let me explain. We use a program called Centricity EMR formerly known as Logician. The program is bundled into an Oracle database. I did get the version wrong. Here is from the About in the program: Logician 5.6.8_1 (125) / DB 5.6.8_1
E&M Advisor 5, 4, 1, 7
Medispan MDDB database 2007.12
Oracle9i Release 9.2.0.4.0 - Production
Next item is Presentation Server is a version of Citrix. We currently are in production on Presentation Server 4.0. We want to rollout into a new Citrix farm that is Presentation 4.5. I don't know if you are familiar with Citrix or not. At any rate we load a Logician client to the server and publish it so users can get to it from their thin client (citrix) devices.
The Oracle Home lives on the Oracle database server not on the Citrix servers. We only have one Home per Oracle server.
I don't do a command line tnsping, I have a utility that comes with Logician to check Oracle Server connectivity.
It does the same thing as if I typed tnsping <database name>.
Here is our sqlnet.ora (we don't modify this ever, it is already configured)
# SQLNET.ORA Network Configuration File: d:\oracle\ora92\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.
NAMES.DEFAULT_DOMAIN= WORLD
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
Here is tnsnames.ora (we can modify the part in front of the .WORLD and the ip address)
<databasename>.world =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(COMMUNITY = TCP.world)
(PROTOCOL = TCP)
(Host = <ipaddress>)
(PORT = 1521)
(CONNECT_DATA = (SID = ORA7)
# (SDU=8192)
I think that is all you asked for. Like I said the Logician client runs just fine in Presentation 4.0. On 4.5 I can't connect to the Oracle but it has to be something simple I can change to make it work. The reason why I think it is ODBC is because Presentation server has a 32-bit ODBC and a 64-bit ODBC. You can't see the service in 64-bit but you can in 32-bit. I just can't figure out how to trick it to pull from 32-bit.
Thanks so much, hope you can help -
Implementing Java valuetypes in C++ for rmi-iiop (OBV)
So let me get this straight, for each Java serializable (valuetype) class
that we use in a C++/CORBA client, we have to implement the valuetype in
C++?
It seems silly for everyone to implement the Java class library valuetypes
in C++ (leaving aside the problems of getting the implementation correct).
Is anyone creating a C++ library for this purpose, or must we each reinvent
the wheel?
--VinceA value type is analogous to a struct, but the code that is generated for it is a object with methods that the compiler will generally not allow you to ignore. As I understood it, the question was directed towards any possible implementers of a generic class library for the java types that result
from the generation of the value types in c++. I don't know of such library at this point... does anyone else?
Filip Hanik wrote:
my understanding is that
Java data is mapped to OMG IDL and that is mapped to C++.
So if you create a serializable java object, that becomes a struct in the IDL
which you can automatically generate your C++ code for.
does this help?
In article <8ibetb$oat$[email protected]>, [email protected] says...
So let me get this straight, for each Java serializable (valuetype) class
that we use in a C++/CORBA client, we have to implement the valuetype in
C++?
It seems silly for everyone to implement the Java class library valuetypes
in C++ (leaving aside the problems of getting the implementation correct).
Is anyone creating a C++ library for this purpose, or must we each reinvent
the wheel?
--Vince
Filip Hanik
Software Architect
XMarkstheSpot.com
[email protected] -
Help me for Programming Mail Client and Mail Server
I need help on programming mail client.it is totaly new topic for me.
and i hope some one experienced would surely help me.
thanksDownload mail api, it comes with tons of examples
http://java.sun.com/products/javamail/
amgandhi said it all... go download it ya lazy sack
Maybe you are looking for
-
Digest http authentication via CalDAV with non-ASCII login
When I creating new CalDAV calendar with login that contains non-ASCII characters, iCal calendar doesn't sent Authorization header in a request package. When I use ascii login http request contains header like: Authorization: Digest username="Art", r
-
CS2 suddenly wants serial number
I currently am running a combination of CS2 and CS3. I have CS2 versions of In Design, Photoshop , Illustrator etc. I have CS3 versions of PS, DW, AI, Flash etc. All have been operating successfully for years. Suddenly CS2 In Design is requesting a s
-
CS4 Photoshop cropping problem
Every time I try to crop an image, it automatically crops to .003" square. Rebooted my computer and it still does this. Tried the cropping in CS3 version and works fine. Is there a glitch in CS4? Thanks in advance for any help.
-
Need to re-download Photo shop 10 and Premiere elements 10, have keys
How do I re-download Photosop 10 and Premiere Elements 10, have keys.
-
Store User specific data in Secure file in EP
Hi I wanted to store User specific data into Secure file .Please help me to access JAVA Secure Storage API 's of SAP netweaver Regards Ganesan S