I will keep this
thread updated with what I have learnt...
1. My client code is working fine with weblogic specific t3 prptocol, using
weblogic.jndi.WLInitialContextFactory
This I don't want.
My motivation is to invoke my ejb in a way which is independent of any vendor specific classes. Anyway, it makes little sense for the client to have the huge weblogic.jar file for a JNDI lookup.
I am trying alternative routes to invoke my EJB from the client. I thought that invoking it over iiop would free myself from weblogic specific classes.
Thank you Rahul for your reply... but I am not being able to get this damn thing working ...
I took a perfectly valid client code which invokes the EJB over t3. Then I made the following changes ...
1. changed the protocol from t3 to iiop ie my URL was changed from
t3://localhost:7001 to
iiop://localhost:7001 I am still using weblogic.jndi.WLInitialContextFactory here. I got a class cast exception when I tried to narrow down the home.
2. I changed the initialcontext factory also, to the com.sun.jndi.cosnaming.CNCtxFactory
But could not get rid of the class cast exception.
I tried to look at the object when I am doing a lookup . I had the following print
com.sun.corba.se.internal.iiop.CDRInputStream$1:IOR:00000000000000
30524d493a736875622e656a622e746573742e4661723243656e74486f6d653a3030303030303030
303030303030303000000000010000000000000433000102000000000f31302e3233362e3134392e
31363900001b5900000000012c0042454108010200000000096d79646f6d61696e000000000aec95
a900000030524d493a736875622e656a622e746573742e4661723243656e74486f6d653a30303030
3030303030303030303030300000000004323737000000000142454107000000c81b593c7c46f0fa
5c000000bc000000007fffff020000003a524d493a7765626c6f6769632e726a766d2e4a564d4944
3a303030303030303030303030303030313a44433439433233454445313231453241000119c6913c
7c46f0fa5c0000001c00310030002e003200330036002e003100340039002e0031003600390aec95
a90000000700001b5900001b5900001b5a00001b5a00001b5900001b5affffffff00000010006d00
790064006f006d00610069006e00000010006d007900730065007200760065007200000003000000
010000002c0000000000010020000000030001002000010001050100010001010000000003000101
000001010905010001000000190000004b0000000000000043687474703a2f2f31302e3233362e31
34392e3136393a373030312f6265615f776c735f696e7465726e616c2f636c61737365732f737464
5f6661723263656e74402f00004245410300000253000000000000000c726f756e642d726f62696e
00010000000000001b736875622e656a622e746573742e4661723243656e74486f6d650000000000
0100000030524d493a736875622e656a622e746573742e4661723243656e74486f6d653a30303030
303030303030303030303030000000000100000000000001d7000102000000000f31302e3233362e
3134392e31363900001b5900000000012c0042454108010200000000096d79646f6d61696e000000
000aec95a900000030524d493a736875622e656a622e746573742e4661723243656e74486f6d653a
303030303030303030303030303030300000000004323737000000000142454107000000c81b593c
7c46f0fa5c000000bc000000007fffff020000003a524d493a7765626c6f6769632e726a766d2e4a
564d49443a303030303030303030303030303030313a444334394332334544453132314532410001
19c6913c7c46f0fa5c0000001c00310030002e003200330036002e003100340039002e0031003600
390aec95a90000000700001b5900001b5900001b5a00001b5a00001b5900001b5affffffff000000
10006d00790064006f006d00610069006e00000010006d0079007300650072007600650072000000
02000000010000002c00000000000100200000000300010020000100010501000100010100000000
03000101000001010905010001000000190000004b0000000000000043687474703a2f2f31302e32
33362e3134392e3136393a373030312f6265615f776c735f696e7465726e616c2f636c6173736573
2f7374645f6661723263656e74402f00
I tried to look up the API documentation of this class somewhere on the net, but I have not found it yet.
{b] The big question is : Am I missing something ? Do I have to deploy the EJB in some special way in the server, so that it can be invoked over iiop ?
[/b]
I am looking out for solutions .. I will keep this thread updated. Meanwhile if anyone can help, that would be great.