-
1. Re: Call JBOSS EJB from ORACLE
nickman Jul 7, 2004 2:05 PM (in response to pedrosalazar)Pedro;
Did you set resolve=on when you loaded the client.jar into Oracle ? -
2. Re: Call JBOSS EJB from ORACLE
pedrosalazar Jul 7, 2004 4:10 PM (in response to pedrosalazar)Yes I did.
I set the resolve=on for the jbossall-client.jar plus my EJB interfaces and for the proxy class. Are any other classes (jar files) need to be loaded to oracle?
I also compiled the invalid classes in oracle:select 'ALTER JAVA CLASS &1.."' || object_name || '" RESOLVER ((* USER)(* OTHER)(* PUBLIC)) COMPILE;' from ALL_OBJECTS where object_type in ('JAVA CLASS', 'JAVA SOURCE') and status = 'INVALID' and OWNER = 'USER';
But I get always a few that still invalid in the end. If I'm not mistake, about 537 classes.
Thanks.
Regards,
Pedro Salazar. -
3. Re: Call JBOSS EJB from ORACLE
nickman Jul 7, 2004 4:56 PM (in response to pedrosalazar)Now I am not sure. I will see if I can reproduce this on Oracle 9.2.0.4. What platform are you on ?
-
4. Re: Call JBOSS EJB from ORACLE
pedrosalazar Jul 7, 2004 8:25 PM (in response to pedrosalazar)Hi nickman,
I just tested now in Oracle Server 9.2.0.5 (before I had tried in 9.2.0.4), but the problem remains.
I only submitted in the database the jbossall-client.jar (537 classes unresolved).
Can you tell me what jars did you loaded to your database? And from jboss version?
Another info:
-I'm testing in a Linux environment, with Oracle Server 9.2.0.{4,5} and JBOSS 3.2.5.
-I only granted the following privileges (the ones that oracle complained):call dbms_java.grant_permission( 'UIF', 'SYS:java.net.SocketPermission', 'localhost:1024-', 'listen,resolve' ); call dbms_java.grant_permission( 'UIF', 'SYS:java.net.SocketPermission', '230.0.0.4', 'connect,accept,resolve');
-And here it goes the properties I set:java.util.Properties p = new java.util.Properties(); p.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory"); p.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces"); p.put(Context.PROVIDER_URL, "localhost:1099"); ic = new javax.naming.InitialContext(p);
Regards,
Pedro Salazar -
5. Re: Call JBOSS EJB from ORACLE
nickman Jul 8, 2004 8:31 AM (in response to pedrosalazar)Windows XP Professional
JBoss jboss-3.2.0_tomcat-4.1.24
Oracle Enterprise Version 9.2.0.1.0
You can see the narrative of a prior thread starting here: http://www.mail-archive.com/jboss-user@lists.sourceforge.net/msg28259.html//www.mail-archive.com/jboss-user@lists.sourceforge.net/msg28259.html -
6. Re: Call JBOSS EJB from ORACLE
pedrosalazar Jul 8, 2004 9:39 AM (in response to pedrosalazar)Well, I'll try to download the jbossall-client.jar from jboss 3.2.0 release, to see if with those client jars work (I'll post later the results).
Another interesting issue is that even with jboss stopped, the error is the same (recvfrom() timed out).
Could it be that a request from Oracle to JBOSS (even down), never got its response (OK or FAILURE) because oracle server is blocking the reply? ... just guessing...
Can you tell me exactly the permissions granted on oracle in your succefull test? I already tried all the referred ones in wiki and in the other jboss thread, but nothing.
When you got the results of your test, now in Oracle Server 9.2.0.4, give a feedback here, please.
Thanks.
Regards,
Pedro Salazar. -
7. Re: Call JBOSS EJB from ORACLE
pedrosalazar Jul 8, 2004 11:49 AM (in response to pedrosalazar)With the jbossall-client.jar from jboss 3.2.0, I still get unresolved classes (351 against 537 of jboss 3.2.5) but it should be normal because, for instance, the JASS classes are not included in the bundle jbossall-client.jar. The question is why call jbossall-client.jar if it doesn't contains really all the classes?
So, the only difference now is oracle version: 9.2.0.1 against my tested versions 9.2.0.{4,5}. Oh, yes the O.S. too. Linux against Windows :-)
When you get more info about this, please post here.
Regards,
Pedro Salazar. -
8. Re: Call JBOSS EJB from ORACLE
nickman Jul 9, 2004 8:37 AM (in response to pedrosalazar)Pedro;
If you are intent on going down this road, I recommend you adopt an alternate approach. Even though I believe it is possible to make the JBoss client run in the Oracle VM, it is still unpredictable and inherently unsupportable. However, Oracle has AQ/JMS which can work as well, is easier to set up, probably performs faster and is more stable.
You basically need to set up a command pattern and have PL/SQL package up the command in a message and publish it. Then you have an MBean or an MDB listening on that queue, retrieving the command package and executing it.
Honestly, I think you will be happier witth that approach, although I do not know exactly what you are doing :) .......
//Nicholas -
9. Re: Call JBOSS EJB from ORACLE
pedrosalazar Jul 9, 2004 9:51 AM (in response to pedrosalazar)Hi Nicholas,
How strange..., I was just reading something about Oracle AQ/JMS. But I'm still not aware how it works.
Do you say I can send a JMS message to a destination queue registered outside in a JBOSS server on message driven?
Or it sends only messages to oracle queues itself?
regards,
Pedro Salazar. -
10. Re: Call JBOSS EJB from ORACLE
nickman Jul 9, 2004 10:28 AM (in response to pedrosalazar)Do you say I can send a JMS message to a destination queue registered
outside in a JBOSS server on message driven?
Yes.