Closed PilleniusMC closed 2 years ago
Not fixed as of 8.0.2
Sorry about that! Turns out Discord4J doesn't accept whitespace as valid information, so it throws a tantrum. I replaced certain things with an invisible UTF character, and that seemed to fix the problem.
Description:
Every time a ticket gets closed without a reason, then it throws an "Invalid Form Body" exception. When there is a reason provided it sends the correct embed in the right channel.
Used Version: 8.0.1
Config (Shortened and sensitive info omitted):
Force_Locale: true Preferred_Locale: 'de_DE' Console_Locale: 'de_DE' Use_Cooldowns: false Cooldown_Time: 0 Enable_Velocity: true Database_Mode: 'MYSQL' MySQL_Port: omitted MySQL_Host: omitted MySQL_DBName: omitted MySQL_Username: omitted MySQL_Password: omitted Memory_Backup_Frequency: 1800 Print_Modified_Stacktrace: true Print_Full_Stacktrace: false Use_Discord_Bot: true Discord_Bot_Token: omitted Discord_Channel_ID: omitted Discord_Notify_On_Assign: true Discord_Notify_On_Close: true Discord_Notify_On_Close_All: true Discord_Notify_On_Comment: true Discord_Notify_On_Create: true Discord_Notify_On_Reopen: true Discord_Notify_On_Priority_Change: true Colour_Code: '&3' Allow_Unread_Ticket_Updates: true Allow_UpdateChecking: true Enable_Advanced_Visual_Control: false
Server Log:
[11:06:51] [Server thread/INFO]: chrisi0801 issued server command: /ticket close 2 [11:06:51] [ForkJoinPool.commonPool-worker-4/INFO]: [TicketManager] chrisi0801 closed ticket #2. [11:06:51] [boundedElastic-2/ERROR]: [reactor.core.publisher.Operators] Operator called default onErrorDropped reactor.core.Exceptions$ErrorCallbackNotImplemented: discord4j.rest.http.client.ClientException: POST /channels/946333207249444924/messages returned 400 Bad Request with response {code=50035, message=Invalid Form Body, errors={embed={fields={0={value={_errors=[{code=BASE_TYPE_REQUIRED, message=This field is required}]}}}}}} Caused by: discord4j.rest.http.client.ClientException: POST /channels/946333207249444924/messages returned 400 Bad Request with response {code=50035, message=Invalid Form Body, errors={embed={fields={0={value={_errors=[{code=BASE_TYPE_REQUIRED, message=This field is required}]}}}}}} at discord4j.rest.http.client.ClientResponse.clientException(ClientResponse.java:171) ~[?:?] Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: Error has been observed at the following site(s): *__checkpoint ⇢ Request to POST /channels/946333207249444924/messages [RequestStream] *__checkpoint ⇢ Request to POST /channels/946333207249444924/messages [DefaultRouter] Original Stack Trace: at discord4j.rest.http.client.ClientResponse.clientException(ClientResponse.java:171) ~[?:?] at discord4j.rest.http.client.ClientResponse.lambda$createException$13(ClientResponse.java:149) ~[?:?] at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:125) ~[?:?] at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1816) ~[?:?] at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:249) ~[?:?] at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120) ~[?:?] at reactor.core.publisher.FluxHandle$HandleSubscriber.onNext(FluxHandle.java:119) ~[?:?] at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:854) ~[?:?] at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:854) ~[?:?] at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:854) ~[?:?] at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onNext(FluxMap.java:220) ~[?:?] at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onNext(FluxDoFinally.java:130) ~[?:?] at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:184) ~[?:?] at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onNext(FluxContextWrite.java:107) ~[?:?] at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1816) ~[?:?] at reactor.core.publisher.MonoCollectList$MonoCollectListSubscriber.onComplete(MonoCollectList.java:128) ~[?:?] at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:260) ~[?:?] at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:142) ~[?:?] at reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:400) ~[?:?] at reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:419) ~[?:?] at reactor.netty.channel.ChannelOperations.terminate(ChannelOperations.java:473) ~[?:?] at reactor.netty.http.client.HttpClientOperations.onInboundNext(HttpClientOperations.java:702) ~[?:?] at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:93) ~[?:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1372) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1235) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1284) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:507) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:446) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-all-4.1.68.Final.jar:4.1.68.Final] at java.lang.Thread.run(Thread.java:833) ~[?:?]