Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support java wrapper types #349

Open
tiltwind opened this issue Feb 12, 2023 · 3 comments
Open

Support java wrapper types #349

tiltwind opened this issue Feb 12, 2023 · 3 comments

Comments

@tiltwind
Copy link
Contributor

tiltwind commented Feb 12, 2023

What would you like to be added:
Support java wrapper types.

Why is this needed:
Many users need types in golang which maps the java wrapper types , including Interger,Long,Short,Float,Double,Character.
So I think it's an important feature should being supported as soon as possible. I spend a few days to add this feature.

New supported java wrapper types:

java wrapper types golang types
java.lang.Integer *int32
java.lang.Byte *byte
java.lang.Short *int16
java.lang.Boolean *bool
java.lang.Long *int64
java.lang.Float *float32
java.lang.Double *float64
java.lang.Character *hessian.Rune

BUT,BUT,BUT it is NOT forward compatible.
The following types art not supported from v2.0.0, if u use these types, use the replacing types instead:

unsupported types use replacing types instead
hessian.IntegerArray []*int32
hessian.ByteArray []*byte
hessian.ShortArray []*int16
hessian.BooleanArray []*bool
hessian.LongArray []*int64
hessian.FloatArray []*float32
hessian.DoubleArray []*float64
hessian.CharacterArray []*hessian.Rune

The 2.0 branch includes the following changes:

  1. define new inner register function to support special golang types to map java class name.
  2. define *hessian.Rune to ref java.lang.Character
  3. upgrade hessian-lite to 3.2.13, and add function to remove the serialization limit for test classes in package com.caucho.hessian.test.
  4. Fix bugs in unit tests.
  5. Fix multiple level array name incorrectly combined.

Because it's not forward compatible, I will push it to 2.0 branch first, u can upgrade and test it by executing go get github.com/apache/dubbo-go-hessian2@2.0.

If u meet some problem, pls tell us in this issue. Thanks!

@AlexStocks
Copy link
Contributor

AlexStocks commented Feb 16, 2023

建议像这种知识,更新到 readme 里面。readme 现在很贫瘠,我前边还建了个issue #342

@tiltwind
Copy link
Contributor Author

建议像这种知识,更新到 readme 里面。readme 现在很贫瘠,我前边还建了个issue #342

already add in readme in #350

@tiltwind
Copy link
Contributor Author

currently, the dubbo-go ci is pass for the major version , see apache/dubbo-go#2222

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants