当前位置: 首页 > 知识库问答 >
问题:

java.lang.IllegalArgumentException:无法为类创建@Body转换器

蔡弘扬
2023-03-14

我的请求类:

data class DemoRequest(
val emailId: String? = null,
val demoData: List<DemoDomain?>? = null,
val userName: String? = null

这里还有一点需要提及的是,使用GSONConverterFactory时,它工作得很好,但当我切换到MoshiConverterFactory时,它会抛出错误。

@POST("call/api")
fun sendToServer(@Body request: DemoRequest):retrofit2.Call<RemoteResponse>

val retrofit = Retrofit.Builder()
            .baseUrl(BASE_URL)
            .client(okHttpClient)
            .addConverterFactory(MoshiConverterFactory.create())
            .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
            .build()

共有1个答案

湛功
2023-03-14

您是否记得在构建改型时更改到MoshiconverterFactory

reverfit.builder().BaseUrl(...).AddConverterFactory(MoshicOnverterFactory.Create()).build()

另外,最新的改型版本是2.5.0,所以您可以尝试升级并确保您的转换器也是相同的版本。

 类似资料:
  • 但每次我都收到异常:创建@body转换器 我怎么送?或者其他我能做到的想法。您甚至可以向我提供包含json的简单参数。这对我很合适

  • 我有一个这样的改装实例 参数#2(questionKind)总是伴随对象中的常量字符串之一,我不知道它在说什么“类型变量或通配符”。我做错了什么?

  • 我在我的应用程序和Gson转换器中使用了改型。我想使用数据库时,没有互联网连接。我决定用糖兽。但我得到一个。 java.lang.IllegalArgumentException:无法为类创建转换器

  • 我在MoshiConverterFactory和restfit上遇到了一个问题--我不能将POST JSON请求发送到RestAPI,因为它总是导致错误。我可以用Multipart成功地做到这一点,但API不支持它,所以这是不可能的... 我已经尝试做了什么:在我的AuthData类的参数上添加注释(错误仍然相同),传递多部分和表单URL编码的数据(API不支持)。有人看到我做错了什么吗?我也没有

  • 我正在使用、和,我真的不知道是什么导致了这个错误,但是它只发生在release apk中,当是时,所以我猜这是一个发布的proguard但是我不知道到底是什么问题。 我的错误是: 下面是: 和: 最后是我的Proguard文件:

  • 我在使用ActiveAndroid对API调用和数据库进行修改。在Pre6.0的Android设备上,一个应用程序可以很好地工作。无法确定根本原因。 改装2 Beta-4。Android6。无法创建转换器 我不明白为什么要使用gson或gsonbuilder? 感谢任何帮助。