I just tested through SunAS. And I have tried to generate web service
client through netbeans and tested with JUnit EE. I still get the
same exceptions.
--
Regards;
Stephen Wang
On 11/21/06, Marina Vatkina <Marina.Vatkina_at_sun.com> wrote:
Hi,
>
> I think that the problem is in the class mismatch between the classes serialized
> by the container and the classes expected by the client. The TopLink Essentials
> as the persistence provider, modified the classes when they were loaded, to
> support the fetch type LAZY (do you use it be default or explicitly on those
> relationships_. The classes on the client side had not been modified, and you
> get a ClassCastException on the de-serialization of the result. If you set the
> relationship to null, the class information is (probably) not being serialized.
>
> Are you using a Java EE app client as your client? If yes, the situation above
> shouldn't happen, and it can be a bug. If not, does switching to an appclient
> solves the problem?
>
> thanks,
> -marina
>
> Soe Moe Kyaw @ Stephen Wang wrote:
> > Hi, I think the problem is with my Collection. Please see two attached
> > files.
> >
> > If I put like this;
> >
> > user._setPrincipals(null);
> > user.setCredential(null);
> >
> > user.getRealm()._setUsers(null);
> >
> > I was OK. Is there something wrong?
> >
> > On 11/10/06, Soe Moe Kyaw @ Stephen Wang <swmk.stephen_at_gmail.com> wrote:
> >
> >> Hi, Marina
> >> This doesn't solve the problem.
> >>
> >>
> >> --
> >> Regards;
> >> Stephen Wang
> >>
> >> On 11/9/06, Marina Vatkina wrote:
> >>
> >> Hi Stephen,
> >>
> >> I think that the problem is in the classes on the client side that
> >> were not
> >> processed by the TopLink code. Can you check that marking all ToOne
> >> relationships with fetch type EAGER solves the problem?
> >>
> >> thanks,
> >> -marina
> >>
> >> Soe Moe Kyaw @ Stephen Wang wrote:
> >> > java.lang.ClassCastException:
> >> > com.rayx.presentation.security.GetUserWSResponse
> >> > at
> >> > com.sun.corba.ee.impl.copyobject.ORBStreamObjectCopierImpl.copy(
> >> ORBStreamObjectCopierImpl.java:43)
> >> > at
> >> > com.sun.corba.ee.impl.copyobject.ORBStreamObjectCopierImpl.copy
> >> > (ORBStreamObjectCopierImpl.java:32)
> >> > at
> >> > com.sun.corba.ee.impl.copyobject.FallbackObjectCopierImpl.copy(
> >> FallbackObjectCopierImpl.java:39)
> >> > at
> >> > com.sun.corba.ee.impl.copyobject.FallbackObjectCopierImpl.copy
> >> > (FallbackObjectCopierImpl.java:30)
> >> > at
> >> > com.sun.corba.ee.impl.javax.rmi.CORBA.Util.copyObject(Util.java:745)
> >> > at
> >> > com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshall
> >> erImpl.copyResult(DynamicMethodMarshallerImpl.java
> >> > :414)
> >> > at
> >> > com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandler
> >> Impl.privateInvoke(StubInvocationHandlerImpl.java:202)
> >> > at
> >> >
> >> com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(
> >> > StubInvocationHandlerImpl.java:119)
> >> > at
> >> > com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(
> >> BCELStubBase.java:197)
> >> > at
> >> > com.rayx.session.security.__SecurityContextRemote_Remote
> >> _DynamicStub.getUserByNameAndRealm
> >> > (__SecurityContextRemote_Remote_DynamicStub.java)
> >> > at
> >> > com.rayx.session.security._SecurityContextRemote_Wrapper
> >> .getUserByNameAndRealm(com.rayx.session.security.
> >> _SecurityContextRemote_Wrapper.java)
> >> > at
> >> > com.rayx.webservices.security.GetUserByNameAndRealmWS
> >> .getUserByNameAndRealm
> >> > (GetUserByNameAndRealmWS.java:72)
> >> > 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.enterprise.security.application.EJBSecurityManager.runMethod(
> >> EJBSecurityManager.java:1050)
> >> > at
> >> > com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:165)
> >> > at
> >> > com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(
> >> BaseContainer.java:2766)
> >> > at com.sun.ejb.containers.BaseContainer.intercept
> >> > (BaseContainer.java:3847)
> >> > at
> >> > com.sun.ejb.containers.WebServiceInvocationHandler.invoke
> >> (WebServiceInvocationHandler.java:147)
> >> > at $Proxy47.getUserByNameAndRealm(Unknown Source)
> >> > 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.xml.ws.server.PeptTie._invoke(PeptTie.java:61)
> >> > at
> >> >
> >> com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher.invokeEndpoint(
> >> SOAPMessageDispatcher.java
> >> > :280)
> >> > at
> >> > com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher
> >> $SoapInvoker.invoke(SOAPMessageDispatcher.java:588)
> >> > at
> >> > com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher.receive(
> >> SOAPMessageDispatcher.java
> >> > :147)
> >> > at com.sun.xml.ws.server.Tie.handle(Tie.java:90)
> >> > at
> >> > com.sun.enterprise.webservice.Ejb3MessageDispatcher.handlePost(
> >> Ejb3MessageDispatcher.java:160)
> >> > at com.sun.enterprise.webservice.Ejb3MessageDispatcher.invoke
> >> > (Ejb3MessageDispatcher.java:89)
> >> > at
> >> >
> >> com.sun.enterprise.webservice.EjbWebServiceServlet.dispatchToEjbEndpoint(
> >> EjbWebServiceServlet.java:186)
> >> > at com.sun.enterprise.webservice.EjbWebServiceServlet.service
> >> > (EjbWebServiceServlet.java:117)
> >> > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
> >> > at
> >> > com.sun.enterprise.web.AdHocContextValve.invoke(AdHocContextValve.java
> >> :101)
> >> > at org.apache.catalina.core.StandardPipeline.doInvoke
> >> > (StandardPipeline.java:566)
> >> > at
> >> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> >> :536)
> >> > at
> >> com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:71)
> >> > at org.apache.catalina.core.StandardHostValve.invoke
> >> > (StandardHostValve.java:182)
> >> > at
> >> >
> >> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java
> >> :566)
> >> > at
> >> > com.sun.enterprise.web.VirtualServerPipeline.invoke(
> >> VirtualServerPipeline.java:120)
> >> > at
> >> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
> >> > at
> >> > org.apache.catalina.core.StandardEngineValve.invoke(
> >> StandardEngineValve.java:137)
> >> > at org.apache.catalina.core.StandardPipeline.doInvoke
> >> > (StandardPipeline.java:566)
> >> > at
> >> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> >> :536)
> >> > at
> >> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
> >> > at org.apache.coyote.tomcat5.CoyoteAdapter.service
> >> > (CoyoteAdapter.java:239)
> >> > at
> >> > com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(
> >> ProcessorTask.java:667)
> >> > at
> >> >
> >> com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(
> >> ProcessorTask.java
> >> > :574)
> >> > at
> >> > com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(
> >> ProcessorTask.java:844)
> >> > at
> >> > com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(
> >> ReadTask.java:287)
> >> > at
> >> > com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java
> >> :212)
> >> > at
> >> >
> >> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
> >> > at com.sun.enterprise.web.connector.grizzly.WorkerThread.run
> >> > (WorkerThread.java:75)
> >> >
> >> > --
> >> > Regards;
> >> > Stephen Wang
> >> >
> >> > On 11/9/06, Marina Vatkina wrote:
> >> >
> >> > What is the exact exception text?
> >> >
> >> > thanks,
> >> > -marina
> >> >
> >> > Soe Moe Kyaw @ Stephen Wang wrote:
> >> >> I do have two toplinks jar in my SDKlib but not in my domain lib.
> >> >> Sure, I can give you more on what you wanna know. What shall I give?
> >> >>
> >> >> --
> >> >> Regards;
> >> >> Soe Moe Kyaw @ Stephen Wang
> >> >>
> >> >> On 11/8/06, Marina Vatkina wrote:
> >> >>
> >> >> Hi,
> >> >>
> >> >> Do you have toplink-essentials.jar on the web side of your
> >> > app? If not,
> >> >> please try to add it and check if it solves the problem. If
> >> > you do,
> >> >> we need
> >> >> more details to be able to help.
> >> >>
> >> >> thanks,
> >> >> -marina
> >> >>
> >> >> Soe Moe Kyaw @ Stephen Wang wrote:
> >> >> > This happens like this;
> >> >> >
> >> >> > I have Entities namly User, Realm, Credential and Principal.
> >> >> >
> >> >> > User is associated with Realm (Many-to-One), Credential
> >> >> (One-to-One),
> >> >> > Principal (One-to-Many).
> >> >> >
> >> >> > I have a web service called getUserByNameAndRealm which takes user
> >> >> name
> >> >> > and realm name. That web method delegate to a method from Session
> >> >> > Bean. The result is wrapped by a Class which includes User and
> >> >> Status
> >> >> > of the operation. It works well when the session returns the
> >> > response
> >> >> > which User object is null. But when the session found the User and
> >> >> > returns it, the Exception occured. So I tried to set the
> >> principal,
> >> >> > credential and realm of User to null. It works well then. Why
> >> >> does it
> >> >> > happen like that and any solution to that?
> >> >> >
> >> >>
> >> >>
> >> >
> >> ---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail:
> >> > users-unsubscribe_at_glassfish.dev.java.net
> >> > <mailto:users-unsubscribe_at_glassfish.dev.java.net>
> >> > > <mailto:users-unsubscribe_at_glassfish.dev.java.net
> >> > <mailto:users-unsubscribe_at_glassfish.dev.java.net>>
> >> >> For additional commands, e-mail: users-help_at_glassfish.dev.java
> >> > .net <mailto:users-help_at_glassfish.dev.java.net>
> >> > > <mailto:users-help_at_glassfish.dev.java.net
> >> > <mailto:users-help_at_glassfish.dev.java.net>>
> >> >>
> >> >
> >> >
> >> ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> >> > <mailto:users-unsubscribe_at_glassfish.dev.java.net>
> >> > For additional commands, e-mail: users-help_at_glassfish.dev.java.net
> >> > <mailto:users-help_at_glassfish.dev.java.net>
> >> >
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> >> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
> >>
> >>
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> > For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>
>