Return-Path: Delivered-To: apmail-geronimo-user-archive@www.apache.org Received: (qmail 94522 invoked from network); 6 Aug 2007 20:48:18 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 Aug 2007 20:48:18 -0000 Received: (qmail 93735 invoked by uid 500); 6 Aug 2007 20:48:15 -0000 Delivered-To: apmail-geronimo-user-archive@geronimo.apache.org Received: (qmail 93717 invoked by uid 500); 6 Aug 2007 20:48:15 -0000 Mailing-List: contact user-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: user@geronimo.apache.org List-Id: Delivered-To: mailing list user@geronimo.apache.org Received: (qmail 93706 invoked by uid 99); 6 Aug 2007 20:48:15 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 06 Aug 2007 13:48:15 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [69.147.95.80] (HELO smtp117.plus.mail.sp1.yahoo.com) (69.147.95.80) by apache.org (qpsmtpd/0.29) with SMTP; Mon, 06 Aug 2007 20:48:02 +0000 Received: (qmail 61930 invoked from network); 6 Aug 2007 20:47:48 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Received:X-YMail-OSG:Mime-Version:In-Reply-To:References:Content-Type:Message-Id:Content-Transfer-Encoding:From:Subject:Date:To:X-Mailer; b=eJOojcUWLMLFKIYf5X1057o13u1RtA/cbrIv75yOktqRQQQp2lnU2BLCj9yymJ/YOSa1EN5jjCsKWcgvkT+NjgrDuOsDeVr6LcP2zVLt9sa5eHcnVzUsce/+8sHa+zgCt0c6mxnzwvujojyxeFBBvhbsWvO4qDOzmgkHzjloWtg= ; Received: from unknown (HELO ?192.168.1.101?) (david_jencks@67.102.173.8 with plain) by smtp117.plus.mail.sp1.yahoo.com with SMTP; 6 Aug 2007 20:47:47 -0000 X-YMail-OSG: 8z4LiWUVM1nKNf91lAyr4KdpFIPkq19ZoCXuCFcZP3MLATGQhRowZgOyqnzC9Ezvm4vM9TxAHDjcIaj2NoQStsO1xZuUCDLxFldSIZlJcVJvUjIjSrHQ.f1wgN2aQvHWG1l02zKaKg-- Mime-Version: 1.0 (Apple Message framework v752.3) In-Reply-To: <46B72CB0.1070604@ibis.ua> References: <46B32127.10701@ibis.ua> <46B35124.7000406@ibis.ua> <2C4B85E8-B949-44AF-8225-A562B9828AFA@yahoo.com> <46B6F603.1090108@ibis.ua> <46B7144C.6070405@ibis.ua> <46B72CB0.1070604@ibis.ua> Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: Content-Transfer-Encoding: 7bit From: David Jencks Subject: Re: ClassCastException during EJB deployment Date: Mon, 6 Aug 2007 13:47:48 -0700 To: user@geronimo.apache.org X-Mailer: Apple Mail (2.752.3) X-Virus-Checked: Checked by ClamAV on apache.org Going back to your original stack trace: java.lang.ClassCastException: org.openejb.GenericEJBContainer at org.openejb.EJBContainer$$EnhancerByCGLIB$ $964163d7.getUnmanagedReference() at org.openejb.ContainerIndex.doStart(ContainerIndex.java:123) I think you will need to debug ContainerIndex line 123 and find out what classloaders are involved. I'm pretty sure the GenericEJBContainer from your application is being loaded from a different copy of openejb than the one ContainerIndex is in. It's hard for me to imagine how this could happen unless you had a combination of factors including set in the environment element of you geronimo plan. Showing what your geronimo plan is could be helpful. thanks david jencks On Aug 6, 2007, at 7:14 AM, Oleg Nitz wrote: > Hi David, I'm back :) > > I was mistaken about JAAS login. First JAAS login succeeds in a > usual way. Then JNDI lookup() is performed and it fails. > Trace info: class org.openejb.client.Client, method request(), > conn = ConnectionManager.getConnection( server ); - OK > out = conn.getOuputStream(); - OK > PROTOCOL_VERSION.writeExternal(out); - OK > out.write( req.getRequestType() ); - OK > objectOut = new ObjectOutputStream( out ); - FAILS > with IOException("Broken pipe"); > > Hoping for new guidelines from you, > Oleg > > Oleg Nitz wrote: >> More info: client request reaches server, server (during JNDI >> lookup) performs JAAS login (I have configured my own LoginModule, >> but of course something can be wrong there), login succeeds. I >> don't know what happens then. I guess some unexpected exception >> happens there, and it isn't transferred to client correctly, but >> leads to "unexpected EOF"-like error. >> Okay, David, thank you again, conversation with you was really >> helpful, >> it cleared the picture for me, so I think for now I will better >> stop taking more of you time and continue my investigation and >> experiments. >> I'll be back ;) >> Oleg >> Oleg Nitz wrote: >>> No, this is not the case. Client and server take jars from the same >>> place, and both use OpenEJB 2.1.1 which comes with Geronimo 1.1.1. >>> >>> Thanks for you time, >>> Oleg >>> >>> David Jencks wrote: >>>> The first thing that comes to mind is that perhaps you are >>>> trying to use incompatible openejb client and server jars? IIUC >>>> geronimo 1.1.1 needs openejb2 client jars and geronimo 2 needs >>>> openejb3 client jars and they are not interoperable. However I >>>> am not the most expert on this subject. Knowing exactly which >>>> openejb jar versions are in your client classpath would >>>> definitely be helpful though. >>>> >>>> thanks >>>> david jencks >>>> >>>> On Aug 3, 2007, at 9:00 AM, Oleg Nitz wrote: >>>> >>>>> Thank you for your answer, David. You are right, I already had >>>>> EJBNetworkService and have installed the second one. The idea >>>>> to do this came to me when I got the following exception during >>>>> JNDI lookup of my bean from standalone client app: >>>>> >>>>> Cannot deternmine server protocol version: Received null/0.0; >>>>> nested exception is: >>>>> java.io.IOException: Unable to read protocol version. >>>>> Reached the end of the stream. >>>>> at org.openejb.client.JNDIContext.authenticate >>>>> (JNDIContext.java:196) >>>>> at org.openejb.client.JNDIContext.getInitialContext >>>>> (JNDIContext.java:181) >>>>> 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. >>>>> (InitialContext.java:175) >>>>> at >>>>> ua.odessa.ibis.core.user.registry.UserRegistryClient. >>>>> (UserRegistryClient.java:81) >>>>> >>>>> Then I found this message >>>>> http://mail-archives.apache.org/mod_mbox/geronimo-user/ >>>>> 200512.mbox/%3C97d040ba7193938d5e1ae6817476d29b@yahoo.com%3E >>>>> but didn't understand where to put "allowHosts" and decided to >>>>> add a new EJBNetworkService for that :-/ >>>>> Okay, now I've got it: I've added >>>>> 0.0.0.0 >>>>> to EJBNetworkService gbean in config.xml, now it looks this way: >>>>> >>>>> >>>>> 0.0.0.0 >>>>> 4201 >>>>> 0.0.0.0 >>>>> >>>>> >>>>> But nothing changes, I get the same exception during lookup(). >>>>> Please, advise me the next step. >>>>> >>>>> Thank you for your help, >>>>> Oleg >>>>> >>>>> >>>>> David Jencks wrote: >>>>>> I don't understand what you are saying about needing to deploy >>>>>> the EJBNetworkService... I can see needing to change the port >>>>>> or host but there's one already started out of the box. >>>>>> Your error is caused by having 2 classloaders that load the >>>>>> openejb classes independently. There should be only one such >>>>>> classloader per jvm, the one from the openejb config >>>>>> (module). Can you figure out what the other one is? If you >>>>>> really need another listener you should be sure that the >>>>>> openejb configuration (car) is a parent (dependency) of the >>>>>> configuration you put it in. Openejb is extremely unlikely to >>>>>> work if you have more than one ContainerIndex running since >>>>>> most references to it are through a static variable. >>>>>> hope this helps >>>>>> david jencks >>>>>> On Aug 3, 2007, at 5:35 AM, Oleg Nitz wrote: >>>>>>> Hello all, >>>>>>> >>>>>>> First I have successfully deployed my EJB, but couldn't >>>>>>> connect to it from standalone application. Then I found that >>>>>>> I also need to deploy EJBNetworkService/EJBServer stuff. >>>>>>> Okay, did that and got >>>>>>> >>>>>>> java.lang.ClassCastException: org.openejb.GenericEJBContainer >>>>>>> at org.openejb.EJBContainer$$EnhancerByCGLIB$ >>>>>>> $964163d7.getUnmanagedReference() >>>>>>> at org.openejb.ContainerIndex.doStart >>>>>>> (ContainerIndex.java:123) >>>>>>> >>>>>>> Then I undeployed my EJB and successfully deployed >>>>>>> EJBNetworkService. Now deployment of the EJB causes the same >>>>>>> error. >>>>>>> I've found such error in the mail archives: >>>>>>> http://mail-archives.apache.org/mod_mbox/geronimo-user/ >>>>>>> 200605.mbox/% >>>>>>> 3C3da992810605180835o38e2dd22i9a93012d6b939ce6@mail.gmail.com%3E >>>>>>> but that message left unanswered. >>>>>>> Did anyone have such problems? >>>>>>> Any guidelines for me on what to do next? >>>>>>> >>>>>>> Thanks in advance, >>>>>>> Oleg >>>>>>> >>>>>>> P.S. Geronimo 1.1.1 (actually, WAS CE) >>>>>>> >>>>> >>>>> >>>> >>>> >>>> >>> >>> >>> >>> >>> > >