'Server > Linux' 카테고리의 다른 글
[Linux, WSL Ubuntu] 1. Java 8 설치 및 환경설정 (0) | 2021.12.17 |
---|---|
[Linux] 프로세스 여러개 한꺼번에 죽이는 명령어 (0) | 2020.10.27 |
[리눅스] 문서편집기 vi, vim 명령어 정리 (0) | 2020.10.14 |
[Linux, WSL Ubuntu] 1. Java 8 설치 및 환경설정 (0) | 2021.12.17 |
---|---|
[Linux] 프로세스 여러개 한꺼번에 죽이는 명령어 (0) | 2020.10.27 |
[리눅스] 문서편집기 vi, vim 명령어 정리 (0) | 2020.10.14 |
- @참고 : https://stackoverflow.com/questions/45753212/convert-der-certificate-to-p12
- @참고2 : http://conanoc.egloos.com/6656558
공인인증서 signCert.der 과 signPri.key로 .p12 만들기
openssl x509 -inform der -in signCert.der -out signCert.pem
openssl pkcs8 -inform der -in signPri.key -out signPri.pem -passin pass:[myPassword]
openssl pkcs12 -export -inkey signPri.pem -in signCert.pem -out testCert.p12 -password pass:[myPassword]
인증서 관련 용어(PKCS 등)에 대하여 (0) | 2020.06.26 |
---|---|
[openssl] .der .key파일로 .pfx 파일 만들기 (0) | 2020.04.23 |
[openssl]openssl을 이용한 인증서 생성(.pfx) (0) | 2020.04.23 |
- @참고 : http://blog.naver.com/PostView.nhn?blogId=ucert&logNo=221385383089
- @참고2 : https://blog.naver.com/ucert/221384177875
PKCS7
PKCS7은 IETF로 전환되기 전 RSA에 의해 정의된 것으로 암호화되고 서명된 데이터를 배포하기 위한 다목적 형식을 가지고 있다.
윈도우에서 지원하는 개방형 표준인 PKCS7. 여기서 기억해야 할 점은 개인키를 포함할 수 없다는 것이다.
PKCS8
PKCS8은 PKCS7과는 달리 개인키(private key)를 휴대할 때 사용되는 유사표준이다.
PKCS12
암호화를 통해, 더 나은 보안을 제공하는 PKCS12는 PEM파일과 마찬가지로 단일 인증서에서 전체 인증서 체인 및 키쌍까지 포함할 수 있다. 그렇지만 PEM과 달리 완전히 암호화된 암호로 보호된 컨테이너(container)이다. 그래서 SSL인증서 생성 중에 비번 입력창이 나타날 때 PKCS12형식으로 인증서를 열 수 있게 되는 것이다.
X.509인증서
PKI표준을 사용한 서버가 연결된 공개키의 적절한 소유자인지를 확인하는 디지털 인증서의 한 유형
공인인증서 signCert.der 과 signPri.key로 .p12 만들기 (1) | 2020.06.26 |
---|---|
[openssl] .der .key파일로 .pfx 파일 만들기 (0) | 2020.04.23 |
[openssl]openssl을 이용한 인증서 생성(.pfx) (0) | 2020.04.23 |
- @참고 : https://cornswrold.tistory.com/232
to prepare test instance [INSTANCE_ADDRESS] java.lang.NoClassDefFoundError: javax/servlet/SessionCookieConfig at org.springframework.test.context.web.AbstractGenericWebContextLoader.configureWebResources(AbstractGenericWebContextLoader.java:188) at org.springframework.test.context.web.AbstractGenericWebContextLoader.loadContext(AbstractGenericWebContextLoader.java:124) at org.springframework.test.context.web.AbstractGenericWebContextLoader.loadContext(AbstractGenericWebContextLoader.java:61) at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:281) at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:249) at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98) at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116) at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83) at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:189) at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:131) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209) Caused by: java.lang.ClassNotFoundException: javax.servlet.SessionCookieConfig at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:418) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 32 common frames omitted
Spring 4.0 이상 버전을 사용할 때 spring-test 를 이용하여 Test를 진행하면 생기는 에러이다.
해당 에러는 Servlet 버전을 3.0.1 이상으로 맞춰주면 해결된다.
spring framework - @참고 : https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Versions
apache tomcat - @참고 : http://tomcat.apache.org/whichversion.html
- @참고 : https://lng1982.tistory.com/199
java version을 1.6에서 1.8로 업데이트 하여 project facet을 바꿔놓은 프로젝트를 다시 원복하려는데 위의 제목과 같은 에러가 나서 원복할 수가 없었다.
해당 에러의 체크 포인트는
1. workspace의 .settings디렉토리의 org.eclipse.wst.common.project.facet.core.xml파일
과
2. web.xml의 XML 스키마 설정
부분인 듯 하다.
나의 경우는 1번을 수정해주자 project facet 설정이 가능했다.
Eclipse import 시 build path를 src/ 로 잡는 문제 해결 (1) | 2020.07.13 |
---|---|
[Spring MVC] java.lang.NoClassDefFoundError: javax/servlet/SessionCookieConfig (0) | 2020.06.22 |
java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.startAsync (0) | 2020.06.22 |
[Eclipse, Maven] Unable to load annotation processor factory jar for project (0) | 2020.01.28 |
[Postman] https request fail 오류 (0) | 2019.11.15 |
- @참고2 : https://www.jetbrains.com/help/idea/work-with-maven-dependencies.html
java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getAsyncContext()Ljavax/servlet/AsyncContext; at org.springframework.test.web.servlet.TestDispatcherServlet.service(TestDispatcherServlet.java:73) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at org.springframework.mock.web.MockFilterChain$ServletFilterProxy.doFilter(MockFilterChain.java:160) at org.springframework.mock.web.MockFilterChain.doFilter(MockFilterChain.java:127) at org.springframework.test.web.servlet.MockMvc.perform(MockMvc.java:151) at com.wizvera.pinsign.admin.web.controller.LoginControllerTest.loginTest(LoginControllerTest.java:70) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75) at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86) at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:252) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)
servlet version이 3.0 이상이어야 javax.servlet.http.HttpServletRequest.getAsyncContext() 해당 메소드가 존재하는데 servlet 버전이 낮아 해당 메소드가 존재하지 않아서 나는 에러이다. 내 경우에는 pom.xml에서 servlet version을 3.1로 맞추었지만 cors-filter에서 transitively하게 v2.5를 가져와서 해당 에러가 났다. 따라서 전이적으로 낮은 servlet 버전을 가져온 cors-filter의 버전을 1.3.2에서 2.5로 올려줬더니 getAsyncContext()를 찾는다.
또는
exclusion을 통해 버전을 잘못가져온 해당 라이브러리를 제외해주니 해결된다.
<dependency>
<groupId>com.thetransactioncompany</groupId>
<artifactId>cors-filter</artifactId>
<version>1.3.2</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
[Spring MVC] java.lang.NoClassDefFoundError: javax/servlet/SessionCookieConfig (0) | 2020.06.22 |
---|---|
[Eclipse Spring MVC with Maven] Cannot change version of project facet Dynamic Web Module to 2.5. (0) | 2020.06.22 |
[Eclipse, Maven] Unable to load annotation processor factory jar for project (0) | 2020.01.28 |
[Postman] https request fail 오류 (0) | 2019.11.15 |
이클립스(Eclipse) 실행 시 아무 반응이 없는 오류 해결 (0) | 2019.06.20 |
- @참고 : https://cofived.tistory.com/27
[Spring] @Configuration @Bean vs @Component (0) | 2021.12.14 |
---|---|
[Spring] 스프링 프레임워크 실행 순서 (0) | 2021.01.15 |
[Spring-MVC JUnit Test Error] No qualifying bean of type [javax.servlet.ServletContext] found for dependency.. (0) | 2020.06.17 |
spring 5로 응답에 헤더 설정하는 방법 (1) | 2019.12.27 |
Spring MessageSource 튜토리얼 (0) | 2019.12.20 |
- @참고 : https://sup2is.tistory.com/70
- @참고2 : https://gdtbgl93.tistory.com/164
No qualifying bean of type [javax.servlet.ServletContext] found for dependency
junit이 돌아갈때는 javax.servlet 패키지에 대한 의존관계를 아무도 해결해주지 않기때문에 스프링 컨테이너가 올라가는 시점에 에러가 난다.
@WebAppConfiguration 어노테이션 사용
spring doc
The presence of @WebAppConfiguration on a test class indicates that a WebApplicationContext should be loaded for the test using a default for the path to the root of the web application.테스트 클래스에 @WebAppConfiguration이 있으면 웹 응용 프로그램의 루트에 대한 경로에 대한 기본값을 사용하여 테스트를 위해 WebApplicationContext를로드해야 함을 나타냅니다.
java.lang.NoClassDefFoundError: javax/servlet/SessionCookieConfig
서블릿 버전 3.1 이하에서는 SessionCookieConfig 클래스를 찾지 못하는 오류가 발생한다.
서블릿 jar 파일을 3.1 버전으로 업데이트
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
[Spring] @Configuration @Bean vs @Component (0) | 2021.12.14 |
---|---|
[Spring] 스프링 프레임워크 실행 순서 (0) | 2021.01.15 |
Spring MVC Swagger(스웨거) 샘플 프로젝트 만들기 (0) | 2020.06.17 |
spring 5로 응답에 헤더 설정하는 방법 (1) | 2019.12.27 |
Spring MessageSource 튜토리얼 (0) | 2019.12.20 |