Link to home
Start Free TrialLog in
Avatar of hkishoreb
hkishoreb

asked on

java.io.NotSerializableException in new servers

Recently we moved our code to new Weblogic servers. Now in the new servers we are getting java.io.NotSerializableException wich is not there in the old servers. Nothing has changed . The same code we moved to new servers. Need to solve this as early as possible.  Please let me know a solution. Thank you.
Avatar of Mick Barry
Mick Barry
Flag of Australia image

you can probably ignore it, it may just be trying to serialize sessions.

can you post more details of the error.
Avatar of hkishoreb
hkishoreb

ASKER

This is causing the Payment failure (Not able to accept payments). This is a serious issue.Here is what log says.

CCPayment.authorize() : returning failed authorization :
java.rmi.MarshalException: failed to marshal performCommunication(Lcom.alltel.hypersuite.pay.objects.CommPayment;); nested exc
eption is:
        java.io.NotSerializableException: com.alltel.hypersuite.pay.objects.CommPayment
java.io.NotSerializableException: com.alltel.hypersuite.pay.objects.CommPayment
        at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1143)
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
        at weblogic.common.internal.ChunkedObjectOutputStream.writeObject(ChunkedObjectOutputStream.java:117)
        at weblogic.rjvm.MsgAbbrevOutputStream.writeObject(MsgAbbrevOutputStream.java:82)
        at weblogic.rmi.internal.ObjectIO.writeObject(ObjectIO.java:36)
        at weblogic.rmi.internal.BasicOutboundRequest.marshalArgs(BasicOutboundRequest.java:81)
        at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:257)
        at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:230)
        at com.alltel.hypersuite.pay.ejbs.paycommunication.PaymentechCommunicationBean_1u1zr6_EOImpl_WLStub.performCommunicati
on(Unknown Source)
        at com.alltel.hypersuite.pay.objects.CCPayment.authorize(CCPayment.java:324)
        at com.alltel.hypersuite.pay.objects.CCPayment.authorize(CCPayment.java:264)
        at com.alltel.hypersuite.pay.objects.PaymentTran.create(PaymentTran.java:162)
        at com.alltel.hypersuite.pay.objects.Payment.create(Payment.java:1766)
        at com.alltel.hypersuite.pay.ejbs.payauthorization.PaymentAuthorizationBean.performPayAuthorization(PaymentAuthorizati
onBean.java:161)
        at com.alltel.hypersuite.pay.ejbs.payauthorization.PaymentAuthorizationBean_gdc7kz_EOImpl.performPayAuthorization(Paym
entAuthorizationBean_gdc7kz_EOImpl.java:46)
        at com.alltel.hypersuite.pay.ejbs.payauthorization.PaymentAuthorizationBean_gdc7kz_EOImpl_WLSkel.invoke(Unknown Source
)
        at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:455)
        at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:114)
        at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:396)
        at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:726)
        at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:391)
        at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
        at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:251)
        at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:219)

 **** EXCEPTION HANDLER: END EXCEPTION DESCRIPTION ***
>
<Mar 21, 2006 1:55:07 PM CST> <Info> <HYPERSUITE> <000000> <ERROR: User: JKL0706 Account: RAW6Q7B Sev: 2 Code: 1434 Desc: Prob
lem while processing the debit card payment>

Thank you.
> com.alltel.hypersuite.pay.objects.CommPayment

This class is not Serializable and needs to be.
Reason being that it is being passed in an RMI call
Make com.alltel.hypersuite.pay.objects.CommPayment implement Serializable
But why did it work on the old servers with out any problem ? This is the exception i am getting in only one server out of six. Please let me know your ideas.
Thank you
It may not have been using RMI, and instead making the call directly.
Perhaps check the release notes.
ITs using everything same. We installed the same old application to the new servers. Nothing has changed.
something has changed, ie. the server.
ASKER CERTIFIED SOLUTION
Avatar of Mick Barry
Mick Barry
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Is this something related to session persistance ?
We solved it. Thank you
It is a configuration issue