You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by "U. Klinkmüller (JIRA)" <ji...@apache.org> on 2007/02/09 14:05:10 UTC

[jira] Created: (LANG-317) Enum Serialization - not backwards compatible

Enum Serialization - not backwards compatible
---------------------------------------------

                 Key: LANG-317
                 URL: https://issues.apache.org/jira/browse/LANG-317
             Project: Commons Lang
          Issue Type: Bug
    Affects Versions: 2.2
         Environment: JDK 1.5 -> JDK 1.4
            Reporter: U. Klinkmüller
            Priority: Critical
             Fix For: 2.3


In our distributed application we have to deal with different environments. The server runs in a JDK 1.5 environment while some clients runs with JDK 1.4. In this scenario we get an error when we try to transfer the result object via RMI. The error message is:

Exception:BusinessDelegatorComp.login() - connection error ocurred during loginCORBA MARSHAL 0x4942f89a No; nested exception is: 
	org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D100D6F29BD50386) = D100D6F29BD50386 whereas Target (Rep. ID RMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D041682DA5693C42) = D041682DA5693C42  vmcid: IBM  minor code: 89A  completed: No

The class causing this problem is derived from org.apache.commons.lang.enums.ValuedEnum. Aftre some recherches we found on http://people.apache.org/~bayard/ that there is a upcoming new release 2.3 of Commons-Lang. We saw that in this release a bug [LANG-286] has been fixed which seemed to be exactly our problem. We downloaded this version hopening that we can forget this problem. But unfortunately the problem still exists.



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


[jira] Commented: (LANG-317) Enum Serialization - not backwards compatible

Posted by "Henri Yandell (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12471817 ] 

Henri Yandell commented on LANG-317:
------------------------------------

I believe the solution you need here is that you'll need to define serialVersionUID in your de.fraport.biaf.apm.user.UserRoleEnum class. The one in the ValuedEnum is private.

> Enum Serialization - not backwards compatible
> ---------------------------------------------
>
>                 Key: LANG-317
>                 URL: https://issues.apache.org/jira/browse/LANG-317
>             Project: Commons Lang
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: JDK 1.5 -> JDK 1.4
>            Reporter: U. Klinkmüller
>            Priority: Critical
>             Fix For: 2.3
>
>
> In our distributed application we have to deal with different environments. The server runs in a JDK 1.5 environment while some clients runs with JDK 1.4. In this scenario we get an error when we try to transfer the result object via RMI. The error message is:
> Exception:BusinessDelegatorComp.login() - connection error ocurred during loginCORBA MARSHAL 0x4942f89a No; nested exception is: 
> 	org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D100D6F29BD50386) = D100D6F29BD50386 whereas Target (Rep. ID RMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D041682DA5693C42) = D041682DA5693C42  vmcid: IBM  minor code: 89A  completed: No
> The class causing this problem is derived from org.apache.commons.lang.enums.ValuedEnum. Aftre some recherches we found on http://people.apache.org/~bayard/ that there is a upcoming new release 2.3 of Commons-Lang. We saw that in this release a bug [LANG-286] has been fixed which seemed to be exactly our problem. We downloaded this version hopening that we can forget this problem. But unfortunately the problem still exists.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


[jira] Commented: (LANG-317) Enum Serialization - not backwards compatible

Posted by "U. Klinkmüller (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12472217 ] 

U. Klinkmüller commented on LANG-317:
-------------------------------------

Till now we didn't try this because if a JDK 1.5 client communicates with the server (1.5 <-> 1.5) the problem does not arise. It is not known to me that in serialisation JDK 1.5 has a different behavior than JDK 1.4.

> Enum Serialization - not backwards compatible
> ---------------------------------------------
>
>                 Key: LANG-317
>                 URL: https://issues.apache.org/jira/browse/LANG-317
>             Project: Commons Lang
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: JDK 1.5 -> JDK 1.4
>            Reporter: U. Klinkmüller
>            Priority: Critical
>
> In our distributed application we have to deal with different environments. The server runs in a JDK 1.5 environment while some clients runs with JDK 1.4. In this scenario we get an error when we try to transfer the result object via RMI. The error message is:
> Exception:BusinessDelegatorComp.login() - connection error ocurred during loginCORBA MARSHAL 0x4942f89a No; nested exception is: 
> 	org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D100D6F29BD50386) = D100D6F29BD50386 whereas Target (Rep. ID RMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D041682DA5693C42) = D041682DA5693C42  vmcid: IBM  minor code: 89A  completed: No
> The class causing this problem is derived from org.apache.commons.lang.enums.ValuedEnum. Aftre some recherches we found on http://people.apache.org/~bayard/ that there is a upcoming new release 2.3 of Commons-Lang. We saw that in this release a bug [LANG-286] has been fixed which seemed to be exactly our problem. We downloaded this version hopening that we can forget this problem. But unfortunately the problem still exists.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


[jira] Updated: (LANG-317) Enum Serialization - not backwards compatible

Posted by "Henri Yandell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LANG-317?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henri Yandell updated LANG-317:
-------------------------------

    Fix Version/s:     (was: 2.3)

> Enum Serialization - not backwards compatible
> ---------------------------------------------
>
>                 Key: LANG-317
>                 URL: https://issues.apache.org/jira/browse/LANG-317
>             Project: Commons Lang
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: JDK 1.5 -> JDK 1.4
>            Reporter: U. Klinkmüller
>            Priority: Critical
>
> In our distributed application we have to deal with different environments. The server runs in a JDK 1.5 environment while some clients runs with JDK 1.4. In this scenario we get an error when we try to transfer the result object via RMI. The error message is:
> Exception:BusinessDelegatorComp.login() - connection error ocurred during loginCORBA MARSHAL 0x4942f89a No; nested exception is: 
> 	org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D100D6F29BD50386) = D100D6F29BD50386 whereas Target (Rep. ID RMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D041682DA5693C42) = D041682DA5693C42  vmcid: IBM  minor code: 89A  completed: No
> The class causing this problem is derived from org.apache.commons.lang.enums.ValuedEnum. Aftre some recherches we found on http://people.apache.org/~bayard/ that there is a upcoming new release 2.3 of Commons-Lang. We saw that in this release a bug [LANG-286] has been fixed which seemed to be exactly our problem. We downloaded this version hopening that we can forget this problem. But unfortunately the problem still exists.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


[jira] Commented: (LANG-317) Enum Serialization - not backwards compatible

Posted by "Joerg Schaible (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12472222 ] 

Joerg Schaible commented on LANG-317:
-------------------------------------

This has less to do with the JDK, but more with the compiler you're using. E.g. if you have compiled the class with Eclipse (it uses *always* the internal compiler and not the selected JDK's one) it will have a different serialVersionUID generated that the same class from the Sun compiler from the identical JDK. The only way to get them compatible is to define an own serialVersionUID.

> Enum Serialization - not backwards compatible
> ---------------------------------------------
>
>                 Key: LANG-317
>                 URL: https://issues.apache.org/jira/browse/LANG-317
>             Project: Commons Lang
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: JDK 1.5 -> JDK 1.4
>            Reporter: U. Klinkmüller
>            Priority: Critical
>
> In our distributed application we have to deal with different environments. The server runs in a JDK 1.5 environment while some clients runs with JDK 1.4. In this scenario we get an error when we try to transfer the result object via RMI. The error message is:
> Exception:BusinessDelegatorComp.login() - connection error ocurred during loginCORBA MARSHAL 0x4942f89a No; nested exception is: 
> 	org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D100D6F29BD50386) = D100D6F29BD50386 whereas Target (Rep. ID RMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D041682DA5693C42) = D041682DA5693C42  vmcid: IBM  minor code: 89A  completed: No
> The class causing this problem is derived from org.apache.commons.lang.enums.ValuedEnum. Aftre some recherches we found on http://people.apache.org/~bayard/ that there is a upcoming new release 2.3 of Commons-Lang. We saw that in this release a bug [LANG-286] has been fixed which seemed to be exactly our problem. We downloaded this version hopening that we can forget this problem. But unfortunately the problem still exists.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


[jira] Closed: (LANG-317) Enum Serialization - not backwards compatible

Posted by "Henri Yandell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LANG-317?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henri Yandell closed LANG-317.
------------------------------

    Resolution: Invalid

Closing this issue - Jörg's reply seems good to me. 

Please reopen if that didn't help.

> Enum Serialization - not backwards compatible
> ---------------------------------------------
>
>                 Key: LANG-317
>                 URL: https://issues.apache.org/jira/browse/LANG-317
>             Project: Commons Lang
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: JDK 1.5 -> JDK 1.4
>            Reporter: U. Klinkmüller
>            Priority: Critical
>
> In our distributed application we have to deal with different environments. The server runs in a JDK 1.5 environment while some clients runs with JDK 1.4. In this scenario we get an error when we try to transfer the result object via RMI. The error message is:
> Exception:BusinessDelegatorComp.login() - connection error ocurred during loginCORBA MARSHAL 0x4942f89a No; nested exception is: 
> 	org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D100D6F29BD50386) = D100D6F29BD50386 whereas Target (Rep. ID RMI:de.fraport.biaf.apm.user.UserRoleEnum:CBEF51ADA936FFFE:D041682DA5693C42) = D041682DA5693C42  vmcid: IBM  minor code: 89A  completed: No
> The class causing this problem is derived from org.apache.commons.lang.enums.ValuedEnum. Aftre some recherches we found on http://people.apache.org/~bayard/ that there is a upcoming new release 2.3 of Commons-Lang. We saw that in this release a bug [LANG-286] has been fixed which seemed to be exactly our problem. We downloaded this version hopening that we can forget this problem. But unfortunately the problem still exists.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org