Description
Description
Generating controller tests fails due to ClassNotFoundException: javax.servlet.http.Cookie
.
To Reproduce
Generate integration tests for OwnerController.processFindForm()
from spring-petclinic
project using PetClinicApplication
configuration.
Expected behavior
Tests are generated without errors.
Actual behavior
No tests are generated, there's the following error in the utbot-engine-current.log
13:01:10.801 | INFO | JavaLanguage | Fuzzing is stopped because of an error
java.lang.ClassNotFoundException: javax.servlet.http.Cookie
at java.net.URLClassLoader.findClass(URLClassLoader.java:445) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:587) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
at org.utbot.framework.plugin.api.util.SpringModelUtils.createRequestBuilderModelOrNull(SpringModelUtils.kt:328) ~[utbot-framework-api-2023.08-SNAPSHOT.jar:?]
at org.utbot.framework.context.spring.SpringIntegrationTestJavaFuzzingContext.createStateBefore(SpringIntegrationTestJavaFuzzingContext.kt:97) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$1$1.invokeSuspend(UtBotSymbolicEngine.kt:482) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$1$1.invoke(UtBotSymbolicEngine.kt) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$1$1.invoke(UtBotSymbolicEngine.kt) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.fuzzing.JavaLanguageKt$runJavaFuzzing$5.invokeSuspend(JavaLanguage.kt:131) ~[utbot-java-fuzzing-2023.08-SNAPSHOT.jar:?]
at org.utbot.fuzzing.JavaLanguageKt$runJavaFuzzing$5.invoke(JavaLanguage.kt) ~[utbot-java-fuzzing-2023.08-SNAPSHOT.jar:?]
at org.utbot.fuzzing.JavaLanguageKt$runJavaFuzzing$5.invoke(JavaLanguage.kt) ~[utbot-java-fuzzing-2023.08-SNAPSHOT.jar:?]
at org.utbot.fuzzing.BaseFuzzing.handle(Providers.kt:56) ~[utbot-fuzzing-2023.08-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.fuzz(Api.kt:359) ~[utbot-fuzzing-2023.08-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.access$fuzz(Api.kt:1) ~[utbot-fuzzing-2023.08-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi$fuzz$2.invokeSuspend(Api.kt) ~[utbot-fuzzing-2023.08-SNAPSHOT.jar:?]
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) ~[kotlin-stdlib-1.8.10.jar:1.8.10-release-430(1.8.10)]
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) ~[kotlinx-coroutines-core-jvm-1.6.3.jar:?]
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284) ~[kotlinx-coroutines-core-jvm-1.6.3.jar:?]
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85) ~[kotlinx-coroutines-core-jvm-1.6.3.jar:?]
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59) ~[kotlinx-coroutines-core-jvm-1.6.3.jar:?]
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source) ~[kotlinx-coroutines-core-jvm-1.6.3.jar:?]
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38) ~[kotlinx-coroutines-core-jvm-1.6.3.jar:?]
at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source) ~[kotlinx-coroutines-core-jvm-1.6.3.jar:?]
at org.utbot.common.ConcurrencyKt.runBlockingWithCancellationPredicate(Concurrency.kt:38) ~[utbot-core-2023.08-SNAPSHOT.jar:?]
at org.utbot.framework.plugin.api.TestCaseGenerator$generate$2$3.invoke(TestCaseGenerator.kt:196) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.framework.plugin.api.TestCaseGenerator$generate$2$3.invoke(TestCaseGenerator.kt:195) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.common.ConcurrencyKt.runIgnoringCancellationException(Concurrency.kt:47) ~[utbot-core-2023.08-SNAPSHOT.jar:?]
at org.utbot.framework.plugin.api.TestCaseGenerator.generate(TestCaseGenerator.kt:195) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.framework.process.EngineProcessMainKt$setup$5.invoke(EngineProcessMain.kt:145) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.framework.process.EngineProcessMainKt$setup$5.invoke(EngineProcessMain.kt:130) ~[utbot-framework-2023.08-SNAPSHOT.jar:?]
at org.utbot.rd.IdleWatchdog$measureTimeForActiveCall$1$2$1.invoke(ClientProcessUtil.kt:115) ~[utbot-rd-2023.08-SNAPSHOT.jar:?]
at org.utbot.rd.IdleWatchdog.wrapActive(ClientProcessUtil.kt:88) ~[utbot-rd-2023.08-SNAPSHOT.jar:?]
at org.utbot.rd.IdleWatchdog$measureTimeForActiveCall$1.invoke(ClientProcessUtil.kt:114) ~[utbot-rd-2023.08-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.IRdEndpoint$set$1.invoke(TaskInterfaces.kt:182) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.framework.IRdEndpoint$set$1.invoke(TaskInterfaces.kt:182) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.framework.impl.RdCall.onWireReceived(RdTask.kt:362) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2$2.invoke(MessageBroker.kt:57) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2$2.invoke(MessageBroker.kt:56) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.framework.impl.ProtocolContexts.readMessageContextAndInvoke(ProtocolContexts.kt:148) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2.invoke(MessageBroker.kt:56) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2.invoke(MessageBroker.kt:54) ~[rd-framework-2023.1.2.jar:?]
at com.jetbrains.rd.util.threading.SingleThreadSchedulerBase.queue$lambda-3(SingleThreadScheduler.kt:41) ~[rd-core-2023.1.2.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
Additional context
javax.servlet.http.Cookie
is replaced with jakarta.servlet.http.Cookie
in newer versions of Spring, we need to support both.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Done