facebook

[Closed] Unable to deserialize object when using WAS Server

  1. MyEclipse Archived
  2.  > 
  3. Application Servers and Deployment
Viewing 15 posts - 1 through 15 (of 16 total)
  • Author
    Posts
  • #261620 Reply

    allantom
    Member

    *** Date: Mon Nov 13 17:55:56 SGT 2006

    *** System properties:
    OS=WindowsXP
    OS version=5.1
    Java version=1.5.0_09

    *** MyEclipse details:
    MyEclipse Enterprise Workbench

    Version: 5.0 GA
    Build id: 20060805-5.0-GA

    *** Eclipse details:
    MyEclipse Enterprise Workbench

    Version: 5.0.1 GA
    Build id: 20060810-5.0.1-GA

    Eclipse RCP

    Version: 3.2.1.r321_v20060801-2ekW2BxmcpPUOoq
    Build id: M20060921-0945

    Eclipse Plug-in Development Environment

    Version: 3.2.1.r321_v20060823-6vYLLdQ3Nk8DrFG
    Build id: M20060921-0945

    Eclipse Project SDK

    Version: 3.2.1.r321_v20060801-tQ1w49KnTArT0FZ
    Build id: M20060921-0945

    Eclipse Platform

    Version: 3.2.1.r321_v20060921-b_XVA-INSQSyMtx
    Build id: M20060921-0945

    Eclipse Java Development Tools

    Version: 3.2.1.r321_v20060905-R4CM1Znkvre9wC-
    Build id: M20060921-0945

    Eclipse Graphical Editing Framework

    Version: 3.2.1.v20060921
    Build id: 20060921-1617

    Eclipse Graphical Editing Framework

    Version: 3.2.0.v20060626
    Build id: 20060921-1617

    Eclipse startup command=-os
    win32
    -ws
    win32
    -arch
    x86
    -launcher
    C:\eclipsecalisto\eclipse.exe
    -name
    Eclipse
    -showsplash
    600
    -exitdata
    16c4_7c
    -data
    c:\wsappdev51\cbi215pso-myeclipse
    -product
    com.genuitec.myeclipse.product.ide
    -vm
    C:\WINDOWS\system32\javaw.exe

    Hi,

    I’m getting a javax.jms.MessageFormatException: MQJMS1061: Unable to deserialize object error in one of my modules. This ONLY happens when I start Websphere Application Server 5.0 (ptf2M0325.01) using MyEclipse. If I try to start WAS manually, using the same codes, no problem occurs. I’ve read something about this in a website saying

    My best guess is that you have different versions of the Serializable object’s class on the client and the server. Check that, and try using serialVersionUID to make your serialization versioning. Look at the documentation for the serialver tool for more info on serialVersionUID.

    , though I dont know how to make this work.

    The following is the complete stack trace:

    javax.jms.MessageFormatException: MQJMS1061: Unable to deserialize object
        at java.lang.Throwable.<init>(Throwable.java)
        at java.lang.Throwable.<init>(Throwable.java)
        at javax.jms.JMSException.<init>(JMSException.java:51)
        at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4694)
        at com.ibm.jms.JMSObjectMessage.getObject(JMSObjectMessage.java:264)
        at com.s1.banking.common.imprt.messaging.ImportFileParserMDB.onMessage(ImportFileParserMDB.java:45)
        at com.ibm.ejs.jms.listener.MDBWrapper$PriviledgedOnMessage.run(MDBWrapper.java:205)
        at java.security.AccessController.doPrivileged(AccessController.java)
        at com.ibm.ejs.jms.listener.MDBWrapper.callOnMessage(MDBWrapper.java:194)
        at com.ibm.ejs.jms.listener.MDBWrapper.onMessage(MDBWrapper.java:172)
        at com.ibm.mq.jms.MQSession.run(MQSession.java:1043)
        at com.ibm.ejs.jms.JMSSessionHandle.run(JMSSessionHandle.java:922)
        at com.ibm.ejs.jms.listener.ServerSession.connectionConsumerOnMessage(ServerSession.java:697)
        at com.ibm.ejs.jms.listener.ServerSession.onMessage(ServerSession.java:482)
        at com.ibm.ejs.jms.listener.ServerSession.dispatch(ServerSession.java:449)
        at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:199)
        at java.lang.reflect.Method.invoke(Method.java)
        at com.ibm.ejs.jms.listener.ServerSessionDispatcher.dispatch(ServerSessionDispatcher.java:37)
        at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:91)
        at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:127)
        at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:372)
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java)

    I tried redeploying and amending classpaths etc but nothing works. Hope you can help me with this.

    Regards,
    Allan

    #261632 Reply

    Riyad Kalla
    Member

    Allan,
    The problem is the JDK you have configured to run WAS with from MyEclipse. You need to configure it to run exactly with the JDK that WAS ships, otherwise you get serialization errors.

    #261726 Reply

    allantom
    Member

    @support-rkalla wrote:

    Allan,
    The problem is the JDK you have configured to run WAS with from MyEclipse. You need to configure it to run exactly with the JDK that WAS ships, otherwise you get serialization errors.

    Hi Riyad,

    I’ve already configured MyEclipse to use WAS’s JDK while migrating to MyEclipse. What I did was added an entry in the Installed JREs that points to WAS_HOME\AppServer\Java. I’ve Specified in the Websphere 5 –> JDK to use the Websphere jdk. I’ve also removed the other JRE found in Installed JREs to make sure.

    Would you be able to provide other suggestions?

    Thanks!

    Regards,
    Allan

    #261730 Reply

    Riyad Kalla
    Member

    Allan,
    Just to be extra sure, when you startup the app server in the console you should see the complete Java version being used to run the app server, just double check that is correct.

    As for the error message, I did a search and came up with this:
    http://www-1.ibm.com/support/docview.wss?uid=swg1IY75589

    And here are the result of the results:
    http://www.google.com/search?hl=en&q=MQJMS1061&btnG=Google+Search

    I wonder if there is a JAR entry missing from the Paths for the app server that WAS is looking for?

    #261741 Reply

    allantom
    Member

    Hi Riyad,

    Here is the log:

    *********** Start Display Current Environment ************
    WebSphere Platform 5.0 [BASE 5.0.2 ptf2M0325.01] [JDK 1.3.1 ${build.level}]  running with process name P337WXPP\P337WXPP\server1 and process id 4360
    Host Operating System is Windows XP, version 5.1 build 2600 Service Pack 2
    Java version = J2RE 1.3.1 IBM J9 build 20030617 (JIT enabled), Java Compiler = NONE, Java VM name = IBM J9SE VM
    was.install.root = C:\WebSphere\AppServer
    user.install.root = C:\WebSphere\AppServer
    Java Home = C:\WebSphere\AppServer\java\jre
    ws.ext.dirs = C:\WebSphere\AppServer\java\lib;C:\WebSphere\AppServer\classes;C:\WebSphere\AppServer\lib;C:\WebSphere\AppServer\web\help;C:\WebSphere\AppServer\deploytool\itp\plugins\com.ibm.etools.ejbdeploy\runtime;C:\wsappdev51\cbi215pso-myeclipse\Properties_Files\lib\ext;C:\wsappdev51\cbi215pso-myeclipse\Properties_Files\lib\app;C:\wsappdev51\cbi215pso-myeclipse\Properties_Files\cloak
    Classpath = C:\WebSphere\AppServer/properties;C:\WebSphere\AppServer/lib/bootstrap.jar;C:\WebSphere\AppServer/lib/j2ee.jar;C:\WebSphere\AppServer/lib/lmproxy.jar;C:\WebSphere\AppServer/lib/urlprotocols.jar;C:/wsappdev51/cbi215pso-myeclipse/Properties_Files/lib/ext;C:/wsappdev51/cbi215pso-myeclipse/Properties_Files/lib/app;C:/wsappdev51/cbi215pso-myeclipse/Properties_Files/cloak
    Java Library path = C:\WebSphere\AppServer\java\bin;C:\WebSphere\AppServer\bin;C:\WebSphere\AppServer\java;C:/WebSphere/AppServer/lib;C:/WebSphere/AppServer/java/jre/bin;C:/WebSphere/AppServer/bin;C:/WebSphere/AppServer/java/bin;C:/Perl/bin;C:/Program Files/IBM/WebSphere MQ/Java/lib;C:/Program Files/IBM/SQLLIB/BIN;C:/Program Files/IBM/SQLLIB/FUNCTION;C:/Program Files/IBM/WebSphere MQ/bin;C:/Program Files/IBM/WebSphere MQ/Java/bin;C:/Program Files/IBM/WebSphere MQ/WEMPS/bin

    It seems to be pointing correctly. Also, I’m not sure if this is related a fix pack problem because it were, it would work when I start the server using WAS only.

    I’m not sure how to proceed…. although I’m still trying to find a solution.

    Any advise would be great.

    Thanks,
    Allan

    #261765 Reply

    Riyad Kalla
    Member

    Allan,
    I know that Websphere works, so the trick here is to figure out which JARs with this setup are not being added to the classpath in order to allow this instance to start up.

    One way you would trouble shoot that, is to start WAS from the command line and wait for the “Classpath =” line and then compare it to the one you get above when using MyEclipse.

    #261866 Reply

    allantom
    Member

    Hi Riyad,

    I already compared the classpaths etc but I dont see any significant difference. I also tried to run MyEclipse using a lower JVM (1.4.2_13) but I still get the error.

    Any other suggestions?

    Thanks,
    Allan

    #261868 Reply

    allantom
    Member

    Though one thing that I noticed that is different between WAS and MyEclipse is the Java version description in the logs:

    MyEclipse

    
    Java version = J2RE 1.3.1 IBM J9 build 20030617 (JIT enabled), Java Compiler = j9jit21, Java VM name = IBM J9SE VM
    

    WAS

    
    Java version = J2RE 1.3.1 IBM Windows 32 build cn131-20030618 (JIT enabled: jitc), Java Compiler = jitc, Java VM name = Classic VM
    

    MyEclipse is configured to use the jdk of WAS though they still show up different… do you think this is relevant?

    Thanks,
    Allan

    #261885 Reply

    Riyad Kalla
    Member

    Allan,
    Yes that definately could be… can you check the script used to startup WAS on the command line and see if it’s using some custom command line args to the VM to start it up? Maybe that’s the problem.

    I’m trouble shooting this as blindly as you are this point because default WAS install (5.0, 5.1, 6.0, 6.1) work out of the box, so the intricacies of what is causing this particular setup to fail is a bit fuzzier, but I think we are on the right track.

    #261901 Reply

    allantom
    Member

    Hi Riyad,

    I’ve made a small step at changing the Java Version. WAS script calls the following in its argument com.ibm.ws.bootstrap.WSLauncher com.ibm.ws.management.tools.WsServerLauncher while MyEclipse arguments calls com.ibm.ws.runtime.WsServer. I tried to change the launch configuration to call what WAS calls. I’ve started the server using MyEclipse and is now displaying the same Java version as WAS… however, I’m now experiencing problems while starting the server… though I still have to do some other configuration… I tried to save the launch configuration for Websphere 5 to use com.ibm.ws.bootstrap.WSLauncher com.ibm.ws.management.tools.WsServerLauncher, however, whenever I click the create launch configuration, my changes disappears. MyEclipse do detect that I changed something and asks if I want to save it. Is there a way to permanently change the launch configuration?

    Thanks

    Allan

    #261902 Reply

    Riyad Kalla
    Member

    Allan,
    This sounds like it might be a bug if it’s not saving your change. Is it the case this only happens once (looses your change) or every time, regarldess of answering Yes to the save question?

    #261988 Reply

    allantom
    Member

    Hi Riyad,

    It always happens.

    Regards,
    Allan

    #262007 Reply

    allantom
    Member

    Hi Riyad,

    My collegue also configured his workspace. It seems that he is not experiencing the problem I’m getting. We have the same setup (I imported his workspace preferences) and same java version. We tried to analyse the difference but we cant find the problem. My collegue’s WAS version, Eclipse, and MyEclipse are the same.

    Would you be able to give ideas on where we could check further? I’ve also tried to reinstall the MyEclipse and created a totally new workspace just to make sure we have the same setup…

    Please advise…

    Regards,
    Allan

    #262023 Reply

    Riyad Kalla
    Member

    Allan,
    If you have done all that, it might be the WAS install…do you have the installer handy, can you install it to another directory just to make sure an try and run that copy?

    #262124 Reply

    allantom
    Member

    Hi Riyad,

    Its working properly now. Just removed WAS, MQ, etc and installed them again. Only applied fixpack that my collegue have. One thing I want to mention is that it seems that cumulative fixpack 9 (for 5.02) does not properly work together with MyEclipse. the initial problem I got, when I have that fixpack installed, is that I cannot see my login page… though the server started properly… it says page not found. When I removed the fix pack, it suddenly worked fine. The reason I removed it is bec I compared my WAS version with my collegue… his was (again) working while mine was not…

    Regarding this problem, I’m not sure if it still have anything to do with the fixpack since I uninstalled it already…though that would be the only difference that my WAS and my collegues WAS have.

    Thanks for the feedback! Appreciate it a lot.

    Regards,
    Allan

Viewing 15 posts - 1 through 15 (of 16 total)
Reply To: [Closed] Unable to deserialize object when using WAS Server

You must be logged in to post in the forum log in