본문 바로가기
728x90
반응형

개발일지45

[오류] Connection cannot be null when 'hibernate.dialect' not set ■ 증상 ㅇㅇㅇㅇ톰캣을 올리면 Connection cannot be null when 'hibernate.dialect' not set 오류가 발생한다고 나오는 것과 JPA 파일을 확인하라는 메세지가 계속해서 뜸. 근데 막상 DB툴(DBEAVER 이용 등)을 이용해서 해당 DB 정보에 connection 하면 너무나 잘 연결됨. 혹은 DB툴에서도 안붙을 수 있음. ■ 원인 및 해결방법 1. DB 툴에서 붙지 않을 때 - 고객사에 셋팅된 DB가 현재 DB 툴에서 지원하지 않는 버전의 DB일 수 있음. 나의 경우 말도 안되게 DBEAVER 7 버전대를 사용하고 있었는데 21버전대로 올리니까 바로 연결 됐다. 버전이 맞지 않아 작동되지 않았던 것. - DB 툴에서 연결되지 않을 때는 계속 SSL connect.. 2021. 4. 27.
AJP 연결자는 secretRequired="true"로 구성되었으나 보안 속성이 널 또는 ""입니다. 이 조합은 유효하지 않습니다. ■ 증상 세팅을 마치고 톰캣을 실행하려고 하면 AJP 연결자는 secretRequired="true"로 구성되었으나 보안 속성이 널 또는 ""입니다. 이 조합은 유효하지 않습니다. 메시지가 출력되면서 서버가 올라가지 않음. tomcat은 현재 8.5 버전 이용 중. ■ 원인 secretRequired의 속성은 따로 지정하지 않으면 true로 반환하게 되는데 보안 속성, 즉 secret은 null이기 때문에 발생하게 된다. 그러면 유효하지 않은 설정으로 간주하여 에러를 뱉게 된다. ■ 해결방법 간단하게 server.xml 에 있는 connector 설정에 secretRequired="false"를 추가해주는 것으로 해결할 수 있다. 생각보다 쉬우나 초반에는 에러 로그가 굉장히 많이 뜨기 때문에 당황하는 부.. 2021. 4. 26.
iframe, object 등에서 현재 창을 포함한 요소 반환 하는 법 오늘도 끊임없이 업무 진행 중. 특이한 상황에 쳐했다. 사실 그간 일을 하면서 iframe을 쓰는 경우가 그렇게 많지 않았는데, 기존에 구현되어있는 여러 개의 iframe 중 자신이 속한 요소의 id를 반환해서 해당 id를 사용해야 하는 경우가 생겼다. 어떻게 할지에 대해 고민을 많이 했지만 잘 나오지 않았다. 그러다가 드디어 방법을 찾았다. 바로 Window.frameElement! 아래와 같이 사용할 수 있다. //해당 프레임 요소 반환 var frameEl = window.frameElement; //id 반환 var frameElId = window.frameElement.id; 이용해 본적이 없어서 괜히 헤맨 것 같다. 2021. 4. 16.
윈도우10에 MariaDB 설치하기 개발을 하다보면 종종 로컬 환경에 DB를 설치해서 사용해야 하는 경우가 있다. 나는 서버 상에 이용하고 있는 DB가 있긴 하지만 로컬에서 연결이 한정적이기 때문에 로컬에 MariaDB를 설치하여 사용하기로 했다. 마리아DB는 아래 주소에서 다운받을 수 있다. downloads.mariadb.com/MariaDB/mariadb-10.4.8/winx64-packages/ 이 중에서 나는 mariadb-10.4.8-winx64.msi를 다운로드 받았다. msi 파일을 실행하면 바로 설치를 시작할 수 있다. 다음다음 누르다가 root 비밀번호 설정하는 창이 등장하면 root 비밀번호를 설정해준다. 잊어버리면 큰일난다. 그리고 하단에 있는 Use UTF8 as default server's character se.. 2021. 4. 3.
[오류] Java compiler level does not match the version of the installed Java project facet 뜬금없이 Java compiler level does not match the version of the installed Java project facet 라는 에러가 났다. 인터넷에서 다운로드 받은 소스를 컴파일 하고 나니 생긴 오류인데 의외로 해결 방법이 간단하다. 옵션에서 Project Facets에 들어가서 버전을 맞춰주면 된다고는 하는데 사실 그렇게 해서는 해결이 되지 않는다. 오히려 변경할 수 없다는 문구가 출력되기도 한다. 그래서 검색을 더 해본 결과 소스가 있는 곳으로 가서 .settings에 들어가야 한다는 것을 알게 됐다. 거기에서 "org.eclipse.wst.common.project.facet.core.xml"을 열어준다. 여기에서 원하는 것의 버전을 수정한 뒤 저장하면 된다. .. 2021. 4. 2.
구글 로그인 서비스 개발을 위한 oauth 계정 만들기 인터넷 커뮤니티 등에서 구글 로그인을 할 수 있도록 서비스 제공하는 곳들이 많다. 이용자 입장에서도 구글 로그인을 지원하면 여러모로 편리하다. 별다른 정보를 입력하지 않고 사이트를 이용할 수 있기 때문인데 이런 다양한 편리함 때문에 최근에는 많은 곳에서 구글 로그인을 할 수 있도록 지원한다. 나 역시 정말 많이 이용하고 있는 기능이기도 하다. 이런 기능을 이용하기 위해서는 구글 로그인 서비스 개발을 위해 oauth 계정을 만들어야 한다. 그러기 위해선 구글 클라우드 플랫폼에 접속해준다. console.cloud.google.com/ 왼쪽 상단 배너 옆에 프로젝트를 눌러 새 프로젝트를 만들어준다. 프로젝트는 한 명당 기본 12개를 제공하고 있으며 추가를 위해서는 기존 프로젝트를 삭제하거나 할당량 증가를 요.. 2021. 3. 31.
인텔리제이 플러그인 다운로드 받기 (+Mustache) 개발을 시작한 이래로 줄곧 이클립스만 사용하다가 인텔리제이로 공부를 시작했다. 아무래도 그간 사용하지 않았던 툴이기 때문에 이클립스에서 당연하게 바로바로 사용할 수 있었던 부분에서 삐끗하기도 한다. 그중 하나가 바로 플러그인 다운로드이다. 이클립스에서는 help에 가면 바로 plugin 다운로드할 수 있는 마켓플레이스가 보여서 어렵지 않게 플러그인들을 받고 지웠었는데, 인텔리제이의 헬프를 살펴보니 마켓은 물론 플러그인이라는 말도 보이지 않았다. 물론 메뉴바에 어디엔가 있을 수 있지만... 발견하지 못했다는 것이 더 맞을 수도 있겠다. 아무튼 그런 이유로 인텔리제이에서 새로운 플러그인을 받기 위해 어떻게 하면 좋을지에 대해서 적어보기로 했다. 적어도 나처럼 하염없이 메뉴를 보며 찾는 사람이 없기를....ㅠ.. 2021. 3. 27.
인텔리제이 깃 손쉽게 연동하기 요즘 프로젝트를 가보면 대체적으로 깃을 사용하고 있다는 것을 알 수 있다. 과거에는 SVN을 사용하는 경우가 많았지만 손쉬운 버전 관리나 브랜치 등 협업에 대한 강점 때문인지 점차 SVN보다는 git을 사용하는 경우가 많은 것 같다. git 역시 다양한 서비스가 있는데 대표적으로는 깃허브와 깃랩을 많이 사용한다. 지금 현재 회사에서 진행하고 있는 프로젝트는 구 버전은 SVN으로, 신버전은 깃랩에서 버전관리를 하고 있다. 지난 프로젝트에서는 깃허브를 사용했었다. 오늘은 조금 더 대중적인 깃허브와 인텔리제이를 연동해보려고 한다. 로컬 프로젝트이지만 깃허브를 통해 관리하려고 하는 이유는 바로 후에 이 코드가 자신에게 하나의 코드 샘플이 될 수 있으며 깃허브에 익숙해지면 다른 프로젝트 참여 시 큰 도움이 되기 .. 2021. 3. 7.
The archive: 경로/bootstrap.jar which is referenced by the classpath, does not exist. ■ 증상 톰캣 시작을 하려고 하는데 위와 같은 문구가 출력되면서 시작되지 않음. ■ 원인 Open launch Configuration에 경로를 알 수 없는 jar가 잡혀있기 때문에 발생하는 오류이다. ■ 해결방법 Classpath 탭에 들어가서 경로를 알 수 없는 파일을 삭제한다. 2021. 3. 3.
728x90
반응형