File tree Expand file tree Collapse file tree 1 file changed +13
-3
lines changed
org.springframework.core/src/main/java/org/springframework/core/convert Expand file tree Collapse file tree 1 file changed +13
-3
lines changed Original file line number Diff line number Diff line change @@ -142,10 +142,20 @@ private String resolveName() {
142
142
private MethodParameter resolveMethodParameter () {
143
143
MethodParameter read = resolveReadMethodParameter ();
144
144
MethodParameter write = resolveWriteMethodParameter ();
145
- if (read == null && write == null ) {
146
- throw new IllegalStateException ("Property is neither readable nor writeable" );
145
+ if (write == null ) {
146
+ if (read == null ) {
147
+ throw new IllegalStateException ("Property is neither readable nor writeable" );
148
+ }
149
+ return read ;
150
+ }
151
+ if (read != null ) {
152
+ Class <?> readType = read .getParameterType ();
153
+ Class <?> writeType = write .getParameterType ();
154
+ if (!writeType .equals (readType ) && writeType .isAssignableFrom (readType )) {
155
+ return read ;
156
+ }
147
157
}
148
- return ( write != null ? write : read ) ;
158
+ return write ;
149
159
}
150
160
151
161
private MethodParameter resolveReadMethodParameter () {
You can’t perform that action at this time.
0 commit comments