Hi again,
i tried out orion 0.9.6. I still have a problem with beans calling other
beans (see the attached mail). I noticed that the error message changed a
bit, so I assume, that you are currently searching for an error ?
I want to know, if this error may be caused due to conceptional design
errors of my beans or if it is a real error of orion. I must know this as
soon as possible since changing the whole design of my software should be
done as soon as possible. The "new" error message is:
java.rmi.RemoteException: Transaction was rolled back: Error in
ejbPassivate: java.lang.InternalError: Werent current caller, server
stacktrace: java.lang.Throwable: Werent current caller
at EntityBeanWrapper2.setEntityBean(EntityBeanWrapper2.java,
Compiled Code)
at com.evermind.server.ejb.EntityEJBHome.aam(JAX, Compiled Code)
at com.evermind.server.ejb.EntityEJBObject.releaseContext(JAX,
Compiled Code)
at com.evermind.server.ejb.EntityEJBObject.removeFromCache(JAX)
at com.evermind.server.ejb.EntityEJBObject.aal(JAX)
at com.evermind.server.ApplicationServerTransaction.commit(JAX)
at com.evermind.server.ApplicationServerTransaction.end(JAX,
Compiled Code)
at EntityBeanWrapper0.setVars(EntityBeanWrapper0.java, Compiled
Code)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.a8.run(JAX)
at com.evermind.server.rmi.a6.gk(JAX, Compiled Code)
at com.evermind.server.rmi.a6.run(JAX, Compiled Code)
at com.evermind.util.e.run(JAX, Compiled Code)
at com.evermind.server.rmi.a6.invokeMethod(JAX)
at com.evermind.server.rmi.ay.invoke(JAX)
at __Proxy1.setVars(Unknown Source)
at de.netmedia.ejb.test.clienttest.main(clienttest.java:88)
I also had a look at the setEntityBean function generated by orion:
public void setEntityBean(EntityBean entitybean)
{
if(entitybean == null && object != null && ThreadState.getCurrentState()
!= currentCaller)
{
throw new InternalError("Werent current caller, server stacktrace: "
+ EJBUtils.toString(new Throwable("Werent current caller")));
} else
{
object = (NMejbBaseBean)entitybean;
return;
}
}
Obviously the problem has something to do with thread handling. Is there a
possibillity to force orion to use just one thread ? This should resolve the
problem (at least i could use the new orion to test it further - testing
0.9.4 isn't worth the effort any more) until the real problem is solved...
Kind regards,
Jens Stutte
P.S.: Concerning the "lack of response": Sometimes it would be very useful
just to send an answer like "we are working on it", "we know this problem"
etc. especially for bug-reports. This ejbPassivate problem for example for
me (and my company) is quite serious, so knowing as soon as possible
something would be very helpfull. I can imagine the stress you are having in
these days, and i want to give you good feedback on your product to make it
become better (and i am quite sure that we'll buy orion once it's finished
:-).
[EMAIL PROTECTED], http://www.net-media.de
NetMedia GmbH
Neugrabenweg 5-7
66123 Saarbruecken
Germany
fon: +49 (0) 681 - 37 98 8 - 0
fax: +49 (0) 681 - 37 98 8 - 99
Hi,
i have a strange benaviour of both orion 0.9.4q and 0.9.4v (but not with
0.9.4). I have a business method in an entity bean, which itself calls
business methods in other entity beans (same type, but different instances).
I have a remote client, that basically does nothing but call this method -
and nothing after this call.
>From my own log files i can see, that the method is executed successfully.
However, after this execution the server initiates first two ejbStore ops
(on each bean touched by the method), and after this (appearantly
unmotivated) an ejbLoad on some bean. However, on the server side everything
seems to be ok: no exceptions, no core dumps...
Meanwhile the client recieves a:
java.rmi.RemoteException: Transaction was rolled back: Error in
ejbPassivate: java.lang.InternalError: Werent current caller
at com.evermind.server.rmi.a3.invokeMethod(JAX)
at com.evermind.server.rmi.av.invoke(JAX)
at __Proxy1.setBeanReference(Unknown Source)
at de.netmedia.ejb.test.clienttest.main(clienttest.java:77)
What does this mean ? My ejbPassivate function does only set some variables
in the bean to null / 0. I could not figure out any information on "Werent
current caller" at javasoft.com. Is it an exception generated by orion ? By
the JVM (I'm using Linux, Sun JDK 1.2.2 on the server and windows NT Sun JDK
1.2.2 on the client) ? And why the client recieves an exception for a
function, that only the server executes on its will (and not on client
requests) ?
Does anyone know, what happens ?
Jen