FeeDelegatedSmartContractExecution 테스트 시 오류가 발생했는데 어떤 오류인지 모르겠습니다

[] - 21-11-10 15:31:29:945 DEBUG org.web3j.protocol.http.HttpService:169 - --> POST https://api.baobab.klaytn.net:8651/
[] - 21-11-10 15:31:29:945 DEBUG org.web3j.protocol.http.HttpService:176 - Content-Type: application/json; charset=utf-8
[] - 21-11-10 15:31:29:945 DEBUG org.web3j.protocol.http.HttpService:179 - Content-Length: 126
[] - 21-11-10 15:31:29:945 DEBUG org.web3j.protocol.http.HttpService:208 - 
[] - 21-11-10 15:31:29:946 DEBUG org.web3j.protocol.http.HttpService:210 - {"jsonrpc":"2.0","method":"klay_getTransactionCount","params":["0x0efddef3542fe35a516ccf000aeeccc96d81f326","pending"],"id":0}
[] - 21-11-10 15:31:29:946 DEBUG org.web3j.protocol.http.HttpService:211 - --> END POST (126-byte body)
[] - 21-11-10 15:31:30:183 DEBUG org.web3j.protocol.http.HttpService:233 - <-- 200 https://api.baobab.klaytn.net:8651/ (237ms)
[] - 21-11-10 15:31:30:183 DEBUG org.web3j.protocol.http.HttpService:294 - date: Wed, 10 Nov 2021 06:31:30 GMT
[] - 21-11-10 15:31:30:183 DEBUG org.web3j.protocol.http.HttpService:294 - content-type: application/json
[] - 21-11-10 15:31:30:183 DEBUG org.web3j.protocol.http.HttpService:294 - content-length: 40
[] - 21-11-10 15:31:30:183 DEBUG org.web3j.protocol.http.HttpService:294 - server: fasthttp
[] - 21-11-10 15:31:30:183 DEBUG org.web3j.protocol.http.HttpService:294 - vary: Origin
[] - 21-11-10 15:31:30:184 DEBUG org.web3j.protocol.http.HttpService:276 - 
[] - 21-11-10 15:31:30:184 DEBUG org.web3j.protocol.http.HttpService:277 - {"jsonrpc":"2.0","id":0,"result":"0x4"}

[] - 21-11-10 15:31:30:184 DEBUG org.web3j.protocol.http.HttpService:284 - <-- END HTTP (40-byte body)
[] - 21-11-10 15:31:30:189 DEBUG org.web3j.protocol.http.HttpService:169 - --> POST https://api.baobab.klaytn.net:8651/
[] - 21-11-10 15:31:30:189 DEBUG org.web3j.protocol.http.HttpService:176 - Content-Type: application/json; charset=utf-8
[] - 21-11-10 15:31:30:189 DEBUG org.web3j.protocol.http.HttpService:179 - Content-Length: 60
[] - 21-11-10 15:31:30:189 DEBUG org.web3j.protocol.http.HttpService:208 - 
[] - 21-11-10 15:31:30:189 DEBUG org.web3j.protocol.http.HttpService:210 - {"jsonrpc":"2.0","method":"klay_chainID","params":[],"id":1}
[] - 21-11-10 15:31:30:189 DEBUG org.web3j.protocol.http.HttpService:211 - --> END POST (60-byte body)
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:233 - <-- 200 https://api.baobab.klaytn.net:8651/ (4ms)
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:294 - date: Wed, 10 Nov 2021 06:31:30 GMT
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:294 - content-type: application/json
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:294 - content-length: 42
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:294 - server: fasthttp
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:294 - vary: Origin
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:276 - 
[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:277 - {"jsonrpc":"2.0","id":1,"result":"0x3e9"}

[] - 21-11-10 15:31:30:194 DEBUG org.web3j.protocol.http.HttpService:284 - <-- END HTTP (42-byte body)
[] - 21-11-10 15:31:30:195 DEBUG org.web3j.protocol.http.HttpService:169 - --> POST https://api.baobab.klaytn.net:8651/
[] - 21-11-10 15:31:30:195 DEBUG org.web3j.protocol.http.HttpService:176 - Content-Type: application/json; charset=utf-8
[] - 21-11-10 15:31:30:195 DEBUG org.web3j.protocol.http.HttpService:179 - Content-Length: 61
[] - 21-11-10 15:31:30:195 DEBUG org.web3j.protocol.http.HttpService:208 - 
[] - 21-11-10 15:31:30:195 DEBUG org.web3j.protocol.http.HttpService:210 - {"jsonrpc":"2.0","method":"klay_gasPrice","params":[],"id":2}
[] - 21-11-10 15:31:30:195 DEBUG org.web3j.protocol.http.HttpService:211 - --> END POST (61-byte body)
[] - 21-11-10 15:31:30:199 DEBUG org.web3j.protocol.http.HttpService:233 - <-- 200 https://api.baobab.klaytn.net:8651/ (4ms)
[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:294 - date: Wed, 10 Nov 2021 06:31:30 GMT
[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:294 - content-type: application/json
[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:294 - content-length: 48
[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:294 - server: fasthttp
[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:294 - vary: Origin
[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:276 - 
[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:277 - {"jsonrpc":"2.0","id":2,"result":"0x5d21dba00"}

[] - 21-11-10 15:31:30:200 DEBUG org.web3j.protocol.http.HttpService:284 - <-- END HTTP (48-byte body)
[] - 21-11-10 15:31:30:224 DEBUG org.web3j.protocol.http.HttpService:169 - --> POST https://api.baobab.klaytn.net:8651/
[] - 21-11-10 15:31:30:224 DEBUG org.web3j.protocol.http.HttpService:176 - Content-Type: application/json; charset=utf-8
[] - 21-11-10 15:31:30:224 DEBUG org.web3j.protocol.http.HttpService:179 - Content-Length: 667
[] - 21-11-10 15:31:30:224 DEBUG org.web3j.protocol.http.HttpService:208 - 
[] - 21-11-10 15:31:30:224 DEBUG org.web3j.protocol.http.HttpService:210 - {"jsonrpc":"2.0","method":"klay_sendRawTransaction","params":["0x31f90124048505d21dba008401312d009487d6312c30c48d0e37dc6d11092dd596fb221d3d80940efddef3542fe35a516ccf000aeeccc96d81f326b844a9059cbb00000000000000000000000087d6312c30c48d0e37dc6d11092dd596fb221d3d0000000000000000000000000000000000000000000000000de0b6b3a7640000f847f8458207f6a03b142ac8f280e282114d11113e7e3f644f391a41620e3f0cf09c22e223c664e0a079a972cc03cd37c33ad256b60bd104911640b8c346695e53fef41d3deda96f669477c8db5694685e96b0543106f28387f1fc74bb66f847f8458207f5a0dfd18d59c6fa5f744a3c0244990411e675e6ce56faffe5d0b4686abeaa41770da0152c7ee1fbb50f7278e78fe11df23bd69c07dc52a1f325b6baa6221525012817"],"id":3}
[] - 21-11-10 15:31:30:224 DEBUG org.web3j.protocol.http.HttpService:211 - --> END POST (667-byte body)
[] - 21-11-10 15:31:30:230 DEBUG org.web3j.protocol.http.HttpService:233 - <-- 200 https://api.baobab.klaytn.net:8651/ (5ms)
[] - 21-11-10 15:31:30:231 DEBUG org.web3j.protocol.http.HttpService:294 - date: Wed, 10 Nov 2021 06:31:30 GMT
[] - 21-11-10 15:31:30:231 DEBUG org.web3j.protocol.http.HttpService:294 - content-type: application/json
[] - 21-11-10 15:31:30:231 DEBUG org.web3j.protocol.http.HttpService:294 - content-length: 126
[] - 21-11-10 15:31:30:231 DEBUG org.web3j.protocol.http.HttpService:294 - server: fasthttp
[] - 21-11-10 15:31:30:231 DEBUG org.web3j.protocol.http.HttpService:294 - vary: Origin
[] - 21-11-10 15:31:30:231 DEBUG org.web3j.protocol.http.HttpService:276 - 
[] - 21-11-10 15:31:30:232 DEBUG org.web3j.protocol.http.HttpService:277 - {"jsonrpc":"2.0","id":3,"error":{"code":-32000,"message":"not a program account (e.g., an account having code and storage)"}}

[] - 21-11-10 15:31:30:232 DEBUG org.web3j.protocol.http.HttpService:284 - <-- END HTTP (126-byte body)
[] - 21-11-10 15:31:30:234 DEBUG org.web3j.protocol.http.HttpService:169 - --> POST https://api.baobab.klaytn.net:8651/
[] - 21-11-10 15:31:30:234 DEBUG org.web3j.protocol.http.HttpService:176 - Content-Type: application/json; charset=utf-8
[] - 21-11-10 15:31:30:234 DEBUG org.web3j.protocol.http.HttpService:179 - Content-Length: 78
[] - 21-11-10 15:31:30:234 DEBUG org.web3j.protocol.http.HttpService:208 - 
[] - 21-11-10 15:31:30:234 DEBUG org.web3j.protocol.http.HttpService:210 - {"jsonrpc":"2.0","method":"klay_getTransactionReceipt","params":[null],"id":4}
[] - 21-11-10 15:31:30:235 DEBUG org.web3j.protocol.http.HttpService:211 - --> END POST (78-byte body)
[] - 21-11-10 15:31:30:240 DEBUG org.web3j.protocol.http.HttpService:233 - <-- 200 https://api.baobab.klaytn.net:8651/ (5ms)
[] - 21-11-10 15:31:30:240 DEBUG org.web3j.protocol.http.HttpService:294 - date: Wed, 10 Nov 2021 06:31:30 GMT
[] - 21-11-10 15:31:30:240 DEBUG org.web3j.protocol.http.HttpService:294 - content-type: application/json
[] - 21-11-10 15:31:30:240 DEBUG org.web3j.protocol.http.HttpService:294 - content-length: 149
[] - 21-11-10 15:31:30:240 DEBUG org.web3j.protocol.http.HttpService:294 - server: fasthttp
[] - 21-11-10 15:31:30:240 DEBUG org.web3j.protocol.http.HttpService:294 - vary: Origin
[] - 21-11-10 15:31:30:240 DEBUG org.web3j.protocol.http.HttpService:276 - 
[] - 21-11-10 15:31:30:241 DEBUG org.web3j.protocol.http.HttpService:277 - {"jsonrpc":"2.0","id":4,"error":{"code":-32602,"message":"invalid argument 0: json: cannot unmarshal non-string into Go value of type common.Hash"}}

[] - 21-11-10 15:31:30:241 DEBUG org.web3j.protocol.http.HttpService:284 - <-- END HTTP (149-byte body)
[] - 21-11-10 15:31:30:248 DEBUG org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate:137 - Retrieved ApplicationContext [1263391254] from cache with key [[WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]]]
[] - 21-11-10 15:31:30:248 DEBUG org.springframework.test.context.cache:290 - Spring test ApplicationContext cache statistics: [DefaultContextCache@eccaf1b size = 1, maxSize = 32, parentContextCount = 0, hitCount = 6, missCount = 1]
[] - 21-11-10 15:31:30:248 DEBUG com.ulisesbocchio.jasyptspringboot.configuration.EnableEncryptablePropertiesBeanFactoryPostProcessor:64 - Application Event Raised: AfterTestExecutionEvent
[] - 21-11-10 15:31:30:248 DEBUG com.ulisesbocchio.jasyptspringboot.configuration.EnableEncryptablePropertiesBeanFactoryPostProcessor:64 - Application Event Raised: AfterTestExecutionEvent
[] - 21-11-10 15:31:30:251 DEBUG org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate:137 - Retrieved ApplicationContext [1263391254] from cache with key [[WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]]]
[] - 21-11-10 15:31:30:251 DEBUG org.springframework.test.context.cache:290 - Spring test ApplicationContext cache statistics: [DefaultContextCache@eccaf1b size = 1, maxSize = 32, parentContextCount = 0, hitCount = 7, missCount = 1]
[] - 21-11-10 15:31:30:251 DEBUG org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate:137 - Retrieved ApplicationContext [1263391254] from cache with key [[WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]]]
[] - 21-11-10 15:31:30:251 DEBUG org.springframework.test.context.cache:290 - Spring test ApplicationContext cache statistics: [DefaultContextCache@eccaf1b size = 1, maxSize = 32, parentContextCount = 0, hitCount = 8, missCount = 1]
[] - 21-11-10 15:31:30:252 DEBUG org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate:137 - Retrieved ApplicationContext [1263391254] from cache with key [[WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]]]
[] - 21-11-10 15:31:30:252 DEBUG org.springframework.test.context.cache:290 - Spring test ApplicationContext cache statistics: [DefaultContextCache@eccaf1b size = 1, maxSize = 32, parentContextCount = 0, hitCount = 9, missCount = 1]
[] - 21-11-10 15:31:30:253 DEBUG org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate:137 - Retrieved ApplicationContext [1263391254] from cache with key [[WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]]]
[] - 21-11-10 15:31:30:253 DEBUG org.springframework.test.context.cache:290 - Spring test ApplicationContext cache statistics: [DefaultContextCache@eccaf1b size = 1, maxSize = 32, parentContextCount = 0, hitCount = 10, missCount = 1]
[] - 21-11-10 15:31:30:255 DEBUG org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate:137 - Retrieved ApplicationContext [1263391254] from cache with key [[WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]]]
[] - 21-11-10 15:31:30:255 DEBUG org.springframework.test.context.cache:290 - Spring test ApplicationContext cache statistics: [DefaultContextCache@eccaf1b size = 1, maxSize = 32, parentContextCount = 0, hitCount = 11, missCount = 1]
[] - 21-11-10 15:31:30:255 DEBUG com.ulisesbocchio.jasyptspringboot.configuration.EnableEncryptablePropertiesBeanFactoryPostProcessor:64 - Application Event Raised: AfterTestMethodEvent
[] - 21-11-10 15:31:30:255 DEBUG com.ulisesbocchio.jasyptspringboot.configuration.EnableEncryptablePropertiesBeanFactoryPostProcessor:64 - Application Event Raised: AfterTestMethodEvent
[] - 21-11-10 15:31:30:256 DEBUG org.springframework.test.context.support.AbstractDirtiesContextTestExecutionListener:107 - After test method: context [DefaultTestContext@3932c79a testClass = RoleBasedKeyExample, testInstance = io.mcc.mcctoken.klaytn.RoleBasedKeyExample@31d09031, testMethod = roleBasedKeyTransfer@RoleBasedKeyExample, testException = org.web3j.protocol.exceptions.TransactionException: Error processing request: invalid argument 0: json: cannot unmarshal non-string into Go value of type common.Hash, mergedContextConfiguration = [WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true]], class annotated with @DirtiesContext [false] with mode [null], method annotated with @DirtiesContext [false] with mode [null].
[] - 21-11-10 15:31:30:256 DEBUG org.springframework.test.context.web.ServletTestExecutionListener:166 - Resetting RequestContextHolder for test context [DefaultTestContext@3932c79a testClass = RoleBasedKeyExample, testInstance = io.mcc.mcctoken.klaytn.RoleBasedKeyExample@31d09031, testMethod = roleBasedKeyTransfer@RoleBasedKeyExample, testException = org.web3j.protocol.exceptions.TransactionException: Error processing request: invalid argument 0: json: cannot unmarshal non-string into Go value of type common.Hash, mergedContextConfiguration = [WebMergedContextConfiguration@782859e testClass = RoleBasedKeyExample, locations = '{}', classes = '{class com.finger.admin.AdminApplication, class com.finger.admin.AdminApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7a69b07, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@636be97c, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@2c767a52, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@441772e, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@6a01e23], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true]].

org.web3j.protocol.exceptions.TransactionException: Error processing request: invalid argument 0: json: cannot unmarshal non-string into Go value of type common.Hash

	at com.klaytn.caver.transaction.response.TransactionReceiptProcessor.sendTransactionReceiptRequest(TransactionReceiptProcessor.java:43)
	at com.klaytn.caver.transaction.response.PollingTransactionReceiptProcessor.getTransactionReceipt(PollingTransactionReceiptProcessor.java:48)
	at com.klaytn.caver.transaction.response.PollingTransactionReceiptProcessor.waitForTransactionReceipt(PollingTransactionReceiptProcessor.java:41)
	at io.mcc.mcctoken.klaytn.RoleBasedKey.transgerByRoleBased(RoleBasedKey.java:259)
	at io.mcc.mcctoken.klaytn.RoleBasedKeyExample.roleBasedKeyTransfer(RoleBasedKeyExample.java:296)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.springframework.test.context.junit4.statements.RunBeforeTestExecutionCallbacks.evaluate(RunBeforeTestExecutionCallbacks.java:74)
	at org.springframework.test.context.junit4.statements.RunAfterTestExecutionCallbacks.evaluate(RunAfterTestExecutionCallbacks.java:84)
	at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75)
	at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86)
	at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:251)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
	at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
	at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
	at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
	at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:235)
	at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)

FeeDelegatedSmartContractExecution 테스트를 진행하다가 위와 같은 에러로그가 발생했는데
어떤 오류인지 몰라서 문의드리려고 합니다.

caver.wallet.add(fromKeyring);

        // JKS에 저장된 KeyStore 비밀번호
        KeyPair pair = getKeyPairFromKeyStore("/test.jks", "qwer1234", "common_privatekey");
        String keystorePw = decrypt(commonPrivatePW, pair.getPrivate());

        ObjectMapper objectMapper = ObjectMapperFactory.getObjectMapper();
        KeyStore keyStore = objectMapper.readValue(new File(feePayerWalletFilePath), KeyStore.class);

        AbstractKeyring feePayerKeyring = KeyringFactory.decrypt(keyStore, keystorePw);
        caver.wallet.add(feePayerKeyring);
        contract.setWallet(caver.wallet);

        SendOptions sendOptions = new SendOptions(fromKeyring.getAddress());
        sendOptions.setFeeDelegation(true);
        sendOptions.setFeePayer(feePayerKeyring.getAddress());
        sendOptions.setGas(GAS_LIMIT);

        String input = contract.encodeABI("transfer", to, new BigInteger(caver.utils.convertToPeb(amount, Utils.KlayUnit.KLAY)));
        FeeDelegatedSmartContractExecution fdsce =  new FeeDelegatedSmartContractExecution.Builder()
                .setKlaytnCall(caver.rpc.klay)
                .setFrom(fromKeyring.getAddress())
                .setTo(to)
                .setGas(GAS_LIMIT)
                .setInput(input)
                .setFeePayer(feePayerKeyring.getAddress())
                .build();

        caver.wallet.sign(fromKeyring.getAddress(), fdsce);
        caver.wallet.signAsFeePayer(feePayerKeyring.getAddress(), fdsce);
        String decoded = fdsce.getRLPEncoding();

        Bytes32 txHash_executed = caver.rpc.klay.sendRawTransaction(decoded).send();
        TransactionReceiptProcessor receiptProcessor = new PollingTransactionReceiptProcessor(caver, 1000, 15);
        TransactionReceipt.TransactionReceiptData receiptData = receiptProcessor.waitForTransactionReceipt(txHash_executed.getResult());

코드는 이렇게 작성하였고 caver는 다른 클래스에서 전달받아서 사용했습니다
fromKeyring은 RoleBasedKey로 업데이트 해서 AbstractKeyring으로 받아서 사용하고 있습니다.

account가 저장소에 없다는거 같은데 어떤 account가 없는 구별이 안되네요…
어떤 부분이 오류인지 알 수 있을 까요?

해결했습니다

String input = contract.encodeABI("transfer", to, new BigInteger(caver.utils.convertToPeb(amount, Utils.KlayUnit.KLAY)));

이 부분에서 to의 지갑주소와
“FeeDelegatedSmartContractExecution.setTo” 부분의 주소가 잘못되었었네요

1개의 좋아요