인지용

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is with root cause 에러 해결 본문

에러 해결

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is with root cause 에러 해결

인지용 2022. 8. 16. 18:51

mybatis 사용 중 에러가 발생하였다.

 

세팅

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>

    <settings>
    </settings>

    <typeAliases>
        <typeAlias alias="array"                         type="java.util.Arrays" />
        <typeAlias alias="list"                          type="java.util.List" />
        <typeAlias  alias="hashMap"                         type="java.util.HashMap" />
        <typeAlias  alias="int"                             type="java.lang.Integer" />
        <typeAlias  alias="bigint"                          type="java.lang.Long" />
        <typeAlias  alias="string"                          type="java.lang.String" />
    </typeAliases>

    <typeHandlers>
    </typeHandlers>
</configuration>

 

문제의 쿼리

<select id="selectCodeInfo" parameterType="String" resultType="codeDto">
    /* selectCodeInfo */
    SELECT t1.client_id as client_id
        ,t1.redirect_uri as redirect_uri
    FROM testTable t1
    WHERE 1=1
    AND t1.client_id = #{clientId}
</select>

 

뭐가 문제인지 보이는가?....

이것 때문에 3시간 삽질했다...

 

원인

alias와 parameterType의 대소문자가 달라서 생긴 문제였다.

 

typeAliases에서 정한 alias는 소문자 string이었는데

쿼리의 parameterType은 대문자 string이어서 그렇다

 

 

 

해결 방법

 

alias와 parameterType의 대소문자를 잘 보고 사용하자 ㅠㅠ